使用旧的 Rust 2015
0.4.0 |
|
---|---|
0.3.5 |
|
0.3.0 |
|
0.2.6 |
|
#21 in #sha-512
1.5MB
2K SLoC
crypto_proto
欢迎来到我的 crypto_proto
-库 🎉
这个库是什么
此库为密码原语和一些基于它们的高级原语提供了一些抽象。底层实现由 libsodium 提供。
实现以下特性和算法
Cipher
/AeadCipher
: ChaCha20 IETF, ChaCha20Poly1305 IETF, AES-GCMCipherStream
: NoiseSocket (仅对称加密有效负载) (使用 AES-GCM 或 ChaCha20Poly1305)Hash
: SHA-256, SHA-512, Blake2bKdf
: HKDF Extract & Expand (使用 HMAC-SHA-256 或 HMAC-SHA-512)Mac
: HMAC (使用 SHA-256 或 SHA-512), Poly1305Pbkdf
: Argon2i v1.3, Argon2id v1.3
大多数算法可以通过自定义功能集独立禁用(请参阅 Cargo.toml
)。
依赖项
libsodium 用于密码算法,pkg-config 用于查找 libsodium 以及我的 etrace
-crate 用于错误处理。
构建文档和库
要构建和打开文档,请进入项目的根目录并运行 cargo doc --release --open
要构建此库,请切换到项目的根目录并运行 cargo build --release
;您可以在 target/release
中找到构建结果。
您还应该始终使用 cargo test
运行测试。使用 cargo test -- --ignored
也可以运行昂贵的测试。