零知识证明的技术路径之争:zk-SNARK和zk-STARK谁更优?
作者: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,能够拆卸成三部分去理解:
zero-knowledge:
零专业知识证明,在没有暴露隐私前提下给对方证明一件事情,让数据信息「可以用且不得知」。
succinct:
简约,要证明的东西了占用的空间不大,并且能够快速验证(几ms)。
non-interactive:
非互动性,代表着证明者与验证者中间不用有联系就可以迅速地获得验证结论。
zk-SNARK的简约与非互动性,相对于传统零专业知识证明计划方案来说的。
简单的说,传统式方案是交互式证明,即示证者(声称某一出题为真)和验证者(确定该出题的确为真)中间不断确定,你可以看作示证者持续向验证者了解“是或不是?”,随后验证者持续得出回应,一直到最后碰出一个标准答案来,因此效率不高。
zk-SNARK解决方案一般不必须彼此不断确定“是或不是”,反而是提早先搞一个「可靠复位」,进而形成公共性参照字符串数组(CRS),随后每一个示证者都可以浏览它。
打一个简单的比如。交互式证明等同于老师应该批阅每一个考生每一道考试题,效率不高,但标准答案只把握在学生这里,基本上不会有有些人偷回答的状况。
但zk-SNARK立即晒出了标准答案,随后让同学们自身看答案(将自己解某个题发给后台系统,就可能会获得是否正确的最后的结果),十分高效率,成本是回答可能被泄漏,尽管这个回答操作系统是通过加锁的。
因而对于zk-SNARK很容易被泄漏问题,有许多围绕提升「回答系统软件」安全系数解决方案,不一样选用zk-SNARK的项目方的解决方案各不相同。如zCloak钱包是直接将优化算法以纯文本的方式发送给客户,客户快速下载当地去做测算(所以就算断开连接也依然能够完成工作任务)。
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的关联,前面一种短期内利好消息,后面一种长期性利好消息。
来源:liurui
- 免责声明
- 世链财经作为开放的信息发布平台,所有资讯仅代表作者个人观点,与世链财经无关。如文章、图片、音频或视频出现侵权、违规及其他不当言论,请提供相关材料,发送到:2785592653@qq.com。
- 风险提示:本站所提供的资讯不代表任何投资暗示。投资有风险,入市须谨慎。
- 世链粉丝群:提供最新热点新闻,空投糖果、红包等福利,微信:juu3644。