Crate ring[−][src]
Safe, fast, small crypto using Rust with BoringSSL’s cryptography primitives.
Feature Flags
Feature | Description |
---|---|
alloc (default)
| Enable features that require use of the heap, RSA in particular. |
dev_urandom_fallback (default)
| This is only applicable to Linux. On Linux, by default,
ring::rand::SystemRandom will fall back to reading
from /dev/urandom if the getrandom()
syscall isn't supported at runtime. When the
dev_urandom_fallback feature is disabled, such
fallbacks will not occur. See the documentation for
rand::SystemRandom for more details.
|
std
| Enable features that use libstd, in particular
std::error::Error integration. Implies `alloc`.
|
wasm32_c
| Enables features that require a C compiler on wasm32 targets, such as
the constant_time module, HMAC verification, and PBKDF2
verification. Without this feature, only a subset of functionality
is provided to wasm32 targets so that a C compiler isn't needed. A
typical invocation would be:
TARGET_CC=clang-10 TARGET_AR=llvm-ar-10 cargo test --target=wasm32-unknown-unknown --features=wasm32_c
with llvm-ar-10 and clang-10 in $PATH .
(Going forward more functionality should be enabled by default, without
requiring these hacks, and without requiring a C compiler.)
|
Modules
aead | Authenticated Encryption with Associated Data (AEAD). |
agreement | Key Agreement: ECDH, including X25519. |
constant_time | Constant-time operations. |
digest | SHA-2 and the legacy SHA-1 digest algorithm. |
error | Error reporting. |
hkdf | HMAC-based Extract-and-Expand Key Derivation Function. |
hmac | HMAC is specified in RFC 2104. |
io | Serialization and deserialization. |
pbkdf2 | PBKDF2 derivation and verification. |
pkcs8 | PKCS#8 is specified in RFC 5958. |
rand | Cryptographic pseudo-random number generation. |
signature | Public key signatures: signing and verification. |
test | Testing framework. |
Macros
test_file | References a test input file. |