自 4 月的黑山 EDCON 开始,「ZK」就成了今年最热的一个词汇,拓展以太坊所带来的叙事空间更是来到新的高点。不少人认为,这将是一个千亿美元的新市场,创造出更多机遇和财富故事,比如「ZK 挖矿」等。当然,ZK 作为一个尚未到来的新时代,也意味着许多机遇是我们难以在当下精准识别的。
ZK 未来会是什么样,仍然需要更多的想象。而=nil; Foundation 构建出的 Proof 市场,就激起了我对这个千亿美元时代的无限幻想。近日,我与=nil; Foundation 联合创始人 Mikhail Komarov(以下称呼 Misha)进行了一场深度对话,谈论了关于=nil; Foundation、zkLLVM 以及 Proof 市场三个方面的相关话题。
1.人们用 ZK 来进行信息压缩,是该技术栈最令人兴奋的「误用」。
2.生成 ZK 证明应该外包给提供此类专业服务的生产商,组建一个专业的生产商网络来响应市场请求。
3.在当前的 Proof 市场中,已经出现了 PEV(证明者可提取价值)现象。
4.Proof 市场目前尚未完全去中心化,这将是团队未来一段时间的工作中心。
Misha 自 2013 年开始接触加密行业,入圈后的第一件事就是研究 Bitmessage 的 C++实现。这是一个比特币消息协议,尽管该协议后来被攻破了几次,但在当时很多人都为之疯狂。后来,Misha 开始围绕 BitShares,与 Dan Larimer(即 BM,Steemit、Bitshares 和 EOS 创始人)做了一连串的开发工作,并在这个过程中遇到了后来做了 Lido 的 Konstantin Lomashuk。那时 Konstantin 手上有一些 Bitshares 相关的加密项目,想要创建一个专门针对俄罗斯的 Steemit 分叉,即 Golos Network。
这是在 2016 年,Misha 以 Golos CTO 的身份,与 Dan 和 Konstantin 一同开启了新旅程。但两年后,Misha 便对 Golos 感到厌倦,他认为 Dan 设计的产品并不能让人满意,其内部架构不合适,质量也不够。因此,Misha 离开了 Golos 和 Steemit 等相关项目,并在 2018 年 4 月与 Konstantin 创立了 Nil。
Misha 最开始的想法,是让人们不再遇到在 Golos 和 Steemit 上存在的不稳定问题,比如没有合适的数据管理、架构、安全保障等。因此,Nil 的目的是将数据库管理行业的成果引入加密行业,为这个领域带来更多可靠性、安全性、扩展性等。当然,Misha 没有想到的是,自己的新征程通向的将是加密世界扩展性未来的正中心。
BlockBeats:请先简要介绍一下你的背景,比如你是如何开始加密事业的,又为什么要加入加密行业呢?
Misha:那是很久以前的事了。我在 2013 年左右开始接触加密行业,那时候我正在研究 Bitmessage 的 C++实现。你可能还记得那时候大家都为之疯狂的那种类似比特币的消息协议,虽然后来被攻破了几次,但那时候它还是很火的。
然后我开始围绕 BitShares 和 Dan Larimer(即 BM,Steemit、Bitshares 和 EOS 创始人)所做的一切进行开发,后来我遇到了 Konstantin Lomashuk,现在你可能因为 Lido 而知道他。那时候他手上有一些 Bitshares 相关的加密项目,想要创建一个专门针对俄罗斯的 Steemit 分叉。因此我们做了 Golos,我在 2016 年成为了 CTO,从那时起,我们一直在一起工作。
但在 2018 年 4 月,我对 Golos 感到厌倦,因为 Dan 设计的产品让人不满意,他的产品从来没有长时间运行过,虽然它们确实在运行,但我认为内部架构对我来说并不合适,质量也不够,所以我离开了 Golos 和 Steemit 等所有项目,并在 2018 年 4 月创立了 Nil。
我最开始的目的是让人们不再遇到我在 Golos 和 Steemit 上遇到的问题,比如没有合适的数据管理、架构、安全保障等,一切都非常不稳定。我觉得这不是一个好的解决方案,所以我和 Kosta 一起创立了 Nil,目的是将数据库管理行业的成果引入加密行业,因为这意味着可靠性、安全性、扩展性等。之后的故事就是 Nil 的发展历程。
BlockBeats:=nil; Foundation 开始关注零知识证明是在什么时候呢?
Misha:回想起来,大概在 2020 年左右我们完成了第一个 DBMS(数据库管理系统)原型时意识到了一些问题。老实说在我们尝试将数据库管理系统与加密行业结合之前,没有人真正尝试过这样做,完成这个项目时我们意识到信任假设并不是我们想要的。
如果要让它运行起来,无论是使用我们的数据还是其他方面,每个人都必须信任我们。我们思考着如何降低这种不信任的假设,如何让它尽可能地无需信任,那时我们意识到可能需要用到某种技术,我们需要一个密码学工具来实现这个目标,所以我们为了这个目的构建了一个密码学套件。
那时行业还处于发展初期,没有 Arc Works 等开发环境,我们想既然有理论概念,有一些实验,那必须尝试一下。我们构建了一个套件,建立了一个自己的证明系统。然后我们与以太坊基金会和 Mina 基金会的人合作,构建了一个电路编译器。为了不自己生成证明,我们为引入市场动态到证明生成而建立了一个 Proof 市场。
在与 Mina 基金会的人一起构建编译器的过程中,我们也和 Solana 基金会的人一起合作。在那个过程中我们意识到我们需要状态证明,而状态证明也是当时 Mina 和以太坊的人正在寻求的东西。大约在 2021 年初,我们在为数据库管理系统开发必要的状态证明时,Mina、以太坊和 Solana 的人觉得这就是「zk Bridging」。因为 Justin Drake、Evan Shapiro 和 Anatolly 都认为,我们需要更安全的 Bridge 技术,然后他们说不管你怎么称呼它,它就是 zkBridge。
BlockBeats:关于零知识证明,加密领域已经研究和尝试了相当长的时间,一直没能取得显著的进展。但今年以来,ZK 领域的发展似乎进入井喷状态,这是为什么?
Misha:整个 zk 技术实际上只有两种方法可以应用,第一种方法显然易见是用于隐私目的,第二种方法用于压缩,比如大家都在谈论的扩容,出现了 zk-Rollups、zk-Bridges、zk-MLS、zk-Oracles 等。人们「误用」这个技术栈来进行压缩,我认为这是我见过的最令人兴奋的「误用」。那么问题来了,为什么是现在?我们早在几年前就可以完成这个任务,也可能是几个关键的技术发展里程碑,使其成为可用、可行和有趣的用途。
第一个里程碑是在 2016 年,当时这项技术对加密行业来说已经变得越来越实用。当时,Rank-1 约束系统(R1CSs)变得相当普遍,不同的应用开始出现。从根本上说,当它变得可行以保护隐私时,这件事就有了可能性。比如 Zcash、Tornado Cash 等,这些项目都是在那个时代诞生的,或者说这些项目的想法都是在那个时代诞生的。
第二个是在 2019 年到 2021 年之间,是这项技术的第二个关键时期。当时,布隆过滤器(Blunt argumentations)变得越来越普及。人们开始构建基于布隆过滤器的证明系统。我们也有自己的证明系统,叫做占位符(placeholder)。为什么这段时间很重要呢?因为得益于这些基于布隆过滤器的证明系统,使项目能够将这个技术栈用于压缩。它提高了压缩功能,使得进行适当的 Rollups 扩容以及在 2021 年实现 zkBridge 变得更加便宜和可行。
目前,我们在进一步发展证明系统方面取得了一定的进展,同时也在我们的项目中取得了一定的突破。可以这么说,编写复杂数学约束和计算在这样一个长期共享信息的环境中也是相当具有挑战性的。很多人投身于这个问题,例如引入 STARK、为了解决这一复杂性问题而推出的 zkVM,我们推出了 zkLLVM 编译器,这也使得构建应用变得更简单。从 2019 年到 2021 年,证明系统一直在发展,从 2020 年末至 2021 年初再到 2022 年末期间,工具开发也有所进展。所有这些进展都使得构建复杂计算证明变得足够高效,并且在经济上可行。
当然,证明系统的发展还远未结束。为了实现更多应用场景,证明系统还有许多工作要做。例如,也许在今年或者明年,我们将看到证明系统的发展,我们这边也在进行相关的研究和发展。这些证明系统的发展将使得在经济上可行的 zkLLVM 应用成为可能,我们希望成为第一个实现这一目标的团队。但无论如何,目前每个人都在努力提升证明系统。
BlockBeats:你刚才提到了 zkLLVM,这是一个为开发者构建的编译器,用于创建他们自己的 zk 电路。您认为 zkLLVM 的重要性在哪里,目前产品的成熟度如何?
Misha:zkLLVM 可能不是第一个,但确实是最早的电路编译器之一。之前我见过一些原型,也见过一些 DSL 项目,但有完整功能的电路编译器而非虚拟机,我之前还没有见过很多。确实有一些,但我不确定是否有人真的在用,所以这就是为什么我觉得这很重要。并且相当多的人在这个行业里努力摆脱「非我所创」的困境,这是非常耗费精力的。很明显,人们最终会创造出非常好的产品,但是这种「非我所创」的困境使得开发变得耗时、耗钱。
比如我们现在正在通过 Zoom 交流,我们的笔记本电脑上几乎所有的软件都是用 LLVM 编译的。我们只是把所有这些都拿过来,并使其可证明。所以我认为我们只是把整个编译器生态系统引入了加密行业,让这些成果能够在加密领域为了效率和经济可行性而重复使用。这也带来了广泛使用的编程语言。世界上有很多用 Rust、C++、Go、TypeScript 等编写的软件,人们可能希望在以太坊内部以及无信任环境中执行这些软件。
我最喜欢的例子是人们获取 Doom 源代码(C/C++源代码),他们通过 zkLLVM 证明到以太坊,然后将其拖到彼此之间,以炫耀他们完成的时间。例如,我在 20 分钟内完成了 Doom 的速度挑战,这里有证据还有你的以太坊 NFT,证明你在 20 分钟内完成了 Doom 的速度挑战。
BlockBeats:目前都有哪些用户群体在使用 zkLLVM,创造出来的产品都大致有哪些?
Misha:很多不同类型的项目都在使用这些技术,有些项目可能只是在构建一些东西试图部署,或者可能已经在运行。最明显的用例是我们使用编译器构建的 zkBridge,通过其证明系统进行保护。或许这也是我们当初认识到编译器的必要性并开始构建它的原因之一。也有人正在尝试使用它来证明语句的形式验证,为了不试图将程序的形式规范与它们放在一起,而是通过使用 zkLLVM 编译形式语句的编译器来将其压缩到证明中。实际上,人们确实在编译编译器。
以 zkOracles 类应用程序为例,人们已经建立了 zkOracle 来检索以太坊历史数据或 Lido,以确保以太坊质押发行的安全。人们正在解决存在很多信任假设的问题,尽管已经运行了两年多。当我们在 2020 年设计 Lido 时,这是可以接受的,但后来我们想要减少信任假设,因为不能冒险让用户的 TVL 受到风险,所以我们决定用 ZK 的工作证明来保护它。除此之外还有很多其他项目,说实话我可以永远地继续讲下去,目前我手头有大约 80 个项目在 CRM 中。
BlockBeats:=nil; Foundation 此前以超过 2 亿美元的估值获得了 StarkWare、Mina 等 L2 团队以及其他 VC 们的投资。这笔钱是否是用于建立 Proof 市场,来自 StarkWare 和 Mina 的投资又是否意味着你们会更倾向于和特定生态进行合作?
Misha:这是我们五年来的第一轮也是唯一一轮融资,因为我们以前没有这个需求,而现在是时候去做这件事了。我们已经进行了足够的原型设计,扶持了足够的项目,学到了很多东西,我们感觉足够强大、自信,可以按照我们认为应该建立的方式来推出产品了。
这轮融资大约一年前完成,我们宣布这个消息的时间比实际发生的时间晚了好几个月。直到我们觉得开始谈论「这是我们开发的东西」很舒服时才发布融资消息。因为筹集资金,就会开始向彼此承诺东西,然后他们会问你筹集资金的目的是什么,我们要交付什么?什么是产品?有人在使用你的产品吗?所以我们特意推迟了关于这个话题的任何讨论,直到我们至少做了一些事情。
我们确实在与 Mina 和 Starkware 团队的整个生态系统合作,目前已经有很多来自 Mina 生态系统的应用程序,要么是在我们的基础上构建的,要么是与我们一起构建的,要么是与我们合作建设的。最近 Mina 的团队开始研究开发 roll-ups,为此他们需要大量的验证能力。此外我们在 2021 年与 Mina 一起基于编译器构建了状态证明验证,这是另一个与我们合作的 Mina 生态系统项目。
在与 Starkware 生态系统的合作中也发生了很多事情。当然这是我们合作的目的,以便我们对 Starknet 生态系统中的可证明应用也有用。例如有几个连接到 Starknet 的桥接项目使用我们的技术堆栈成为零知识证明桥接。几个游戏项目跟我们说需要验证能力。
还有一些其他项目试图使用旧的桥接技术,利用状态证明验证并在其基础上构建以太坊应用程序。有些人在 StarkNet 上构建 L3,他们表示拥有验证能力将是一个不错的选择。总之,这就是我们与他们走到一起的目的。老实说,我对这段合作关系感到满意。
零知识证明(ZK Proof)是当前加密市场 ZK 领域里的绝对核心,它的存在为 ZK Rollup 和 zkEVM 等许多场景提供了无限的可能。但生成一个 ZK 证明也是一项繁重的计算任务,往往需要数小时才能完成一次证明,这也是为什么当前大部分排序器仍旧没有解决中心化问题的原因。为了可靠且有成本效益地生成 ZK 证明,我们不仅需要开发和维护计算基础设施,更需要对其进行扩展。而在 Misha 看来,引入市场机制是这个难题的最优解。
=nil; Foundation 团队认为,生成 ZK 证明是一项应该外包给提供此类专业服务的生产商的任务。在这个前提下,我们就需要一个 Proof 市场,每个人都可以请求生成需要的 ZK 证明,然后一个专业的生产商网络将响应此类请求。
BlockBeats:现在让我们具体谈谈 Proof 市场,它的想法来源于哪里,背后的故事是什么?
Misha:这个想法源于我们在 2020 年到 2021 年底广泛参与协议应用和 Filecoin 相关的各种事物。当时我们不仅亲眼目睹了发生在 Filecoin 周围的疯狂现象,还从我们的角度参与其中。那时我们学会了如何正确处理所有的证明系统、如何进行适当的论证等,并且实现了一个比公共版本快 10 倍的 Filecoin 证明器,让矿工充分利用他们的硬件。我们实际上就是一个见证了所有试图从矿工角度降低成本的试验的枢纽。
在那段时间里,我们了解到了很多实际市场的数据,比如用这种硬件生成这个特定证明的价值有多大,需要多长时间;哪些人使用哪种硬件、哪些数据中心为此而建等等。然后与以太坊基金会、Mina 基金会以及其他许多基金会合作时,我们发现这些状态证明和共识证明非常繁重,我们绝对不会让任何人自己证明这些证据。
因为说实话,没有人有这种硬件可以快速生成,因为它们太庞大了。例如,与 Mina 的共识一样,Mina 的状态证明是政策投资者曲线乘以约 350 亿美元,这相当多。或者 Solana 共识证明,除了其他内容之外,它还包含大约 4000 个 ECDSA 签名,生成它需要花费很多时间。
当注意到这一点时我们决定不再这样做。我们想,好吧,我们会把这个工作外包出去。我们会为此建立一个市场,因为我们已经掌握了与 Filecoin 相关的大量数据,让我们建立一个市场吧,让我们把它变成一种商品,让市场动态应用到这上面,让人们能够在去中心化协议的协调下相互竞争,以便我们不再成为这个枢纽,而是让协议成为这个枢纽。结果证明,我们的想法是正确的。现在每个人都在建立 Proof 市场,我们猜对了方向。
BlockBeats:在你们构建 Proof 市场时,有没有考虑过它与你们已经构建的 zkLLVM 之间的动态关系?
Misha:起初这两个项目实际上是分离的,它们是两个独立的事物。例如,我们只是需要构建电路的工具链,因为我们不会手动构建它,这太大了。然后我们发现其他人也需要这个工具链,所以我们决定开源它,让大家都能使用。
而 Proof 市场也是一个分离的事物,因为我们认为它只是一个证明生成市场。我们甚至没有想过人们会尝试用证明进行投机。他们实际上是在尝试低买高卖之类的东西,这相当荒谬,因为它本不应该是这样的,但无论如何,这就是事实。
支持 Proof 市场的协议必须是一个非常特殊的协议,因为我们需要大量的验证,需要处理大量关于这方面的负载。当人们带着需要验证的数据来时,我们需要处理大量的数据,因为他们会将数据加载到 Proof 市场的订单中,这使得协议变得非常数据密集,比如描述平均状态证明的数据量。曾经一个精心完成的平均状态证明描述需要占用大约 2GB 的数据,试着找一个可以处理 2GB 数据的协议。这几乎是不可能的。
但后来,人们开始使用 zkLLVM 证明一些非常庞大的东西,与人们在 Solidity 中做的事情相比,像 Ross 和 C++这样的代码库算是非常庞大。所以我们把它们放在一起,让它们相互关联,然后作为一个可用的服务。我们仍然认为编译器在效率方面表现得相当好,希望能保持这种状况。
BlockBeats:目前来说,Proof 市场的主要用户群体和参与者都有哪些?
Misha:第一类用户主要是 zkBridge,一些共识证明、状态证明生成起来相当繁重。如果你像构建以太坊的共识证明一样生成正确、安全的验证,例如用完整的以太坊共识验证,还有所有的 10 万节点签名验证器验证,会花费你一段时间去生成。
第二类是 zk 预言机,比如那些需要访问以太坊历史数据的应用,或者以某种特定方式处理以太坊数据,然后将其与 EVM 一起使用。有些应用试图用这种方式减少他们的 gas 成本,比如借贷协议试图将其抵押品资产的风险参数计算和加载到 EVM 中,但在成本上她们无法在 EVM 中计算。
他们从不同的交易平台,从不同的指数中获取所有必要的以太坊数据,将其放入 EVM 中,然后将其作为一组风险参数用于抵押品。这就像是另一种 Lido 的预言机,展示了协议如何通过外包一系列计算(比如仅仅是 Proof 市场和 zkLLVM 中的安全性)来提高其安全性和降低执行成本。毫无疑问零知识预言机非常重要。
第三类是 Rollup,目前已经存在的 Rollup 或者新建的 Rollup 都可以使用这个技术,甚至有些已经在尝试这样。所有打算成为 Rollup 验证者的人会带着在 Proof 市场实现某种证明的愿望来。对于验证者来说,处理专门的硬件和在租用的 AWS 服务器上运行节点非常具有挑战性。事实上 AWS 目前还没有提供 ATX,也没有提供非常强大的 GPU,所以基本上验证者会带着这些 zkLLVM 用例来。很明显,我们已经有了一些 zkLLVM 用例,但我必须承认,它们还没有投入生产。
对于大模型或者非常复杂的模型,zkLLVM 用例也非常适用,因为它们需要证明自己手头的模型复杂度。这也是目前正在进行的事情,但是再次强调目前还没有投入生产,只是处于实验阶段。一旦投入生产,我们就能够将 Proof 市场变成一个可证明的 AI 计算市场,这听起来很荒谬。
BlockBeats:如果我想成为 Proof 市场上的证明生成者,需要具备哪些条件?
Misha:成为证明生成者其实并没有太多的要求或限制,这完全取决于你想证明的特定电路和特定声明。我们专门设置了一个称之为「Proof 市场工具链」的东西,证明者在处理市场上的各种证明时,只需要把它作为一个服务启动,或者把它作为一个在你的机器上运行的后台进程。
如果市场上没有针对特定声明、特定电路、特定应用、特定证明的更好硬件供应,那么你就可以接到订单并生成证明。如果你拥有最好的硬件,如果你能做出最快生成证明的承诺,并且没有其他更好的竞争者,你就可以接下订单,生成证明并获得奖励。
BlockBeats:所有使用=nil; Foundation 的用户都需要注册一个账户,如果生成的证明本身或者其交易及所有权信息都存储在私人服务器上,会不会引入一些中心化问题?
Misha:这正是我们计划在年底前解决的问题。是的,目前市场证明并没有那么去中心化,我们还没有发布支持它的协议节点,也没有在公共场合谈论过这个协议。目前的运作方式如下:有几位也参与 Lido 并担任验证者和验证者运营商的人作为验证者,我们可以暂时托管它,看看情况如何。然后我们将源代码分发给他们,实际上有六到八个作为测试模式在运行。
目前,该系统在某种程度上是去中心化的,但它还不是公开的,也没有真正实现去中心化。并不是每个人都可以加入并运行他们的 Proof Market 节点。这对我们来说也是一个问题,我们喜欢那些向我们询问关于安全性、去中心化程度的应用程序,他们问我们是否可以依赖它?这是我们目前可以使用的吗?我回答说,是的,你可以,但它还不够去中心化,因为我们正在以测试模式运行它。我们将努力解决这个问题,这也是我们目前最重要的任务。
BlockBeats:你们采取了哪些措施来解决这些问题?
Misha:首先,我们设计了一个基于去中心化协议的市场证明(proof of market),一开始就使用了某个去中心化协议。我们讨论了几种部署和运行的方案,我们尝试直接将其部署在以太坊上,但在计算经济可行性时,发现如果这样做每年需要支付大约 25 亿美元的以太坊费用。因此在以太坊上运行市场证明从财务上根本不可行。
接着,我们尝试将其运行在 Rollup 之类的技术上。然而尽管我们尝试了几种不同的 Rollups,成本仍然高昂。当我们计算运行市场证明并进行套利所需的费用时,发现每年仅市场证明方面就需要支付 2.5 亿美元的费用,这也是相当高的成本。因此,我们不得不提出了自己的协议,它可以处理负载、成本、数据密集型等问题。
我们的目标是让这个协议尽可能接近以太坊的安全性,因为没有其他方式可以让应用依赖于此。事实证明,这种协议对于序列化等操作也非常有用,因为在进行序列化时,需要处理的负载基本相同。人们希望减少排序器和证明者之间的延迟,以便他们能够立即将数据发送给证明者,从而赢得区块。
如何将排序器部署在这个协议之上,这也是我们当前的主要关注点之一,我们希望建立一个可以供第三方开发者使用的平台,让任何人都能启动和运行支持此协议的节点。并且确保市场证明应用在代码部署方面与以太坊一样安全。
BlockBeats:能否分享更多关于协议的激励机制呢?
Misha:我们当然更倾向于用各种代币来支付证明,所以我们不能强迫每个人去使用特定的代币,这意味着我们必须尽可能地对代币保持中立,就像我们对任何产品和应用程序保持中立一样。例如,它很可能类似于 Arbitrum 与以太坊的运作方式,你可以拥有以太坊和 Arbitrum,为什么不呢?
朝着这个方向迈出的第一步无疑是 EVM 端点批准市场,我们前几天已经部署了它。这是使所有以太坊部署的资产在 Proof 市场中用作激励批准者或用于那些愿意在 Proof 市场上支付自己代币的应用程序的支付解决方案,这就是朝着这个方向迈出的第一步。
既然是市场,就一定会有人无法预测和掌控的多变性和复杂性。人们是否会针对 ZK 证明进行投机,怎样投机,这都是团队需要监控和记录的重要数据。经过几个月的实测后,Proof 市场都出现了什么有趣的现象?团队未来还有什么计划?
BlockBeats:引入市场机制是否会延长证明生成过程的时间?
Misha:拍卖或者说是找到最适合这项工作的出价者,确实需要一些时间,可能不是我们这边的几秒钟,而是几个瞬间。通常来说,这个过程需要几个瞬间,大多数情况下是不到一秒。在我看来,供求关系相当丰富,所以这确实会引入一些不到一秒的延迟。
即使是不到一秒的延迟,在最糟糕的情况下,我见过的最糟糕情况是,应用程序在三到四秒钟内无法找到一个供应商。但即使是这样,这个延迟与证明生成时间总体上也是无法相比的。所以,我认为与市场动态所带来的群体生成优势相比,这不是一个值得担忧的问题。
BlockBeats:如果有人想通过生成的证明进行投机,这是一件好事还是坏事?团队会不会对此作出一定的干预?
Misha:我们的网站上发生了很多奇怪的事情,刚才提到的这个事情并不是最奇怪的一个,在 Proof 市场上,甚至还有更奇怪的事情发生,但让我们先谈谈投机的问题。我们没有对此进行任何控制,因为我们无法控制。一旦我们把这个项目推向公众,一旦我们使这个协议对每个人都可用,让每个人都可以每周运行一次,或许是作为一个 rollup,或者其他方式,我们将不再能够控制这一切。
我们现在努力不去干涉,不去尝试做些什么,因为在某个时候我们将无法再这样做了,那么这有什么意义呢?所以让我们投机吧。人们可以构建一个类似电路的应用,像一个可以证明的应用,基本上就是这样,所以投机甚至是可行的。除了在 Proof 市场上进行投机之外,没有其他用途。
我看到的最奇怪的一个用例之一是,某人试图为计算能力进行期货交易,然后用这些期货进行投机的讨论。这就像比特币的哈希率期货,但对于 zk 证明来说也是一样的。你是否曾经想过 MEV?如果我告诉你,实际上还有一个证明者可提取价值(Prover Extract Value, PEV)呢?
它的工作原理不像应用程序带来了一些数据,然后某些东西需要一个证明,证明者们来完成它。他们带来数据,开始生成证明,一切都按照预期进行。但与此同时,如果一个证明者试图在这些数据上赚取更多利润或类似的行为。他们会在其他地方使用这些数据,例如在以太坊或其他协议,甚至是一些 Rollup 上。
他们这样做的目的是尽可能地从这些数据中提取价值,而不是将其用于生成证明。还有其他不同类型的可提取价值证明,例如人们试图预测证明何时会生成,然后将购买或出售证明的交易注入到 Proof 市场协议中,通过逆向工程 API 并尝试在其中注入交易。这样证明者就能出售,或者买家就能猜测价格以从中获取价值,就像闪电矿工,或着构建者和提议者在以太坊中进行交易投机时一样。
有些人已经开始尝试如何防止证明者在生成证明时利用他们获得的数据。为了做到这一点,唯一的方法就是在 FHE(同态加密)数据上生成证明。他们试图制作类似于 zkFHE 这样的东西,为了隐藏证明生成所需的数据,但 FHE 非常耗费计算能力,所以这增加了证明的成本。
就像把它发送到天上一样,这样会使证明成本增加两倍、三倍甚至十倍。但他们会说,没有人利用我的数据,没有人从我的数据中提取任何东西。所以,zkFHE 将会从 Proof 市场中诞生,这是一个独立的复杂层次,就像是高高在上的复杂性。
BlockBeats:目前 Proof 市场兼容 ZKLLVM 和 Mina,我想知道未来这个 Proof 市场如何为不同电路生成证明?
Misha:简单来说其过程如下:一个应用带着一个需要证明的声明,这个声明被编译成字节码或虚拟机,为 Proof Market 提供动力,这个虚拟机就是 EVM。然后它们带着这个需求来到这里,说我需要证明这个声明。Proof Market 是无需许可的,然后一个新的电路对会被部署,这就是一个新的电路对产生的方式,每个新电路都是一个新的交易对。
当证明者看到某个特定的新声明有需求时,这个新声明可能是突然出现的,可能是持续的需求,也可能是一次性的大需求,或者是一次性的但仍然有趣的需求。证明者可以说,好的,我想把这个电路添加到我关注的电路列表中,我想为这个电路生成证明。然后 Proof Market 会进行相应的更改,生成并提交证明。我们正在努力改进让这个过程尽可能简洁。
BlockBeats:那针对不同的证明系统又是如何实现的呢?
Misha:这是一个更有趣的故事,对于不同的证明系统连接到 Proof 市场的要求基本上只有一个,就是让这个证明系统的验证器编译成 EVM 字节码。因为是 EVM 为 Proof 市场提供动力,所以验证器要编译成 EVM。它可能是用 Solidity 编写的,也可能是用 Rust 或 C++编写的。
如果它是用 Solidity 编写的,只需部署它就可以了;而如果它是用 Rust 或 C++编写的,我们将利用 zkLLVM 提供一个从 Rust 和 C++编译验证器的工具链,以便将 zkLLVM 作为从主流语言到 EVM 的编译器,这会可以从 Rust、C++或其他语言生成验证器,并将它们部署到 Proof 市场。一旦部署,Proof 市场就支持了新的证明系统验证。在这种程度上,它是无需许可的。
BlockBeats:我记得你曾在一场圆桌讨论上说过关于 Rollup 的去中心化进程,=nil; Foundation 的路径与大部分 Rollup 相反,是先构建证明生成网络,再对排序器进行去中心化。那么现在,=nil; Foundation 的 Proof 市场是否有机会成为这些 Rollup 项目的去中心化解决方案呢?
Misha:我记得是在 Denver,当时我们从不同的方向出发讨论市场策略,很多人开发了许多内部需要零知识证明、证明系统和大量证明的应用程序,然后他们遇到了这样的问题:我们已经开发了产品,但它还不够完善,因为它没有实现去中心化,证明也没有实现去中心化,但我们没有足够的证明能力,所以陷入了困境。
人们已经开发了产品,但他们感觉像是被困住了。在我们这边,我们已经为解决这些问题构建了一套技术栈,我们可以改进市场服务,将其纳入价值链中,实现去中心化和证明的去中心化,为 roll-ups 提供支持。它的工作原理是那些 roll-ups 的验证者,需要从某个地方获得证明,他们本身也应该是证明者。
有些情况下验证者可能不愿意、没有能力或者由于其他原无法配置自己的硬件、GPU、ASIC 等,当你只有资本而没有基础设施时,你需要从某个地方获得证明,这时,Proof Market 就大显神通了,它为那些有资本但没有基础设施或者不想拥有基础设施的人提供证明。
第二点是我提到我们从不同方向出发的原因,我们从决策的角度着手改进它们。像第三方团队这样的人正在尝试在我们的基础上添加去中心化排序器,也许有人会在整个系统的顶部加上一个 roll-up,到那时技术栈就会完成,整个系统就会实现完善。
BlockBeats:最后,Misha 能否透露=nil; Foundation 在今年的路线图中最重要的事情是什么?
Misha:我们主要有两大方向。第一个方向是可验证的应用,我们必须让这些用例公之于众,让更多人知道它们。其中一些已经为人所知,有些还不太为人所知,有些甚至还没有启用,例如我们的 zkLLVM 用例需要一个专门为 zkLLVM 应用构建的前端。这将使 Drupal 和 zkLLVM 对于 zkLLVM 用例和所有这些事情变得有用。
另一个例子是我们希望帮助那些在我们基础上进行开发的人完成他们的项目,这将会是关于 zk 游戏的一些有趣的事情。你是否想过在以太坊上玩 3D 第三人称射击游戏,目前还不可行,但它将变得可行,这就是为 Proof 市场和 zkLLVM 启用新用例的方式。有时候是奇特的,有时候是有趣的,有时候是真正有用的。
第二个大方向,我们必须让这个协议去中心化、让任何人都能访问,这将使我们能够实现去中心化的排序器用例,使每个人都能访问协议、尝试实验、在其基础上构建一些东西。我们会看看情况如何发展,但我们希望它能够成功。因为我们为 Proof 市场构建的协议,目前市场上没有类似的东西。
也许除了解决实际问题之外,还会因为第三方开发者可以使用它而变得有趣,因为他们可以尝试一些在其他地方无法实现的功能。所以这就是我们的两个大方向:确保安全,实现去中心化。
欢迎加入律动 BlockBeats 官方社群:
Telegram 订阅群:https://t.me/theblockbeats
Telegram 交流群:https://t.me/BlockBeats_App
Twitter 官方账号:https://twitter.com/BlockBeatsAsia