作者:Chloe
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,可以拆解成三部分来理解:
欧易OKX宣布将基于全览默克尔树、零知识证明升级储备金证明:3月2日消息,据欧易 OKX 官方消息,平台宣布在未来几个月内升级储备金证明,将基于全览默克尔树、零知识证明的技术来证明偿付能力。后续将允许任何人查阅默克尔树中的所有资产情况,但也会通过拆分和洗牌的方式保障用户隐私。
据了解,除储备金干净度为 100% 外,欧易 OKX 是目前唯一一家同时实现默克尔树开源验证、钱包地址所有权开源验证、链上资产开源验证的交易平台。自去年 11 月份以来,欧易按月定期发布 PoR 报告,持续引领行业提升透明度。[2023/3/2 12:38:51]
zero-knowledge:
零知识证明,在不暴露隐私情况下向对方证明一件事情,让数据「可用而不可知」。
succinct:
简洁性,要证明的东西占用的空间很小,而且可以快速验证(几毫秒)。
门罗币完成零知识证明系统Bulletproofs+代码审计:2月15日,门罗币官方发推称,完成零知识证明系统Bulletproofs+代码审计。此前消息,零知识证明系统Bulletproofs+代码获准可在门罗币协议中使用。随后官方计划筹集90.3 XMR以进行零知识证明系统Bulletproofs+审计。[2021/2/15 19:49:05]
non-interactive:
非交互性,意味着证明者和验证者之间不需要有交集即可快速地得到验证结果。
zk-SNARK的简洁性和非交互性,是相对于传统的零知识证明方案而言的。
简单来说,传统方案是交互式证明,即示证者(宣称某一命题为真)和验证者(确认该命题确实为真)之间反复确认,你可以理解为示证者不断向验证者询问“是或不是?”,然后验证者不断给出回答,直到最后碰出一个正确答案来,所以效率很低。
Celsius将利用Horizen的零知识证明创建储备金证明系统:金色财经报道,Celsius正在与Horizen合作,以使用Horizen的零知识证明创建储备金证明系统。储备金证明试点将获取Celsius网站上显示的信息,并从Horizen侧链(而非Celsius内部服务器)获取信息。[2020/10/31 11:17:38]
zk-SNARK的解决方案则不需要双方反复确认“是或不是”,而是提前先搞一个「可信初始化」,从而生成公共参考字符串(CRS),然后所有的示证者都可以直接访问它。
打一个通俗的比方。交互式证明相当于老师要批改每一个考生的每一道考题,效率很低,但正确答案只掌握在老师这边,基本不存在有人偷答案的情况。
但zk-SNARK直接上传了正确答案,然后让考生自己对答案(把自己解的某道题发送给后台系统,就会直接得到正确与否的最终结果),非常高效,代价是答案有可能被泄露,虽然这个答案系统是经过加密的。
Findora将基于腾讯云提供零知识分类帐产品“zkLDB”:7月2日消息,去中心化金融公链项目Findora宣布与腾讯云建立合作关系,Findora将很快基于腾讯云提供零知识分类帐产品“zkLDB”。该产品将支持加密交易(encryptedtransaction)和资产发行、处理、验证和存储。Findora的zkLDB还包含一套完整的合规隐私保护审核工具。另外,腾讯和Findora将合作提供多种API和SDK,以满足银行、投资管理和游戏等行业的需求。
注:Findora是一个基于密码学的金融公链,由计算机密码学专家和美国斯坦福大学校产基金首席执行官组建,旨在支持众多应用,包括开放式银行、资产证券化、交易和点对点贷款。不仅为企业提供数据隐私服务,同时允许审计以符合财务规则。(MarketWatch)[2020/7/2]
因此针对zk-SNARK容易被泄露的问题,有很多围绕着提高「答案系统」安全性的解决方案,不同采用zk-SNARK的项目方的方案各有不同。如zCloak钱包是直接把算法以纯文本的形式发给用户,用户下载到本地去做计算(所以即使断网也依旧能完成工作)。
动态 | 波场社区TRONZ团队已完成零知识证明匿名交易公测:波场社区TRONZ团队已完成零知识证明匿名交易公测,测试网已经顺利部署。匿名交易即将在波场TRON主网上线,现已开启主网MPC流程,社区用户均可参与。Github参考地址可见原文链接。[2019/12/31]
zk-STARK:概率证明+缓冲时间
zk-STARK是成立于2017年12月的StarkWare团队开发的,它是针对zk-SNARK的替代解决方案。研发历时一年多,经过无数次迭代才彻底搞定,已经到2019年了。
zk-SNARK是提前生成公共参考字符串,用非交互式证明的方式提高了证明效率,但也留下了隐患。zk-STARK虽然是交互式证明,但它是一种巧妙的交互式证明——通过哈希函数碰撞(一种概率证明的方式)来保证安全性,因此也实现了高效证明。
这个思路直接借鉴自2015年推出的交互式预言机证明(IOP)技术,简单来说是先把问题用密码学的方式打碎,然后验证者随机向示证者提出几个的问题,如果几轮下来,示证者都给出准确的回答,那么验证就通过了。
所以zk-STARK同样也只需要极少的计算资源就可以完成证明,但是它更安全,不存在答案泄露的风险。并且为了进一步确保安全性,还设置了争议时间延迟(DTD)来作为缓冲。
zk-SNARK和zk-STARK的区别
1.透明度
zk-SNARK的公共参考字符串通常由一个小团体来保管,因此有泄露的可能性,从而被恶意利用,如创建虚假证明。
zk-STARK则直接利用生成随机性的参数来验证,不需要任何第三方的「答案系统」,因此透明度大幅提高。
2.抗量子计算机攻击
zk-SNARK未来会轻易被量子计算机暴力破解(通过分解计算从公钥中提取私钥)。当然,量子计算何时到来还是个问题。
zk-STARK采用的是哈希函数碰撞的方法来证明,理论上量子计算机的暴力破解是无效的。
3.可扩展性
zk-SNARK的证明在链上更具可扩展性(生成的证明的字节数更小),zk-STARK在纯链上似乎没有优势。
StarkWare官网宣称是最快的,可能是因为zk-STARK允许链下进行大规模计算和存储,然后在链上完成验证,因此可扩展性显著提升(甚至可以提高10倍),而成本显著降低。
总结
zk-SNARK技术被采用得最多,尤其是在以太坊扩容场景中。zk-SNARK主要是围绕「隐私保护」去做身份、支付、DeFi、资产证明等各种应用。
zk-STARK虽然也在发展之中,但技术尚不成熟,至少在通用性上受限,所以我们看到大多是围绕着「可扩展性」去做各种应用。
不过据StarkWare团队在2022年的说法,已经解决了可扩展性,该把目标瞄准「隐私保护」了,而方式是通过StarkNet的Layer3以及Layer4中以分形分层的方式解决,这似乎与zk-STARK证明系统本身没有直接关系。
至少就目前而言,大多数以太坊Layer2项目(zkSync、Aztec、Loopring、Scroll等)都采用的是zk-SNARK技术路线,除了通用性上受限,还有一个原因是普遍反馈说zk-STARK的开发难度过大……
当然长远来看,zk-STARK可承载的运算量更大,可能更有前景。
总的来说,zk-SNARK和zk-STARK的关系,?有些像Optimistic rollups和ZK rollups的关系,前者短期利好,后者长期利好。
链茶馆
个人专栏
阅读更多
金色财经 子木
金色早8点
去中心化金融社区
虎嗅科技
区块律动BlockBeats
CertiK中文社区
深潮TechFlow
念青
Odaily星球日报
腾讯研究院
这篇报告来自链游网站 ChainPlay ,报告调查了 2428 位来自全球的 GameFi 投资者,来了解他们对于这个赛道的视角和洞见,为什么会投资于区块链游戏.
巴哈马总检察长办公室在宣布逮捕FTX前CEO Sam Bankman-Fried时,指出他很可能应美国要求被引渡。一个多星期后,美国广播公司新闻报道称 ,SBF于12月20日签署了引渡文件.
▌ Vitalik Buterin:FTX的欺诈行为比Mt.Gox和Luna更严重11月12日消息,以太坊创始人Vitalik Buterin第一次对FTX崩盘事件发表直接评论.
1.金色观察 | 美国SEC起诉书披露SBF及其同伙如何欺诈投资者2022年12月21日美国证券交易委员会(SEC)指控两位SBF同伙Caroline Ellison(Alameda Resea.
原文作者:hangry 推文在 3AC、Terra、FTX 这些黑天鹅让本就进入熊市周期的加密货币市场布满了乌云。但在加密市场中仍然涌现了许多创新项目.
https://movectf.movebit.xyz/Git: https://github.com/shanxuanchen/MoveCTF第一题是check in题.