区块链的一个重要特点是开放性,即任何人都可以从链上拉整块的数据。虽然包括了比特币等区块链项目采用的匿名交易,但是通过对数据地址和相关IP的分析,仍然可以大概率发现交易双方(1,2,6)。而且相当一部分交易不需要也不希望别人知道交易的细节,尤其是交易的对象。
因此,增加隐私交易的区块链技术应运而生。其中,主流的隐私交易方案如下:
1.monero:门罗币主要是用签名来保护隐私。
2.达什,他使用混合货币技术来确保隐私。
3.Zero (Zcash): snark库主要用于实现零知识,达到隐私保护的目的。
1.以环签名为代表的门罗门罗主要采用以下三种技术:
环,用于隐藏事务的发起者。当一个系统交易发生时,会同时伪造多个交易,这些交易的发起者地位相同。
混淆地址,用于隐藏交易的接收方。转账资金将被发送到接收方公钥生成的临时地址,然后接收方将使用私钥在临时地址列表中检索所有权。
加密,用来隐藏真实数量。钱包转账的时候会在转账金额上加一个随机数,网络会用加了随机数的值来验证交易金额。
为了理解环签名是什么,它如何保护发送者的隐私。先说一个真实的案例。当你想给某人寄支票时,你需要签名吗?但是,正因为如此,任何人看到这张支票(并且知道你的签名是什么样子)都会知道你是寄件人。现在假设,你从街上随机选择4个人。把你的签名和这四个人混合在一起,得到一个独一无二的签名。这样就没人能发现这是否真的是你的签名。这就是环签名的基本工作原理。
在门罗:爱丽丝发1000 XMR(XMR是门罗币)给鲍勃。系统将如何使用环签名来隐藏她的身份?首先,爱丽丝会确认她的“戒指尺寸”。环大小一个取自区块链的随机UTXO,等于Alice的输出值,即1000 XMR。戒指越大,交易越大,然后交易手续费越高。然后,她用私钥签署了UTXO,并将其发送到区块链。需要注意的另一点是,Alice不需要向前一个事务的所有者发送请求来使用这些UTXO。所以,假设爱丽丝选择的环大小是5,也就是4个诱饵输出和自己的UTXO,从外面看是这样的:
在环签名交易中,任何诱饵就像真正的UTXO一样,因为任何不相关的第三方(包括矿工)都无法知道发送者是谁。
签名的缺点是还有被攻破的途径,导致隐私交易失败。如果在相关材料(3,4,5)上有可追踪的签名私钥,则隐私会受到威胁。此外,CoyptoNote本身就存在漏洞,Monroe Coin也曾被子集网络分区攻击过。
2以混币为代表的破折号破折号币有三种转账方式:
1.就是和比特币一样的普通转账。
2.这是即时交易。不需要矿工打包确认,可以确认交易,几乎可以秒实现。
3.这是一项匿名交易。你看不到谁和谁从区块链转账。
除了普通节点,还有一种节点叫做“主节点”。该节点可以提供匿名交易和即时支付等一系列服务。如果用户发起匿名交易,其申请会被发送到相关主节点,然后主节点会根据情况混合多个申请人的交易,即混币(一般是三笔交易一起进行。)网上有个例子。一桌人把所有的钱都放在桌子上,混在一起,然后拿回相应面值的钱,这样就不知道你有谁的钱了。这是混合货币。钱混了以后,网络不知道谁把钱转给谁了。
世界币的优势在于相对容易实现隐私,不需要额外的新算法。即使混币过程中会有性能损失,但理论上是可以容忍的。
理论上,世界币的混币交易是安全的,但实际上,混币流程存在很多漏洞。首先,为了更好的隐藏交易,混币一般都是集中部署,容易被攻击,容易造成单节点信息泄露。此外,如果用户在交易过程中没有及时清除Cookie,很可能会通过技术手段找到相关信息。
3.零知识证明所代表的ZcashZcash有两种地址:
T-address:基于UTXO的地址,实现与BTC相同的事务逻辑。
Z-address:对于与私有地址相关联的交易,地址值由密码术保证,并且转移次数不能被追踪和泄露。
有四种交易Zcash的方法:
T-address-t-address:交易模式和BTC一样,公开透明。
T-address-z-address:事务输入透明,可以查询,事务输出地址不能从链中查询。它可用于加密可追踪令牌,使其无法从该交易中被追踪到。
Z-address-t-address:交易输出地址和金额透明可查询,交易输入不可追溯。
Z-address-z-address:交易输入输出都是加密的,无法追踪,交易数量也无法追踪。
Zcash使用zk-SNARKS,一种零知识证明算法。简单来说,零知识证明是指证明者可以让验证者相信一个断言是正确的,而不需要向验证者提供任何有用的信息。
比如A想向B证明自己拥有一个房间的钥匙,假设这个房间只能用钥匙开锁,其他任何方法都无法开锁。这时,有两种方法:
1.A向B出示钥匙,B用这把钥匙打开房间,从而证明A有正确的房间钥匙。
2.b确定房间里有一个物体。甲用自己的钥匙打开房间的门,然后拿出物件给乙看,从而证明自己确实拥有房间的钥匙。
后一种方法属于零知识证明。好处是在整个证明过程中,B始终看不到密钥,避免了密钥的泄露。
例如,爱丽丝把一个ZEC转给了鲍勃。在本例中,涉及的角色是Alice和Bob、转移方以及验证者(矿工)。首先,爱丽丝和鲍勃都有一张支票。两张“支票”都有效。Alice的支票从一开始就存在于整个ZCash网络中,Bob的支票生成后会向全网广播。为了隐藏交易者的信息,要加密两张支票,可以用主人的私钥解密。
同时,因为只能有一个资产,所以所有矿工仍然有一个无效列表。爱丽丝想同时广播她自己的“发票代码”,并将其输入到无效列表中。发票代码也是加密的。所以矿工能看到的信息其实是这样的。其中爱丽丝的支票原本就存在,爱丽丝的校验码r1和鲍勃的支票是爱丽丝在交易时广播的。
矿工能得到的信息相当有限,但这并不影响他们对交易有效性的判断。获取爱丽丝给的校验码r1,在无效列表中查找。如果r1已经存在于无效列表中,证明r1对应的支票早就无效了;如果作废清单中不存在r1,则证明r1对应的支票仍然有效。此时,矿工将r1输入到作废清单中,并将新生成的支票输入到支票清单中。因此,记账过程就是将原支票登记作废,存入已有支票票的过程。
在这个过程中,我们不难发现,矿工每笔交易只能收到一个发票码和一个新发票,而且两者都是加密的。所以矿工不知道这两方是谁,也不知道转了多少钱。
结论上述三种隐私交易机制的设计基本代表了区块链主流隐私交易的实现。简要介绍了隐私交易的算法原理。在交易的私密性上,zk-SNARKS=环签名混合货币,在算法的简单性上,zk-SNARKS是混合货币环签名。零证明系统是由沙菲戈德瓦瑟、希尔维奥米卡利和查理斯拉科夫于1989年在论文《交互证据系统的知识复杂性》(交互式证明系统的知识复杂性)中首次提出的。它于2013年首次应用于区块链系统。目前,包括CMU、麻省理工、约翰霍普斯金等在内的顶尖研究机构都成立了该领域的专门小组和机构,进行算法研究。与此同时,包括以太坊、Quorum等在内的众多技术社区都在积极探索零知识证明的创新和应用。
最后,零知识证明和密码学提供的隐私和保密在某种程度上是叠加的,它在社会中的作用就看你怎么衡量了。对于想要保护自己个人数据的个人,或者保护自己商业秘密的公司,对于那些不想伤害它的机构来说,这是一种权利,也是一种义务,就像那些享有言论自由的人被恳求不要用它来伤害别人一样。对于政府(理想情况下)来说,这是一种责任,因为这涉及到大多数公民的权利。公民希望并相信政府会允许我们保护自己的隐私,在某种程度上保护我们免受恶意行为者对隐私的滥用;然而现实中,我们知道这种情况在今天是不可能的。
尽管如此,密码学的目标在两个领域都存在,这样一个社会才能真正实现自由:自由地保护信息的隐私,而不用担心隐私被滥用带来的危害。考虑到过去几个世纪密码学的历史,伴随着数学和科学的快速进步,密码学可以帮助世界实现这样一个目标,这个期望终将实现。
1.比特币匿名的研究与挑战
2.了解比特币的可追溯性
3.可追踪Monero:具有增强责任的匿名加密货币
4.Monero区块链可追溯性的实证分析
5.对“Monero区块链可追溯性的实证分析”第2版的回应
6.追踪加密货币分类帐中的交易
(1)内容来自链的开放平台“德的好”。稿件内容仅代表作者观点,不代表链官方立场。2.“得号”的文章内容的原创性和真实性由投稿人保证。稿件如有抄袭或篡改,法律后果由投稿人自行承担。3.平台如有侵权、违规或其他不当言论,请读者监督。一旦确认,平台会立即下线。如果您对文章内容有任何疑问,请发送至电子邮件:chengyiniu@chaindd.com)