#sphinx #packet #coverage

sphinx-packet

Rust中的Sphinx数据包实现

3个不稳定版本

0.2.0 2024年5月20日
0.1.1 2024年5月21日
0.1.0 2023年2月22日

加密学类别中排名第178

Download history 7699/week @ 2024-05-03 7810/week @ 2024-05-10 8170/week @ 2024-05-17 7512/week @ 2024-05-24 662/week @ 2024-05-31 1655/week @ 2024-06-07 4826/week @ 2024-06-14 968/week @ 2024-06-21 1149/week @ 2024-06-28 801/week @ 2024-07-05 784/week @ 2024-07-12 1464/week @ 2024-07-19 1225/week @ 2024-07-26 1034/week @ 2024-08-02 746/week @ 2024-08-09 1098/week @ 2024-08-16

每月下载量4,507
3个crate(直接使用2个)中使用

Apache-2.0

155KB
3K SLoC

Sphinx

在Rust中实现的Sphinx数据包。

License Build Status codecov

先决条件

测试

cargo test将运行单元和集成测试。

代码覆盖率报告

如果您想了解代码覆盖率情况,请安装docker,然后运行位于./scripts/coverage_report.sh的代码覆盖率shell脚本。Docker将下载所有依赖(喝杯咖啡吧!),并在coverage/tarpaulin-report.html处输出HTML代码覆盖率报告。在浏览器中打开生成的文件以检查覆盖率。

单元+集成测试覆盖率目前远高于90%,请确保任何pull请求都保持良好的测试覆盖率。

基准测试

要运行基准测试,使用

cargo bench

Rust基准测试通过多次运行操作以提供一致的输出,并以每迭代纳秒数(一秒的万亿分之一)报告。 1000000000 / result为您提供每秒操作次数。

以下是在Dave的i7 Dell XPS-13(2018)笔记本电脑(我们的测试参考机:)上的输出,供以后参考。

test tests::bench_new     ... bench:     386.348 us/iter
test tests::bench_process ... bench:     157.322 us/iter
  • 1000000 / 386.348 = ~2588 每秒数据包创建次数
  • 1000000 / 157.322 = ~6356 每秒数据包解包次数

依赖项

~4–5.5MB
~104K SLoC