#零知识 #aleo #区块链 #zk #操作系统 #去中心化 #密码学

已删除 snarkos-polycommit

一个用于构建zkSNARKs中多项式承诺方案的库

1.1.4 2020年8月27日
1.0.0 2020年8月20日

#80#操作系统


用于 4 个crate(2个直接)

GPL-3.0 许可证

1.5MB
29K SLoC

snarkos-polycommit

Crates.io Authors License

snarkos-polycommit 是一个Rust库,实现了(单变量)多项式承诺方案。该库最初是作为Marlin论文的一部分开发的。

概述

(单变量)多项式承诺方案是一种密码学原语,它允许一方将一个单变量多项式进行承诺,然后在以后,可以公开多项式在特定点的值,并附带证明其正确性的加密证明。

该库提供了多项式承诺方案的各种构造。这些构造支持同时承诺多个具有不同度数界限的多项式,将多个相同评估点的评估证明批量合并为一个,并对证明进行批量验证。

多项式承诺方案满足的关键属性包括 简洁性可提取性隐藏性。有关这些属性的详细定义,请参阅Marlin论文

性能分析

该库配备了性能分析基础设施,可以打印执行时间的详细跟踪。要启用此功能,请使用以下命令编译:cargo build --features print-trace

参考论文

多项式承诺
Aniket Kate, Gregory M. Zaverucha, Ian Goldberg
ASIACRYPT 2010

Sonic: Zero-Knowledge SNARKs from Linear-Size Universal and Updateable Structured Reference Strings
Mary Maller, Sean Bowe, Markulf Kohlweiss, Sarah Meiklejohn
CCS 2019

aurora-light:在类似Sonic的系统中的改进证明效率和SRS大小
Ariel Gabizon
ePrint,2019

Marlin:使用通用和可更新SRS预处理zkSNARKs
Alessandro Chiesa,Yuncong Hu,Mary Maller,Pratyush Mishra,Noah Vesely,Nicholas Ward
EUROCRYPT 2020

从累积方案中提取带证明的数据
Benedikt Bünz,Alessandro Chiesa,Pratyush Mishra,Nicholas Spooner
ePrint,2020

依赖关系

~5.5MB
~111K SLoC