您的位置:首页 > 区块链 >

Mixer是在公链实现交易的发送方的隐藏 是零知识证明的应用

2019-11-14 16:49:38 来源: 区块网

交易隐私是零知识证明的一个应用方向。除了通过公链或者侧链实现交易的发送方 接收方以及金额隐藏外,Mixer,江湖人称混币,是在已有公链上

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

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赚取一定的服务费。(Star Li)

关键词: Mixer 公链 零知识证明

精选 导读

募资55亿港元万物云启动招股 预计9月29日登陆港交所主板

万科9月19日早间公告,万物云当日启动招股,预计发行价介乎每股47 1港元至52 7港元,预计9月29日登陆港交所主板。按发行1 167亿股计算,万

发布时间: 2022-09-20 10:39
管理   2022-09-20

公募基金二季度持股情况曝光 隐形重仓股多为高端制造业

随着半年报披露收官,公募基金二季度持股情况曝光。截至今年二季度末,公募基金全市场基金总数为9794只,资产净值为269454 75亿元,同比上

发布时间: 2022-09-02 10:45
资讯   2022-09-02

又有上市公司宣布变卖房产 上市公司粉饰财报动作不断

再有上市公司宣布变卖房产。四川长虹25日称,拟以1 66亿元的转让底价挂牌出售31套房产。今年以来,A股公司出售房产不断。根据记者不完全统

发布时间: 2022-08-26 09:44
资讯   2022-08-26

16天12连板大港股份回复深交所关注函 股份继续冲高

回复交易所关注函后,大港股份继续冲高。8月11日大港股份高开,随后震荡走高,接近收盘时触及涨停,报20 2元 股。值得一提的是,在7月21日

发布时间: 2022-08-12 09:56
资讯   2022-08-12

万家基金再添第二大股东 中泰证券拟受让11%基金股权

7月13日,中泰证券发布公告,拟受让齐河众鑫投资有限公司(以下简称齐河众鑫)所持有的万家基金11%的股权,交易双方共同确定本次交易的标的资

发布时间: 2022-07-14 09:39
管理   2022-07-14

央行连续7日每天30亿元逆回购 对债市影响如何?

央行12日再次开展了30亿元逆回购操作,中标利率2 10%。这已是央行连续7日每天仅进行30亿元的逆回购缩量投放,创下去年1月以来的最低操作规

发布时间: 2022-07-13 09:38
资讯   2022-07-13

美元指数创近20年新高 黄金期货创出逾9个月新低

由于对美联储激进加息的担忧,美元指数11日大涨近1%创出近20年新高。受此影响,欧美股市、大宗商品均走弱,而黄金期货创出逾9个月新低。美

发布时间: 2022-07-13 09:36
资讯   2022-07-13

美股三大股指全线下跌 纳斯达克跌幅创下记录以来最大跌幅

今年上半年,美股持续回落。数据显示,道琼斯指数上半年下跌15 3%,纳斯达克综合指数下跌29 5%,标普500指数下跌20 6%。其中,纳斯达克连续

发布时间: 2022-07-04 09:51
推荐   2022-07-04

融资客热情回升 两市融资余额月内增加超344亿元

近期A股走强,沪指6月以来上涨4%,融资客热情明显回升。数据显示,截至6月16日,两市融资余额1 479万亿元,月内增加344 67亿元,最近一个半

发布时间: 2022-06-20 09:41
资讯   2022-06-20

4个交易日净买入超百亿元 北向资金持续流入A股市场

北向资金净流入态势延续。继6月15日净买入133 59亿元后,北向资金6月16日净买入44 52亿元。自5月27日至今,除6月13日以外,北向资金累计净

发布时间: 2022-06-17 09:37
推荐   2022-06-17