本文共 625 字,大约阅读时间需要 2 分钟。
零币的产生要求用户需要拥有对应金额的Basecoin,而且系统要求所有用户能够访问所有用户能够访问一个公告板。
零币的Basecoin就是比特币,所以区块链充当了公告板的角色,用户A产生一枚zerocoin后会将硬币的承诺公开 区块链上会有所有未花费的Zerocoin对应的承诺集合,用户花费Zerocoin时则需要证明自己拥有集合中的一个元素,通过一个非交互的零知识证明π:其他用户验证π的正确性并检验
与比特币相比,zerocoin对交易的来源提供了匿名保护,其匿名保护主要是针对付款方来讲的,会保护付款方的信息,而交易的目的地和数值却无法得到保证。主要表现如下:
用户在进行铸币操作时,需要将自己的一个比特币放到区块链当中,同时将自己计算得到的commitment放到区块链上,在进行zerocoin花费操作时,会生成(π,S),会被放到区块链上,供所有用户验证该花费操作的合法性,如果合法性成立,交易的收款方会得到一枚比特币,同时S会被保存到一个列表当中,防止用户双重支付。其他人无法知晓当前交易所花费的zerocoin是集合中的哪一个,只有用户自己才会知道(因为他有对应的r值)这个匿名性是基于双重离散对数的难求解得到的。无法确认花费的是哪一个commitment自然也就无法追踪交易的来源。转载地址:http://fxxzb.baihongyu.com/