以太坊的研究团队正在积极开发一种协议,该协议通过零知识证明技术显著增强隐私保护功能。以太坊开发者Artem Chystiakov在社区论坛上分享了他的研究成果,题为“零知识秘密圣诞老人(ZKSS)”,该研究首次发表于1月的arXiv。
“秘密圣诞老人”是一种在节日期间流行的匿名送礼活动,参与者互相赠送礼物而不透露身份。每位参与者为另一人准备礼物,同时也会收到来自其“秘密圣诞老人”的礼物,而收礼人永远无法得知赠送者的身份。
在以太坊上进行游戏的挑战
Chystiakov指出,在以太坊平台上实施“秘密圣诞老人”面临三大挑战,而该协议正是为了解决这些问题。
首先,以太坊的透明性使得所有交易均可被外界观察,因此需要一种方法来隐藏赠送者与收礼者之间的关系,以确保隐私。其次,区块链缺乏真正的随机性,参与者必须提供各自的随机数,并且游戏设计必须防止任何人重复参与或自我赠送。
以太坊的潜在应用
随着加密货币与传统金融的融合,区块链隐私问题日益受到关注。
隐私协议可广泛应用于匿名投票、治理等场景,例如在去中心化自治组织(DAO)中,用户需要证明其身份并投票,同时保持选择的私密性。此外,该协议还适用于举报系统,允许用户匿名提交信息的同时证明其身份,或用于私密空投和代币分配,确保接收者身份不被泄露。
当被问及该协议的开源实现和部署时,Chystiakov表示:“我们正在积极推进中。”
零知识秘密圣诞老人的运作机制
这一概念验证的Solidity协议利用零知识证明技术,确保在保持发送者隐私的同时,建立礼物发送者与接收者之间的联系。
零知识证明是一种无需披露具体信息即可证明某种知识的密码学方法。ZKSS协议还引入了交易中继者,作为交易提交的中介,以隐藏发送者的身份。

参与者需在智能合约中登记其以太坊地址,以生成所有参与者的名单。随后,每位参与者使用特定的数字签名进行承诺,以防止通过不同签名进行重复参与的作弊行为。
接下来,参与者通过中继者将自己的随机数秘密添加到共享列表中,从而确保无人知晓具体添加者的身份。这使得收礼人能够加密其收货地址,只有指定的“圣诞老人”可以读取。
最后,参与者从共享列表中选择他人的随机数,最终揭示收礼人的身份。



















