14 个版本

0.0.22 2023 年 11 月 5 日
0.0.21 2023 年 10 月 5 日
0.0.20 2023 年 9 月 28 日
0.0.12 2023 年 8 月 22 日
0.0.11 2023 年 7 月 31 日

#2875 in 神奇豆

Download history 87/week @ 2024-04-12 85/week @ 2024-04-19 359/week @ 2024-04-26 74/week @ 2024-05-03 48/week @ 2024-05-10 49/week @ 2024-05-17 47/week @ 2024-05-24 49/week @ 2024-05-31 29/week @ 2024-06-07 53/week @ 2024-06-14 51/week @ 2024-06-21 118/week @ 2024-06-28 11/week @ 2024-07-05 42/week @ 2024-07-12 59/week @ 2024-07-19 55/week @ 2024-07-26

254 每月下载量
8 crates 中使用

Apache-2.0

180KB
4.5K SLoC

ZkStd

CI crates.io badge Documentation GitHub license codecov dependency status

此 crate 提供了基本加密实现,如 FieldCurvePairingFftKzg,同时支持完全 无 stdparity-scale-codec

设计

由于计算成本会影响用户的等待时间和链上燃气成本,密码学库需要易于应用优化。我们从这个角度设计了此库。

  • 用最新算法替换的简单性
  • 通过避免重复来缩短代码长度

我们将算术运算和接口分开。算术运算是具体逻辑,如椭圆曲线加法等,接口是支持 trait 密码学原语的接口。我们将它们与宏结合起来。通过这种设计,我们可以保持有限域和椭圆曲线实现简单。

目录结构

  • arithmetic:肢体、点和位操作的算术运算。
  • behave:密码学组件的接口,如 Fft FieldPairing Field 等。
  • dress:用于实现的宏,负责将 arithmeticbehave 结合起来。

依赖关系

~2.5–3.5MB
~70K SLoC