5个版本
新版本 0.1.4 | 2024年8月20日 |
---|---|
0.1.3 | 2024年1月24日 |
0.1.2 | 2024年1月22日 |
0.1.1 | 2024年1月20日 |
0.1.0 | 2024年1月18日 |
8 在 #zkp 中排名
每月 285 次下载
用于 2 crates
19KB
184 行
零知识证明算法实现 
如何使用此库?
TL;DR
cargo build
(应在examples/protos中生成编译后的protobuf文件。注意build.rs文件仅用于编译示例文件夹中的proto文件。)- 启动服务器:
cargo run --package chaum_pedersen_auth --example server
- 启动客户端:
cargo run --package chaum_pedersen_auth --example client
- 查看示例文件夹,其中实现了使用gRPC协议的客户端和服务器。
理论
资产
- Bob的资产:私钥:$x, k$
- Alice的资产:随机密钥 $c$
- 共享资产:生成器 $\alpha , \beta$。
注册
$\alpha^x \mod q$ , $\beta^x \mod q$
认证
Bob发送 $\alpha^k \mod q$ , $\beta^k \mod q$
- Bob计算:$s = k - cx$
- Alice验证:$\alpha^s (\alpha^x)^c \mod q$ , $\beta^s (\beta^x)^c\mod q$
使用
- 将以下crates放入Cargo工作空间
依赖关系
~0.7–1MB
~18K SLoC