零知识密码证明如何保证zcoin的匿名性?
zcoin的零知识证明做了一个密码声明。当有人收到zcoin时，这个人只知道交易数量。与比特币不同的是，在发送者和接收方之间没有其他非预期的识别信息。零知识证明确保了交易的发送方和接收方没有信息泄漏。
使用零知识证明，一个人可以向另一个人证明一个给定的陈述是真实的，而不传递任何其他信息来证明这个陈述是真实的。
“零知识挑战”的经典例子是“姚的百万富翁问题”：如何判断两个人谁更富有，而不需要透露他们有多少钱？通过密码学的复杂应用，实际上是有可能做到的。
craig gidney，为twisted oak studios博客撰稿，提供了一个简化版的问题，可以帮助你理解这个过程。在gidney的例子中，两名员工——bob和alice——想要确定他们是否得到了同样的报酬，而没有透露他们得到了多少或其他的信息。这个例子假设bob和alice知道他们每个人的收入正好是每小时10美元、20美元、30美元或40美元。
bob去买了4个匿名的评论卡片箱——类似于餐厅收集顾客意见的那种，并分别贴上10美元、20美元、30美元或40美元的标签，然后扔掉三把钥匙，只留下对应他的报酬的盒子的那把钥匙。然后，alice在一张纸条上写着“是”，在另外三个纸条上写着“否”。她把“是”的纸条塞进与她的工资相匹配的盒子里，把写有“否”的字条扔进其他箱子。一旦alice走了，bob就可以打开他的盒子，看看里面的纸条是“是”还是“否”。如果是“是”，那么他和alice的工资是一样的。如果是“否”，他们就会知道他们的工资是不同的。
这个例子显然过于简单化了。zerocoin要复杂得多，包括各种保护措施，防止任何人作弊。但它使用了这种类似的思维方式。