长推:Tornado Cash新版本 privacy-pools 原理解析
注:本文来自@hhh69251498 推特,MarsBit整理如下:
1/n
privacy-pools原理解析:
Tornado Cash的新版本出来了,昨天@ameensol(TC早期开发者)宣称privacy-pools已经在Optimism上部署
privacy-pools是TC的升级版本,可以支持用户在从混币器中提款的时候,附带一个提款证明,证明自己要提款的资金不是黑客部署在混币器中的资金。
2/n
我怀着好奇的心思跑去他们的github仓库看了下他们的代码, 然后"牛逼"!
I like the pretty cool code for privacy-pools!Awesome [email protected]
以下是具体的原理介绍:
3/n
首先你可能需要先了解下TC原来的运行原理,如果你还不了解的话:

https://twitter.com/hhh69251498/status/1632438792387690496
4/n
(privacy-poos 以下用PP表示)
PP使用来证明取款的金额是"干净"的资金的方法,其实v神在之前提到过
https://twitter.com/ameensol/status/163208921331006259
5/n
用vitalik的原话来说:
make a zero-proof to prove that this withdrawal is not part of one of the sets of deposits or this withdrawal is part of one of this subset of deposits
6/n
也就是说:
可以用一个zk-proof去证明取款的金额在是在合法的存款的金额集合之内的,或者是表面取款的金额是在不合法取款的金额集合之外的
7/n
PP也是按照这个想法来实现的,在PP的推特上写到了很感谢vitalik提供的idea.
在之前的Thread也介绍了deposit资金到混币器中的时候,会添加一个commitment叶子节点到deposit树中

https://twitter.com/hhh69251498/status/1632438792387690496
8/n
我们以一个实际例子来理解PP是怎么运作的:
1)现在有黑客想要将一笔illegal funds通过PP混币,于是他调用deposit方法将资金放入到PP中.
(我们假设原先已经有3个用户将前deposit到PP中了)
2)这个时候,deposit tree会发生以下变化.

9/n
3)所有人都可以通过链上信息知道黑客将illegal funds被存储在deposit tree中index=3的叶子节点了。
4) 此时用户A想要取走index=0的资金,但是他又想证明自己去走的不是黑客的资金.(假设用户A知道index=0的叶子节点的secret)
10/n
5) 用户A需要再构造另外一颗树 allow tree, 这颗树跟deposit tree是对应的;
在这个case里,可以看到所有在deposit tree里的legal funds的叶子节点在对应的allow tree的叶子节点里都会被标注为"allow",而illegal funds对应的叶子节点会被标注为"blocked"

11/n
6) 然后用户A开始构造自己的withdrawal证明
private input包含:
- allow tree对应的path(绿色节点)
- deposit tree 对应的path(绿色节点)
- deposit tree上要退款的节点对应在allow tree上的叶子节点值必须为 "allowed"(绿色连线)
public input包含:
- allow_tree_root
- deposit_tree_root

12/n
其中private input意味着这部分的信息最后会被隐藏在证明内,没有可以从我提交的withdraw交易中知道这些信息。
于是用户A成功完成了withdraw,把自己index=0的叶子节点的资金取了出来
13/n
如果是黑客要取这笔钱呢?
它只能构造allow tree的index=3的叶子节点值为“allowed“的allow tree, 而且给出对应的allow_tree_root;
又因为allow_tree_root我们可以从withdraw交易中的input 知道,所以可以知道取的这笔钱构造的allow_tree是没有将index=3排除在外的

14/n
于是我们成功标记了黑客的withdraw交易,也就意味着黑客想通过混币交易洗钱的目的失效了。
15/n
写在最后:
很喜欢@ameensol写的两段话:
- when you make privacy criminal, then **only** criminals have privacy.
- This is an opportunity to prove the ingenuity of the crypto community to self regulate and to showcase the awesome power of zero knowledge proofs!
16/n
希望我们能用更有好的技术,做更有意义的事情
大家有兴趣也可以看看PP的github,不过这个PP的完成度还不是很高,所以大家可以持续关注关注

https://github.com/ameensol/privacy-pools
附加一个vitalik之前对TC改进的视频
额外总结一下:
- 只有allow-tree设置为allowed的节点可以退款
- 黑客不得不将自己所在的allow tree那个节点(index=3)变成allowed
- 正常用户会将 黑客所在的那个allow tree的节点(index=3)设置成blocked
- 所以可以通过在withdraw的时候黑客给的allow tree(将非法节点设置为了allow)来标记黑客
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
您可能感兴趣
-
Circle Q3 成绩单出炉:在下一盘更大的棋?
稳定币第一股 Circle 的 Q3 财报有哪些看点?撰文:KarenZ,Foresight News昨晚,稳定币第一股 Circle 公布三季度财报,交出了一份令人瞩目的成绩单,更在生态建设上打出了
-
以太坊 Interop 路线图:如何解锁大规模采用的「最后一公里」?
我们正在见证的以太坊生态的又一次结构性升级。撰文:imToken在 Web3 世界,从「跨链」再到互操作性(Interop),一直都是个长青叙事。当然,可能很多人也没有严格区分两者的内涵,如果用一句话
-
预言机的演化史 ( 一 ):从数据桥到智能信任层
预言机既是连接,也是污染;既是突破,也是危机的起点。撰文:0xhhh一、引言:信任的盲点区块链是一场关于信任的革命,但它的信任是封闭的。它相信数学,却不相信世界。早期的区块链像一个逻辑主义者:它坚信推
-
以太坊的上限:从计算协议到文明根基
探讨以太坊从「世界计算机」向「文明根基」演进的理论上限。撰文:XiaoHai本文旨在探讨以太坊从「世界计算机」向「文明根基」演进的理论上限。我们认为,以太坊的终极价值在于其作为「计算文明」的社会操作系
-
Base 与 OP 头部 DEX 将合并,扩展部署至 Arc 与以太坊
Uniswap 新提案削减 LP 收益,Aero 却把 LP 接入整套协议现金流。撰文:Sanqing,Foresight NewsTL;DR11 月 12 日 Dromos 在 New Horizo
-
稳定币如何重塑我们的金融世界?
稳定币代表了数字金融发展的前沿方向,它既带来前所未有的挑战,也蕴含着重要机遇。撰文:邓建鹏,中央财经大学法学院教授、区块链法学研究专家一、静悄悄的数字货币革命想象一下,有一种「数字美元」,它在网络世界
-
加密市场的板块轮动真的已失效?
当 BTC 率先成熟,ETH 滞后跟随,SOL 仍需时日,我们处于周期何处?撰文:Ignas编译:AididiaoJP,Foresight News本周期加密货币经典轮动模式为何失效BTC 持有者已经
-
1107 亿薪资、460 亿税收、1822 亿美元采购,马斯克造就的「美国梦」
马斯克的企业是真正的经济助推器,将科幻变为现实。撰文:Larry Goldberg编译:AididiaoJP,Foresight News很少有人意识到,埃隆·马斯克不仅让自己变得富有,更是一股创造就
- 成交量排行
- 币种热搜榜
OFFICIAL TRUMP
Pepe
UXLINK
泰达币
比特币
以太坊
USD Coin
Solana
First Digital USD
瑞波币
大零币
Uniswap
币安币
狗狗币
莱特币
FIL
ICP
ZEN
AR
CFX
CAKE
OKB
EOS
ETC
XCH