当前位置:首页 > 物联网 > 区块链
[导读] 交易隐私是零知识证明的一个应用方向。除了通过公链或者侧链实现交易的发送方/接收方以及金额隐藏外,Mixer,江湖人称“混币”,是在已有公链上实现交易的发送方的隐藏(匿名)。Mixer,就是将一些

交易隐私是零知识证明的一个应用方向。除了通过公链或者侧链实现交易的发送方/接收方以及金额隐藏外,Mixer,江湖人称“混币”,是在已有公链上实现交易的发送方的隐藏(匿名)。Mixer,就是将一些账户的资金“混”在一起,由公开的第三方代替发送方发起转账。这个第三方,被称为Mixer或者Relayer。

1. MicroMix

MicroMix的源代码Github地址:https://github.com/weijiekoh/mixer。核心逻辑实现在contracts/solidity/Mixer.sol文件中。

MicroMix在Semaphore项目之上,提供混币服务,整个框架如下:

整个MicroMix生态存在三种角色:发送方,接收方以及Relayer。使用MicroMix,需要两个步骤:1)Deposit(存钱)2)Mix(提钱)。

1.1 Deposit

在使用Mixer服务之前,发送方需要Deposit(存入)固定数量的代币(ETH或者ERC20代币)。Deposit同时要求发送方生成Semaphore对应的Identity。也就是说,每“混”一笔交易,发送方需要创建一个IdenTIty。

1.2 Mix

Mix接口实现”提钱“的功能。Mix接口由“Relayer”(中继)调用,而不是由发送方调用。因为每个IdenTIty在external nullfier不变的情况下,能且只能发送一次Signal,从而保证每笔存入的代币都能Mix。每个需要“提钱”的账户,提供IdenTIty的证明给Relayer,同时在Signal中指定Relayer,接收方以及费用,从而Relayer可以发起交易,调用Mix接口转账给接收方。

也就是说,可以存在多个Relayer,Relayer通过提供mix的服务,“代替”发送方,向接收方发起转账,同时赚取服务费。每笔mix服务的服务费可以由发送方指定。

1.3 性能

MicroMix使用Semaphore构建了20层的IdenTIty的Merkle树。Deposit大约消耗110w的GAS,Mix大约消耗77w的GAS费用(主要是zkSNARK的验证)。

2. Tornado Mixer

Tornado Mixer的源代码地址:https://github.com/peppersec/tornado-mixer。Tornado Mixer的核心逻辑在contracts/Mixer.sol文件中:一个是deposit函数,一个是withdraw函数。Tonado Mixer的框架如下图:

大体逻辑和MicroMix类似,发送方(Sender)首先向智能合约转账(固定金额),并在智能合约上创建commitment。接下来,发送方(Sender)将零知识证明发送给Mixer,Mixer确认证明后,通过withdraw函数向接收方转账。

2.1 Commitment Merkle树

所有的Commitment在智能合约中组织成一个Merkle树:

叶子节点的计算采用Pedersen Hash算法,中间节点采用MiMC Hash算法。整个树高为16。也就是说,Tornado Mixer一个智能合约,支持2^16次转账。

2.2 性能

Commitment Merkle树高为16。Deposit函数大约消耗88.8w的GAS,Withdraw函数大约消耗69.2w的GAS。证明电路的Contraint为22617。生成一次证明的时间大约为6.1秒。

3. Hopper

Hopper的源代码地址:https://github.com/argentlabs/hopper。Hopper的核心逻辑在solidity/contracts/Mixer.sol中:一个是commit函数,一个是withdraw函数。大体思路和Tornado Mixer一致,不再详细描述。相比较其他两个项目,Hopper有个明显的特色,实现了手机端的Mixer的功能。

3.1 Commitment Merkle树

从安全性角度考虑,叶子节点仍然采用sha256的计算。但是,为了降低证明电路的大小,中间节点采用MiMC Hash算法。Commitment Merkle树高为15。也就是说,Hopper一个智能合约,支持2^15=32768次转账。

3.2 性能

Commitment Merkle树高为15。GAS消耗和生成证明的时间没有实测。从理论上计算,GAS消耗会比Tornado Mixer略低一些,生成时间会比Tornado Mixer高。

总结:Mixer,混币,是零知识证明的一种应用,隐藏转账的发送方。目前,在以太坊上的Mixer实现的思路大体一致:发送方,首先转账固定金额给智能合约,同时提交的Commitment构造上一棵Merkle树。需要转账时,发送方链下将零知识证明的信息发送给Mixer或者Relayer。Mixer或者Relayer,将证明相关信息提交到智能合约。智能合约验证后转账给接收方。Mixer或者Relayer赚取一定的服务费。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭