SNARK (Succinct Non-interactive Argument of Knowledge) 是知识证明的一种形式,即允许一个证明者(Prover)向一个验证者(Verifier)证明自己知道某个信息,而不需要向验证者透露这个信息的具体内容。
正如 SNARK 名称揭示的那样,SNARK 主要是三个关键特性:
简洁性(Succinctness):SNARK 生成的证明非常小(通常为几个KB)。并且验证者可以快速地验证证明。
非交互性(Non-interactive):传统的交互式证明系统需要证明者和验证者多次往返交换信息,而 SNARK 则只需要证明者生成一个证明并发送给验证者,验证者可以独立地验证这个证明。这个特性使得 SNARK 特别适用于分布式系统和区块链等场景。
知识论证(Argument of Knowledge):验证者可以确信证明者拥有特定的秘密信息,而不是在某些情况下蒙混过关。
SNARK 可以按前端 (Front End) 和后端 (Back End) 分成两个子模块。
前端(Front End):前端部分主要负责将原始计算问题(实践中常常以计算机程序的形式出现)转化为SNARK协议可以处理的形式(主要是算术电路和R1CS)。
后端(Back End):部分主要负责在前端生成的约束系统基础上生成和验证证明。这个过程涉及以下步骤:
证明生成(Prover):后端使用前端生成的算术电路/R1CS和证明者的秘密输入,生成一个简洁的证明(Proof)。证明者通过它向验证者证明他们确实执行了计算,并且计算结果是正确的。
验证(Verifier):验证者使用公共参数和证明来验证计算的正确性。后端确保验证过程非常高效,通常在几个毫秒内完成验证。验证者在验证时不需要知道证明者的输入,仅通过检查证明是否满足前端生成的算术电路/R1CS约束来确定其正确性。
前端(Front End)就是目前 Aleo 最新谜题指令集算法所计算的其中一部分,不是全部。
后端(Back End)就是根据最新的ARC43提案所要做的事情,重磅!Aleo的PoSW谜题算法将迎来重大调整!在现有谜题算法中引入后端,形成一个完整的 SNARK,将谜题算法计算结果(前端)变成证明(Proof),最终输出给验证者节点。
https://github.com/AleoNet/ARCs/discussions/77
形式化地,SNARK 后端可以描述成:给定一个原始计算问题,以算术电路形式表示成 C,证明者知道该问题的答案 W,使得 C(w) = 0。
Varuna SNARK 是 Aleo 目前使用的方案,是 Marlin 方案的改进版本。
在 Aleo 官方博客的审计文章也有体现:
https://aleo.org/post/aleo-completes-security-audits-of-snarkos-and-snarkvm/
Marlin 是一种可验证计算协议,利用 TEE 允许在去中心化云上部署复杂的工作负载(如 DeFi 策略、自动化任务或 AI 模型)。它允许使用智能合约调用和 web2 API 来租用实例或执行无服务器功能。因此,Marlin 可用作协处理器来扩展区块链应用程序。
https://docs.marlin.org/learn/
从上图可以看到 Marlin 属于 SNARK 的一个分支。
Varuna 和 Marlin 之间的主要区别在于,Marlin 的算术语言仅允许 R1CS,而 Varuna 可以同时支持 R1CS 和自定义门和查找(自定义约束查找参数),例如 Plonkish。这意味着在电路的算术表示中,Marlin 仅限于三个矩阵,而 Varuna 可以使用更多矩阵,从而提供更好的可扩展性。除了加法和乘法电路之外,Varuna 还可以支持各种类型的算术电路,并具有相应的不同构造方法,称为广义 R1CS。
在 SNARK 的基础上添加零知识 (ZK) 特性就成了零知识证明的一种形式,即 ZK-SNARK。
零知识(ZK)属性是一个附加的特性,当需要在证明过程中保护隐私时才是必需的。确保在证明计算正确性的过程中,验证者不会获得任何关于输入数据或计算过程的额外信息。因此,零知识属性与隐私保护直接相关。
因此,SNARK 本身就可以实现可验证计算,而不一定需要零知识特性;只有在我们需要保护隐私时,才会引入 ZK 属性,形成 ZK-SNARK。
ZKT Aleo ZPU 芯片机 ,现正式开启第一批头矿预售!
2024 年全球 ZK 峰会 Aleo-ASIC 最有竞争力品牌!
感兴趣请扫码联系,ZKT ASIC 仅对大客户和大渠道!
Aleo已正式对外更新流通量 Circulating Supply!
重点解析Aleo基金会执行董事Alex在“ZK硬件加速的未来”中的发言!
Aleo最新十年区块产出奖励模型推演(Testnet Beta)
Aleo主网倒计时 | Aleo最新Puzzle谜题算法深度解析!
重磅分析!以太坊真的会开倒车转回“PoW”么?还是会效仿Aleo模式?
Aleo主网倒计时 | Aleo Systems 公司 CEO Alex Pruden 卸任感言
重磅!Aleo初始经济模型重大更新!主网上线时间是否有变化?
ALEO 问答集锦 | 关于质押者、证明者和验证者官方最新解答
ALEO 问答集锦 | Aleo积分到底有什么用?区块奖励重大变化?