博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Zerocoin
阅读量:2168 次
发布时间:2019-05-01

本文共 625 字,大约阅读时间需要 2 分钟。

读书笔记——ZeroCoin

ZeroCoin基本机制

零币的产生要求用户需要拥有对应金额的Basecoin,而且系统要求所有用户能够访问所有用户能够访问一个公告板。

零币的Basecoin就是比特币,所以区块链充当了公告板的角色,用户A产生一枚zerocoin后会将硬币的承诺公开
区块链上会有所有未花费的Zerocoin对应的承诺集合,用户花费Zerocoin时则需要证明自己拥有集合中的一个元素,通过一个非交互的零知识证明π:

  1. 用户知道硬币的承诺在公告板中
  2. 用户指导公开承诺的随机数

其他用户验证π的正确性并检验

Zerocoin如何提供匿名性?

与比特币相比,zerocoin对交易的来源提供了匿名保护,其匿名保护主要是针对付款方来讲的,会保护付款方的信息,而交易的目的地和数值却无法得到保证。主要表现如下:

用户在进行铸币操作时,需要将自己的一个比特币放到区块链当中,同时将自己计算得到的commitment放到区块链上,在进行zerocoin花费操作时,会生成(π,S),会被放到区块链上,供所有用户验证该花费操作的合法性,如果合法性成立,交易的收款方会得到一枚比特币,同时S会被保存到一个列表当中,防止用户双重支付。其他人无法知晓当前交易所花费的zerocoin是集合中的哪一个,只有用户自己才会知道(因为他有对应的r值)这个匿名性是基于双重离散对数的难求解得到的。无法确认花费的是哪一个commitment自然也就无法追踪交易的来源。

转载地址:http://fxxzb.baihongyu.com/

你可能感兴趣的文章
【LEETCODE】125-Valid Palindrome
查看>>
【LEETCODE】28-Implement strStr()
查看>>
【LEETCODE】6-ZigZag Conversion
查看>>
【LEETCODE】8-String to Integer (atoi)
查看>>
【LEETCODE】14-Longest Common Prefix
查看>>
【LEETCODE】38-Count and Say
查看>>
【LEETCODE】278-First Bad Version
查看>>
【LEETCODE】303-Range Sum Query - Immutable
查看>>
【LEETCODE】21-Merge Two Sorted Lists
查看>>
【LEETCODE】231-Power of Two
查看>>
【LEETCODE】172-Factorial Trailing Zeroes
查看>>
【LEETCODE】112-Path Sum
查看>>
【LEETCODE】9-Palindrome Number
查看>>
【极客学院】-python学习笔记-Python快速入门(面向对象-引入外部文件-Web2Py创建网站)
查看>>
【LEETCODE】190-Reverse Bits
查看>>
【LEETCODE】67-Add Binary
查看>>
【LEETCODE】7-Reverse Integer
查看>>
【LEETCODE】165-Compare Version Numbers
查看>>
【LEETCODE】299-Bulls and Cows
查看>>
【LEETCODE】223-Rectangle Area
查看>>