Web3中文|2023年zk赛道爆发,即将推出的Polygon zkEVM有多重要?

news/2024/11/25 13:24:23/

Crypto行业被广泛关注的零知识证明(Zero—Knowledge Proof)技术,在1980年就被数学家S.Goldwasser、S.Micali及C.Rackoff提出。

零知识证明涉及一系列步骤,可以实现密码学中的「可用而不可知」。

而区块链有着公开透明、不可篡改等特征,意味着加密投资者的链上资产及交易记录是没有隐私可言的,于是零知识证明技术被引入了区块链,当中以zk-SNARK和zk-STARK最为关注。

zk-SNARK被项目方采用得最多,zk-STARK则被密码学专家认为优于ZK-SNARK。那么综合技术与实际应用,二者谁更优?

zk-SNARK:简洁 + 非交互性

Alessandro Chiesa等人在2012年开发了zk-SNARK协议,这是一种简洁化、非交互式的零知识证明技术,全称是zero-knowledge succinct non-interactive arguments of knowledge,可以拆解成三部分来理解:

  • zero-knowledge:

零知识证明,在不暴露隐私情况下向对方证明一件事情,让数据「可用而不可知」。

  • succinct:

简洁性,要证明的东西占用的空间很小,而且可以快速验证(几毫秒)。

  • non-interactive:

非交互性,意味着证明者和验证者之间不需要有交集即可快速地得到验证结果。

zk-SNARK的简洁性和非交互性,是相对于传统的零知识证明方案而言的。传统方案是交互式证明,即示证者(宣称某一命题为真)和验证者(确认该命题确实为真)之间反复确认,然后验证者不断给出回答,直到正确答案出现,所以效率很低。

zk-SNARK的解决方案则不需要双方反复确认“是或不是”,而是提前「可信初始化」,从而生成公共参考字符串(CRS),然后所有的示证者都可以直接访问它。

zk-STARK:概率证明+缓冲时间

zk-STARK由成立于2017年12月的StarkWare团队开发,它是针对zk-SNARK的替代解决方案。研发历时一年多,经过无数次迭代至2019年才彻底搞定。

zk-STARK虽然是一种巧妙的交互式证明——通过哈希函数碰撞(一种概率证明的方式)来保证安全性,因此实现了高效证明。这个思路直接借鉴自2015年推出的交互式预言机证明(IOP)技术,简单来说是先把问题用密码学的方式打碎,然后验证者随机向示证者提出几个的问题,如果几轮下来,示证者都给出准确的回答,那么验证就通过了。

所以zk-STARK同样也只需要极少的计算资源就可以完成证明,但是它更安全,不存在答案泄露的风险。并且为了进一步确保安全性,还设置了争议时间延迟(DTD)来作为缓冲。

Vitalik Buterin看好的zk-STARK

在台北区块链周,以太坊创办人Vitalik Buterin 及Mask Network 创办人Suji Yan 进行炉边谈话,谈及了零知识证明(ZK) 技术、FTX 事件及以太坊未来发展等议题。其中就零知识证明,Vitalik Buterin看好zk-STARK技术,认为10 年后 zk-STARK 将与区块链一样重要。

zk-STARK作为一个强大的隐私技术,不仅可以解决区块链应用的问题,也可以为中心化系统的用户带来更好的安全性。

尽管区块链有开放、抗审查及遵守开发者所制定的规则等特性,但区块链同时也牺牲了可扩展及隐私性。不过有了zk-STARK 的技术后,这两点缺失皆可以兼顾。

在以太坊扩容场景中,zk-SNARK技术被采用得最多。zk-STARK虽然也在发展之中,但技术尚不成熟,至少在通用性上受限,所以我们看到大多是围绕着「可扩展性」去做各种应用,比如身份、支付、DeFi、资产证明等各种应用。

目前而言,大多数以太坊Layer2项目(zkSync、Aztec、Loopring、Scroll等)都采用的是zk-SNARK技术路线,除了通用性上受限,还有一个原因是普遍反馈说zk-STARK的开发难度过大……

总的来说,zk-SNARK和zk-STARK的关系,‍有些像Optimistic rollups和ZK rollups的关系,前者短期利好,后者长期利好。

超越zk-STARK的Aleo网络

Aleo相较 L2 的 ZKP 有一大优势,即挖矿算法更简单、便捷,且无gas费,同时保有扩展性、隐私性及高速运转性。

具体而言,Aleo网络在验证区块时,算法会产生一个随机数,通过 ZK 计算后最终结果若小于目标值则计算正确,最先计算完成的节点拥有出块权力。矿机每次在验证一个区块时都只需生成一个随机数即可开始计算,这种挖矿逻辑在形式上与比特币没有太大差别。

而 L2 的 ZKP 计算则不然。L2 面对的是一批次的交易,因此在验证时需要对每笔交易都进行 ZKP,最后打包上传 L1。

在运算方面,Aleo无需并行运算,可让GPU矿机无缝对接进来,这保证了Aleo网络的顺利运转。

如以太坊L2 ZK网络,单个 CPU 性能极强也不可能对成千上万笔交易进行逐个验证,必须通过像 GPU 这样拥有多个运算单元的设备进行并行运算。而Aleo在这一方面具有很大的优势,它不需要并行运算,GPU 矿机可以几乎无缝对接。

而以太坊L2 ZK网络,为了适应 L2 挖矿,GPU还需要进一步的算法优化以实现并行运算。

结语

可以看到,zk-STARK优于zk-SNARK,而Aleo网络优于zk-STARK。不确定这是因为前者基于ZK解决方案rollups协议,而后者从0到1搭建ZK技术,且基于Aleo系统和其它如Leo语言、共识机制等方面。

在零知识证明的技术路径上,我们可以认为Aleo原生ZK技术超越了L2 ZK技术。


编译:Yuanshan@Web3CN.Pro

声明:内容仅代表作者立场,且不构成投资建议,请谨慎对待,如文章/素材有侵权,请联系官方客服处理。 


http://www.ppmy.cn/news/27223.html

相关文章

【Spring Cloud Alibaba】000-Spring Cloud Alibaba 问题集锦[持续更新]

【Spring Cloud Alibaba】000-Spring Cloud Alibaba 问题集锦[持续更新] 文章目录【Spring Cloud Alibaba】000-Spring Cloud Alibaba 问题集锦[持续更新]一、微服务相关1、什么是单体应用2、单体应用优缺点优点缺点3、单体应用使用场景4、什么是微服务架构5、微服务的特性6、微…

C++(41)-低版本升级到VS2019项目时遇到的问题(2)

1.错误码:MSB8066 代码为3 QT 项目老版本升级到新版本造成的, 1.重新加载项目: 扩展->QT VS tools->Open QT project files-> 2.添加QT模块:QT Project-Settings -> QT Modules2.无法打开QT的头文件 3.…

从WEB到PWA 开发-发布-安装

见意如题!本文主要来说说PWA开发!作为一个前端程序员,在没有任何Android/IOS的开发情况下,想想我们有多少种方法来开发一个原生移动应用程序!我们可以有非原生、混合开发,PWA等等手段。类似uniapp&#xff…

电动汽车充放电的优化调度(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

【3】linux命令每日分享——mv改名或移动

大家好,这里是sdust-vrlab,Linux是一种免费使用和自由传播的类UNIX操作系统,Linux的基本思想有两点:一切都是文件;每个文件都有确定的用途;linux涉及到IT行业的方方面面,在我们日常的学习中&…

Mysql Hive中distinct 和 group by 效率

在Mysql中 distinct 从结果中删除重复行 group by 是分组聚合 在语义相同,有索引的情况下: group by和distinct都能使用索引,效率相同。因为group by和distinct近乎等价,distinct可以被看做是特殊的group by。 在语义相同&…

WEB静态交互展示【数据mock】

文章目录背景需求分析实现过程1.爬取原有项目数据2.将数据引入项目3.打包收工后记背景 接到公司一个【离谱】的需求,要求把已有的项目做一个演示版本(静态文件版本);本人觉得前端、后端搞个容器包,一个演示版本不就有…

ES-倒排索引BKD原理skiplist

1.Elasticsearch数据存储结构FST、skiplist、BKD-tree、LSM-tree Elasticsearch数据结构存储流程_善思的博客-CSDN博客_elasticsearch 数据结构 number?keyword?傻傻分不清楚 - Elastic 中文社区 ElasticSearch实战(六)-Skip List 跳表算法&#xf…