自研究人员沙菲·戈德瓦瑟、西尔维奥·米卡利和查尔斯·拉克夫在20世纪80年代首次提出零知识证明以来,零知识(ZK)技术的发展发生了重大变化。如今,这些开创性的加密技术有可能彻底改变各个领域的隐私、安全和信任;可能尤其是在去中心化系统和应用程序方面。
ZK 应用程序中的基本加密组件:
证明者知道秘密信息并希望在不透露实际信息的情况下证明自己拥有某些知识的实体。
验证器 验证证明者提供的证据的实体。验证者在不了解实际秘密的情况下确保证据正确无误。
零知识证明 (ZKP) 可以通过允许一方(证明者)向另一方(验证者)证明陈述是真实的,而无需透露除声明本身有效性之外的任何信息,从而处理各种隐私领域。
完整性 意味着,如果证明者能够宣称结果,他们可以出示验证者会接受的证据。
健全度 确保验证者仅在陈述属实时接受证据。换句话说,只有在可以提供导致计算结果的有效输入的情况下,验证器才会接受计算结果。
简洁 指证明的大小以及验证它们所需的时间和空间。
交互式和非交互式 zkP:
互动 ZKP 需要证明者和验证者之间进行多轮通信。
非交互式 ZKP 证明是在单轮通信中生成和发送的,通常使用 Fiat-Shamir 启发式方法。
为了加速 ZK 应用程序的增长,正在开发新的框架以支持额外的生产级功能。像 zkMips 这样的 zkVM 等高性能框架既展示了效率又具有巨大潜力,使开发人员能够创建各种现实世界的应用程序,包括企业级隐私解决方案。
ZK 不断发展,通过利用 zkVM、zkEVM 和 ZK 协处理器等特殊工具、库和基础架构,为开发人员提供了可访问、多功能且高度可编程的解决方案,用于构建不同类别的应用程序。
这些框架利用诸如ZKP之类的交互式证明系统来执行智能合约或其他计算任务,同时有可能保护隐私。
零知识虚拟机是可以运行其他程序的程序,作为 ZKP 系统的电路来实现。它们主要设计用于区块链和相关技术,以促进可验证的计算和安全的通信渠道,确保不同平台上数据的完整性和一致性。
ZKM 开发了一种名为 zk-MIPS 的 zkVM,能够在链上验证
“没有互锁流水线阶段的微处理器”(MIPS)程序在链下正确执行。具体而言,MIPS 是一种简约的微处理器架构,旨在简化。编写的任何更高级别的代码都会编译成一小组不同的指令,随时可以由 MIPS VM 执行。
由于 MIPS 架构非常简单,因此将高级代码转换为 MIPS 相对简单,而且由于大多数编程语言可以轻松编译为 MIPS,因此 zkMips 支持多种程序,使 zkMips 能够验证区块链交易、智能合约函数调用和汇总的正确性。
zkMIPS 具有多种潜在功能,例如:
协同处理:通过从主处理器卸载某些计算任务,将所有计算转换为适合使用 ZK 处理的不同格式。
可扩展性解决方案: zkMips 允许将多个交易捆绑成一笔交易,生成一个证明所有捆绑交易正确性的 ZKP。
互操作性: 通过生成一个区块链上的执行证明并在另一个区块链上进行验证,zkMIPS 为以完全安全和去中心化的方式创建可互操作的区块链环境提供了最佳的解决方案。
数据最小化: 这是一项旨在限制收集、处理和存储的个人数据量的原则。zkMIPS 有可能使用一种隐私增强技术,利用 zkPS 来最大限度地减少交易或互动期间共享或泄露的数据量。
开源对零知识扩展的好处
开源是入门零知识应用程序的熟练方式。
该非营利性开源计划制定了其他规定和标准,从而实现了适应性、跨平台集成、安全性、成本最小化和进一步创新。
ZKM的目标是成为一个完全开源的项目,专注于研究以推进可验证计算,使其能够利用其zkVM技术和强大的证明服务,提供完全集成的无缝区块链体验,从而创建完全去中心化和可信赖的互联网。