33次发布 (19次破坏)

0.23.0 2023年5月19日
0.22.1 2022年9月16日
0.22.0 2022年6月21日
0.21.0 2020年7月17日
0.7.1 2019年7月1日

#737 in 加密

Download history 3095/week @ 2024-03-14 2408/week @ 2024-03-21 1902/week @ 2024-03-28 2877/week @ 2024-04-04 2993/week @ 2024-04-11 2407/week @ 2024-04-18 1420/week @ 2024-04-25 1667/week @ 2024-05-02 1665/week @ 2024-05-09 1336/week @ 2024-05-16 1039/week @ 2024-05-23 1228/week @ 2024-05-30 1769/week @ 2024-06-06 1459/week @ 2024-06-13 1409/week @ 2024-06-20 866/week @ 2024-06-27

5,857 每月下载量
46 个crate中使用(直接使用11个)

BSD-3-Clause

255KB
5.5K SLoC

merkle

Build Status Issues License

merkle 是一个轻量级的Rust实现,用于默克尔树

功能

  • 外部依赖无关
  • std::hash::Hasher 兼容性
  • 标准类型哈希器实现
  • #[derive(Hashable)] 支持简单结构
  • 可定制的默克尔叶/节点哈希算法
  • 支持自定义哈希类型(例如 [u8; 16], [u64; 4], [u128; 2], 结构体)
  • 可定制的哈希算法
  • 线性内存布局,无堆节点
  • 可从迭代器、对象或哈希构建
  • 支持证书透明度风格的默克尔哈希
  • 包含SPV支持(通过证明类型)
  • 支持2的幂次方度数的默克尔树(仅限)
  • 支持复合默克尔树(一棵默克尔树的树)
  • 支持复合-复合默克尔树(复合默克尔树的树)

文档

文档在此处可用

示例

最相关的示例位于以下文件中

  • test_common.rs:自定义哈希示例 xor128,其他共享工具
  • test_xor128.rs:对库功能的全面测试
  • proof.rs:包含跨2的幂次方度数树的证明实现和测试

构建和测试

# Run tests in release mode
cargo test --release --all

# Run ignored tests in release mode
cargo test --release --all -- --ignored

错误报告

请将错误报告为拉取请求或问题跟踪器中的问题。 merkle 有一个 全面披露 的漏洞政策。 请勿试图将此代码中的任何安全漏洞私下报告给任何人。

许可证

查看LICENSE

依赖关系

~4–14MB
~173K SLoC