“我期待大约有15-20人可以关注zk-snarks协议,没想到会这么多。”
zk-SNARKs 全称 Zero-Knowledge Succinct Non-Interactive Argument of Knowledge,即”简明非交互零知识证明”。 zk-SNARKs 基于”零知识证明”(zero knowledge proof,即ZKP)。
尽管座位需要预定,但是因为零币研究员Andrew Miller会在Devocon3会议上会发表讲话,座位依旧变得非常拥挤。这并不意外,因为以太坊研发会议的第三天,选择了zk-snarks部分作为会议内容。并且由于以太坊在匿名方面的巨大进步,软件更新使得解决拜占庭问题成为可能。基于更加先进的密码学,新的以太坊更新的不仅是一个关于隐私的方案,而是能够扩容网络并且增加用户基数的方案。
纽卡斯尔大学的Patrick McCorry发表了开放式投票网络的文章,这是一个可以在以太坊平台上进行匿名投票的系统。作为零币系统最理想的应用,区块链投票有效地避免了投票潜在的风险,因为它具有透明性。但是因为密码学现在可以让状态变化在区块链上被验证,不需要泄露敏感信息,就像McCorry所说的应用还可以继续延伸和扩展。
Miller最近预测“zapp”会有一次爆发,他的以太坊去中心化应用(dapp)会使用这项隐私技术。虽然社区在项目进行中遇到了一些阻碍,但是zapp应用很快就实现了。
根据ZoKrates的作者Jacob Eberhardt所说,全新的zk-snarks开发工具已经完成:“这就好像以太坊早期,没有人知道究竟会发生什么,但是每个人都看到了其中的潜力。”
克服困难
Eberhardt创建了zk-snarks编辑程序,可以让开发者很容易地创建zk-snarks嵌入的智能合约。这是具有很大发展潜力的,因为它可以让类似开放式投票这样的项目达到很好的效果。但是,现在还存在一个问题,那就是“可信任的设置”。
可信任的设置在zk-snarks协议中属于安全部分。它可以防止恶意行为,但难度在于这个方案成本很高,并且也有一定的风险,其依赖于每个人的信任度。
Zcash(零币)花费了很大的代价在它的区块链中使用了可信任的设定,但是仍然需要优化。其中的问题是,这样的设定过程在以太坊上会显得更加复杂,因为它需要在每次创建zapp的时候都需要重新启用。但是解决问题的方法也不是没有,在Devcon3会议上发表演讲的零币研究人员Sean Bowe、Ariel Gabizon、Ian Miers 筹划了一个新的设置方法,他们相信这样的做法可以做到扩容。好消息是:越多人参与就越安全。这种设置方法需要一个绝对诚实的代理人能够对潜在的恶意行为进行抵抗。
链下计算
由于密码学压缩了信息,zk-snarks被认为是以太坊网络扩容的潜在方案。但是就目前来看,系统认证的费用依然太高,不过Eberhardt相信有会逐渐降低成本的方法。
在他所描述的架构中,计算其实可以在链下进行,然后存储在区块链上,只需要对计算进行简要的翻译和记录。但是zk-snarks仍然是相对成本较高的方案,现在还没办法超过其他的扩容方案,除非是成本降低,或者技术本身变得更加轻便。
针对这点,以色列理工学院的教授,Eli-Ben Sasson正在努力研究zk-starks,虽然其有着同样的隐私系统,但是却可以加快运行速度并且大幅地减小存储空间。但是,现阶段仍然还不能量产,所以zcash(零币)的研究员Sean Bowe认为目前最好是在现有的方案基础上进行研究。但是仍然有很多人相信,技术的快速发展会让以太坊扩容方案变得可能。就像Eberhardt所说:“这个方案很吸引人,并且有保护资产隐私的功能。它把这两个没有解决的问题整合在一项技术中完成。”
“零知识证明”-zero-knowledge proof,是由S.Goldwasser、S.Micali及C.Rackoff在20世纪80年代初提出的。它指的是证明者能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。零知识证明实质上是一种涉及两方或更多方的协议,即两方或更多方完成一项任务所需采取的一系列步骤。证明者向验证者证明并使其相信自己知道或拥有某一消息,但证明过程不能向验证者泄漏任何关于被证明消息的信息。大量事实证明,零知识证明在密码学中非常有用。如果能够将零知识证明用于验证,将可以有效解决许多问题。
原文标题:Zk-Snarks Everywhere: Ethereum Privacy Tech Hits Tipping Point 作者:Rachel Rose O'Leary 原文地址:https://www.coindesk.com/zk-snarks-everywhere-ethereum-privacy-tech-hits-tipping-point/