来源:以太坊爱好者
默认情况下,你在以太坊上所有的交易历史和余额都是公开的。通过诸如Etherscan这样的区块浏览器可以查看所有的交易,某人但凡知道了你的地址,就可以轻轻松松获取你的支付记录、跟踪你的资金来源、计算你的持仓、甚至分析你的链上活动。
但是,有时候你也不希望公开自己的交易历史和余额吧?如果你想要实现交易的匿名和隐私,有什么好法子么?
多年来人们一直试图在以太坊上开发出隐蔽交易机制。一些人的思路是掩盖资金的流动过程,比如使用一个中心化的交易所或托管的混币服务。但是,这样做必然会引入高度的对手方和监视风险。结果,这些工具始终无法媲美其它专注于隐私的密码学货币。Zcash为了实现隐私保护,使用了包括零知识证明在内的各种密码学方法。
今天,我们非常高兴地向大家宣布,在以太坊上也有可能实现真正的隐蔽交易啦!我们推出的新工具tornado.cash基于强大的密码学开发出了突破性的技术、非托管的资金模式,用了它,你可以100%匿名地发送以太坊上的密码学货币。
Tornadocash是如何在以太坊上实现隐私的?
主要思路就是打破收款人和资金目标地址之间在链上的关联。你可以将以太币存入Tornado.cash的智能合约中,然后使用另一个不同的地址提款。无论你何时将以太币提现到新地址,其他人都
无法将存钱地址和提款地址挂钩,从而确保了绝对的隐私。
在这种办法中,Tornado.cash充当着一个代理,使用zkSnark证明来确保交易的100%匿名。
更棒的是,它还是100%非托管的,这意味着你拥有对存款的完全控制权,是时候和经常跑路的中心化服务说拜拜了。
存款
用户在存款时需要生成一个秘密,并将其哈希值)连通存款的数额发送到Tornado的智能合约中。合约接收存款后,将其承诺也添加到合约的存款列表中。
日后,当用户想要提款时,TA需要向合约提供一个证明,证明TA拥有一个秘密,能和智能合约中的存款列表中未被花费的承诺对应起来。得益于zkSnark技术的加持,我们可以在不公开这个秘密与哪笔资金相关的条件下完成匹配。Tornado智能合约将检查这个证明,然后将存款金额转移到指定的提款地址。而对于外部的观察者来说,无从得知这笔提款来自哪笔存款。
这就是它的工作原理。接下来我会解释一下为什么匿名集如此重要。
匿名集
匿名集的大小本质上是对匿名性的一种度量。它展示了还有多少笔存款等待被提取。换句话说,你要提取的以太币可能来自于多少笔被混合的存款。
先有鸡还是先有蛋?
你可能注意到了,你提款时有两个选项:
使用钱包通过中继者
第一种方式要求你拥有一个全新的以太坊地址,并且里面还有一些以太币。这就引出了一个问题。
如何在保持地址匿名的前提下获取一些以太币呢?
因为通常情况下我们获取以太币的方式是从其他人手中购买,但我们正是想要避免暴露信息,不是吗?
这就是为什么我们要提供第二个选项。你只需要生成一个新的以太坊地址,剩下的工作可以放心地交给zkSnark证明和中继者来完成。这一过程会收取你一些以太币,只是用来支付以太坊网络的手续费而已。
匿名小贴士
无论你是否使用中继者,都请记得保持正常的网络匿名,比如使用VPN、代理、Tor等工具来隐藏你活动的IP地址。由于你使用的是浏览器,因此使用匿名的标签页也是有用的。请确保你在使用新地址之前清除了dApp的cookies,因为当dApp发觉新旧地址使用的是相同的cookies时,它就会知道这两个地址属于同一个所有者。Note当中的一些数据可用于将你的存款和提款联系起来。因此在你完成提款后,最好确保你已经安全地销毁了note数据。存款之后不要立即取款。如果你存完款之后马上提出来,观察者会猜测这是同一个人在操作,那你就暴露了。因此我们建议你存款后至少等到有5笔新的存款时再提款。不仅要等待新存款存入,还要等待一段时间。因为即使在你存款之后有多笔存款,它们也可能是由同一个人发出的,这个人在试图发送多笔垃圾存款,使用户误以为匿名集已经很大了。我们建议你至少等待24小时,以确保在此期间有多个人存款。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。