免责声明:金色财经所有资讯仅代表作者个人观点,不构成任何投资理财建议。请确保访问网址为(jinse.cn) 举报

    梳理ZK技术史:会是下一个千亿应用的沃土吗?

    原文标题:《我们研究了 ZK 的技术史,发现下一个千亿应用蕴藏其上》

    原文作者:Web3 研究型组织 R3PO

    加密世界的焦点经历了比特币、以太坊、DeFi、NFT、元宇宙和 Web3 的多次变迁,唯独缺少对加密技术本身的关注,除了比特币的椭圆曲线加密算法(ECC)还算有一点大众认知度,其他加密算法基本停留在研究员和开发者的自嗨中。

    R3PO 认为这不够去中心化,会严重阻碍 Web3 的进一步扩展,密码学是区块链的基础件,不应该被少数人掌握,而应走向更广阔的领域。

    R3PO 希望能用新的书写范式去阐述术语的含义,兼顾专业性和可读性,致力于为机构投资者、项目方发现潜藏在发展中的投资机会、创业方向和切入点,寻找到未被发掘的收益。

    近期大热的零知识证明技术仍是一个不断发展、不断革新的细分领域,但其技术本身又具备足够广阔的应用场景,因此对其进行全景梳理显得十分重要。

    零知识证明技术(Zero-Knowledge Proof)并非新概念,细细梳理可知,迄今已经经过 40 年的发展,诞生出多种模型和应用。

    进入 Web3 时代,早在 2017 年,V 神便已经注意到 ZK 技术在以太坊上的使用潜力,而最近 Starkware 获得 1 亿美元的融资使其总融资额度达 2.25 亿,这代表机构是以公链级别的估值和潜力来看待 ZK 技术。这将是一个长期鏖战的领域,会暴露出更多的投资机会。

    向后推演 20 年,R3PO 认为 ZK 发展至少具备一个甲子的生命长度,因此描绘整个 ZK 的发展历程需要追本溯源,以更好地厘清其发展逻辑,寻找到下一步的潜在机会。

    本系列首篇将会从零知识证明起步,超越 ZK 只能应用于 L2 领域的固有观念,带给大家全新的系统性认知。

    零起步:ZK 的组装过程

    1982:财不外露,便分高低

    对于财富的追求自古有之,项羽就说过:「富贵不还乡,如衣锦夜行」,但太多的财富会引人觊觎,有没有一种办法,在既不暴露财富数量的同时又比较出财富的多寡呢?

    1982 年,后来的图灵奖得主姚期智便设想过这个问题,这就是著名的百万富翁问题,省略其数学过程,其大致运作模式如下:

    - Alice 和 Bob 选择代表自己财富数量的数字 i 和 j,取值区间在 1-10 之间;

    - Alice 对 i 进行单向加密,并将加密后的结果 k 发送给 Bob,Bob 得到一个与 i 相关的新值;

    - Bob 对 k 进行运算后会得到一个新值 m,并将其传递回 Alice 此时,Alice 可以判断 m 和 i 的关系。

    - 这个过程可以继续推演,双方可在不完成信息暴露的前提下最终完成比较。

    当然,以上过程并不全面,但足以说明一个问题,我们确实可以在两方之间,并且在不暴露信息的前提下进行计算,如果将两方扩展至多方,将区间扩展至更大范围,那么这就是典型的多方安全计算 MPC (Secure Multi-party Computation) 问题。

    百万富翁问题是 ZK 讨论的一个起点:

    - 在不暴露财富信息的前提下,符合零知识的定义;

    - 在不借助第三方进行评估的条件下,考察的是两者或者参与方之间的直接交互。

    1985:零知识证明面世

    1985 年,Goldwasser、Micali 和 Rackoff 首次提出 Zero-Knowledge Proof 模型,准确而言是「交互式零知识证明」模型,简单而言就是允许在多次交互的前提下,通过 ZK 技术来验证真假、大小。

    此处的零知识并不完全准确,以 Alice 和 Bob 的互动为例,Alice 和 Bob 可以互为验证者和证明者,但是两者间传递的信息不能和财富数量本身有关,这里的零知识是指相关性为零,而并非不传递信息。

    而交互式指的是可以多次进行交互,这个过程可以反复进行,直至得出正确结果。

    至此,目前所熟知的 ZK 技术迈出了成型的第一步,接下来的一切发展,都是在其上的删减增改。

    1991:非交互式零知识证明

    当时间来到 1991 年,Manuel Blum、Alfredo Santis、Silvio Micali 和 Giuseppe Persiano 提出非交互式零知识证明,闻名即可知,此次升级重点是进行非交互式的证明过程,也就是在双方之间不进行交互的同时,验证一个定理、假说的真伪性,这看似很反直觉,但是有一个绝妙的例子可以说明:

    - Alice 和 Bob 财富自由后变身数学家。Alice 离开 web2 去环游 web3,期间 Alice 继续 ZK 研究。

    - 我们假设 Alice 能够在发现一个新定理的证明时,给 Bob 写一张明信片,证明她在研究中取得了新进展。

    - 这是一个非交互式的过程,准确的说,它是一个单方向的互动:只从 Alice 到 Bob。即使 Bob 想回答,他也不可能。因为 Alice 没有稳定的(或可预测的)地址,在任何邮件能到达她之前就会搬走。

    - 我们约定,只要 Bob 收到邮件,我们不需要查看邮件内容,就可以确定「Alice 取得了研究上的新进展」这个命题为真。

    非交互式零知识证明将交互次数减少到最多一次,可实现线下验证和公开验证,前者为 Rollups 奠定了有效性基础,后者耦合区块链的广播机制,可避免多次计算带来的资源浪费。

    至此,我们目前见到的 ZK 便已经成为成熟理论模型,但此时的 ZK 更多是数学和密码学领域的研究对象,和区块链并无太多关联,而在比特币出现后,加密技术+区块链才成为研究的方向,而 ZK 无疑是其中的佼佼者。

    值得注意的是,中本聪本人并不排斥 ZK 技术在比特币网络的使用,更多的是当时的 ZK 技术不成熟,因此最终选择了较为安全的 ECC 算法,而 ZK 本身可以直接应用到 Layer1 区块链上,Zcash、Mina,以及以太坊的伊斯坦布尔升级都涉及到了零知识证明的相关领域。

    一相逢:SNARK 介入区块链

    2010-2014 Zcash: SNARKs (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) 实用化场景

    在比特币网络出现后,安全和隐私成为人们对区块链的最初认知。市场上出现了一系列基于隐私的公链和应用,如 Zerocash/Zcash 使用的 SNARKs,以及在 Monero 中使用的子弹证明 Bulletproofs(BP)等。

    2010 年,Groth 实现了首个基于 ECC 算法的,O(1) 常数级的 ZK。也即 ZK-SNARKs 或者 ZK-SNARGs。

    - SNARGs: Succinct Non-Interactive Arguments

    - SNARKs: Succinct Non-Interactive Arguments of Knowledge

    从应用角度来说,此次改进在于「简洁」Succinct 功能上,具体而言,SNARK 致力于压缩信息本身的大小,在 ZCash 中,程序电路是固定的,因此多项式验证也是固定的,这使得设置只需执行一次,交易后续只需改变输入便可复用。

    在 2013 年,Pinocchio 协议提升效率至分钟级别证明,以及毫秒级别的验证时间,开销控制在 300 字节以内,这也是 ZK-SNARKs 技术真正首次落地到区块链领域。

    这证明了 ZK 技术可以在隐私场景上发挥作用,R3PO 判断后续的隐私路线会具备脱离 L2 单独存在的潜力,Aztec 证明了隐私 DeFi 路线的可行性,而在 tornado 被制裁后,链上金融隐私仍旧是强烈的刚需,这个方向的投资机会仍未被广泛发掘,值得后续期待。

    此外,隐私币项目 Zerocash 进一步改进了相关算法,使用的是 SCIPR Lab 优化后的 zk-SNARKs 算法,在理论条件下,可以做到既隐藏付款来源、接受者和金额,并且交易可以控制在 1KB 以内,验证时间在 6ms 之内。

    Mina:递归 ZK 压缩数据

    Mina 不同于以太坊 L2,其是一条 L1 级别的高性能公链,其运行节点只有 22KB,而之所以能做到如此之小,在于其大幅度利用递归来证明 ZK 确认的有效性,即每一条信息都带有之前的确认结果。

    - Step1:zk-SNARKs 证明节点有效性,只需要保存其证明结果;

    - Step2:通过递归调用,确保节点有效性的正确传递和检索,不需要保留所有历史数据,实现极致压缩数据的效果;

    传递结果的有效性,而非保存全节点数据,这是 Mina 证明行之有效的手段,而在以太坊 L2,ZK-Rollup 可以通过打包多次交易数据,结算一次的方式完成有效性证明,而进一步推演,L2 之上可以叠加 L3,或者 Dapp 应用,这些都是 ZK 可以发展的细分赛道,比如 dYdX 目前运行在 Starkex 之上,以及架构在 Starkware 之上的 L2 ImmutableX,都证明 ZK 的使用潜力,这个赛道的价值目前仍未被全部挖掘,仍留有长期的投资价值。

    至此,ZK-Rollup 涉及所有的技术要件就已经基本齐备了,我们已经装备好足够的 ZK 基础知识,并且可以总结 ZK 的以下特点:

    - 非交互式:不需要多次验证,只需一次验证就可以广播至全网;

    - 零知识:不需要透露信息本身的特征,可在全网进行公开传播;

    - 知识:知识不是公开、易得的信息,必须具备独特的价值,比如经济价值、隐私价值等;

    - 证明:证明由数学手段确认,安全性经过多年研究和实践检验;

    如果将这些技术特点组合起来,我们可以发现,ZK 天然适合 L2 扩容,并且又不局限于 L2,ZK 技术的其他应用会在后文中持续发表,欢迎大家继续关注。

    双龙会:STARK 终将取 SNARK 而代之

    ZK-STARK:开发难度以 10 年计的种子选手

    对比二者的差异,主要在于 STARK 中的 S 是 Scalability 之意,面向的是更加大型数据的复杂使用场景,但其整体上仍旧是一个正在发展中的技术路线。

    本文不过多涉及具体 L2 之间的区别,但有一点很明显,除 StarkWare 之外,其他的 L2 项目,包括 zkSync、Aztec、Loopring、Scroll 等都采用的是 SNARKs 技术路线。

    究其原因,在于 STARK 的开发难度过大,目前只有 StarkWare 有能力进行自研,但其好处也十分明显,相较于 SNARK,其可承载的运算量也会更大,在运行大型数据时,其安全性会更高,比如游戏、社交、NFT 等方向。

    其次,STARK 路线具备抗量子攻击的特性,这在未来十年具备颠覆行业格局能力的可能,比特币采用的 ECC 算法并不能完全具备抗量子破解的可能,如果加入 zk-STARKs 技术,其安全性会显著提高。

    可以总结以太坊 L2 的格局,短期 Optimistic Rollup,5 年后 zk-SNARKs 路线,10 年后 zk-STARK 路线终将会胜出。

    ZK-Rollup:数据的上探,信息的下钻

    介绍完 zk-STARKs 之后,L2 扩容的全部技术特征便已完备,只缺少对 Rollup 的介绍,实际上,Rollup 利用的是 ZK 的验证机制,而摆脱其对数据量的需求:在 L1 负责共识和结算的前提下,由 L2 负责应用的具体日常运营,用户不需要和 L1 直接交互,其体验会高度接近于目前的 App。

    更进一步的说,Rollup 在完成信息的打包后,会将验证后的信息加密成知识,随后传递给 L1,以攻破安全性、去中心化和扩展性的不可能三角。

    总结

    我们从百万富翁问题出发,由 MPC 问题过渡到零知识证明领域,出于经济原因,交互式的零知识证明不完全适用于链上活动,而非交互零知识证明逐渐成为主流。

    随着 Zcash 的发展,SNARKs 技术日渐应用到其中,使 ZK 技术从单纯的密码学研究对象变身为区块链领域中使用的工程手段,在隐私、安全、效率方面发挥自己的作用。

    以太坊扩容场景,则使 ZK 成就了 L2,Rollup 技术路线战胜其他竞争对手,zk-STARKs 也逐渐发展起来,有望激活挖矿、GameFi、NFT 等更为普遍的使用场景。

    在以太坊之外,越来越多的新模式已经逐步涌现,比如可定制模块化 Rollup 路线,又如刚完成 1500 万美元融资的 Eclipse,其路线图会支持 Move 语言和 Solona 网络,以及完成 3000 万美元融资的 Scroll,其希望建立 EVM 等效的 ZK-Rollup。

    新故事背后的驱动力是对 ZK 技术的认可,广泛来说,ZK 是一个「大而全,长而远」的领域,大额融资消息的不断传出也说明市场对其接受度在逐步走高,但总体而言,这还是一个新领域,即使仅论其技术路线,也有「内卷」的流派,而其中的投资机会则长期存在,无论是内嵌入底层基础设施,还是落地于具体应用场景,需要我们不断去发掘。


    jinse.cn 11
    好文章,需要你的鼓励
    jinse.cn 11
    好文章,需要你的鼓励
    参与评论
    0/140
    提交评论
    文章作者: / 责任编辑:

    声明:本文由入驻金色财经的作者撰写,观点仅代表作者本人,绝不代表金色财经赞同其观点或证实其描述。

    提示:投资有风险,入市须谨慎。本资讯不作为投资理财建议。

    金色财经 > 区块律动BlockBeats > 梳理ZK技术史:会是下一个千亿应用的沃土吗?
    • 寻求报道
    • 金色财经中国版App下载
      金色财经APP
      iOS & Android
    • 加入社群
      Telegram
    • 意见反馈
    • 返回顶部
    • 返回底部