- 零知识证明:即证明者(Prover)能够在不向验证者(Verifier)提供任何有用的信息的情况下,使验证者相信某个论断是正确的。
- 简洁的:指交易验证过程不涉及大量数据传输,且验证算法简单。
- 非交互的:证明者与验证者之间无需进行交互。
- 利用 Setup,使用随机数生成置信参数 F,生成证明密钥 pk 和验证密钥 v
- 证明者输入隐私输入 W 和公开输入 x,生成证明 π,并用私钥 pk 签名。π 通过椭圆曲线加密,隐藏了 W
- 验证者验证证明: 验证者持有 v,输入 x 和 π,确认证明者知道 W。验证者无法得知 W
- 结果返回: 如果验证成功,则返回 TRUE;否则返回 FALSE。


- 并行化和聚合:通过并行计算和证明聚合,提高验证大块区块的效率。每个计算步骤都可以进行独立证明,然后将这些证明进行聚合,减少验证过程中的计算时间和资源消耗。这可以通过利用并行计算和分布式系统的特性来实现,以加速大规模区块的验证过程。
- 硬件设计改进:设计专门用于 SNARK 计算的 ASIC,以提高计算效率。类似于挖矿中使用的 ASIC,SNARK ASIC 可以通过定制化的硬件结构和优化的算法来加速 SNARK 计算过程,从而实现更快的验证速度和更低的成本。
- 算法改进:进一步优化 snark 算法,包括 Groth 16、查找表、 64 位 snark、 32 位 stark 等,以提高算法的效率和可扩展性。此外,还可以研究开发更加高效的哈希函数和签名算法,使其更适合于 snark 的计算,进一步提高验证速度和资源利用率。