6 个版本
0.16.25 | 2023年6月12日 |
---|---|
0.16.24 | 2023年6月12日 |
#2423 在 密码学
每月23 次下载
5MB
130K SLoC
包含(静态库,140KB)wasm-libs/libring_core_dev_.a,(静态库,4KB)wasm-libs/libring_core_dev_test.a
这是 ring
包,支持 wasm32-wasi
和 wasm32-wasix
目标。
不需要 C 编译器;相关代码已使用 Zig 0.11 预编译。
有关 Ring 的更多信息,请参阅 https://github.com/briansmith/ring。
lib.rs
:
使用 BoringSSL 的密码学原语在 Rust 中实现安全、快速、小巧的密码学。
特性标志
特性 | 描述 |
---|---|
alloc(默认)
| 启用需要使用堆的特性,特别是 RSA。 |
dev_urandom_fallback(默认)
| 此特性仅适用于 Linux。在 Linux 上,默认情况下,如果运行时不支持 ring::rand::SystemRandom 系统调用,则 ring::rand::SystemRandom 将回退到从 /dev/urandom 读取。当禁用 dev_urandom_fallback 特性时,不会发生此类回退。有关更多详细信息,请参阅 rand::SystemRandom 的文档。 |
std
| 启用使用 libstd 的特性,特别是 std::error::Error 集成。隐含 `alloc`。 |
wasm32_c
| 启用在wasm32目标上需要C编译器的功能,例如constant_time 模块、HMAC验证和PBKDF2验证。没有此功能,仅向wasm32目标提供功能子集,因此不需要C编译器。典型的调用方式为:TARGET_CC=clang-10 TARGET_AR=llvm-ar-10 cargo test --target=wasm32-unknown-unknown --features=wasm32_c ,使用llvm-ar-10 和clang-10 在$PATH 中。 (将来,应默认启用更多功能,而无需这些技巧,也不需要C编译器。) |