Expand description
Driver interface
Structs§
- Aes128
CbcImpl Decrypt Context - Opaque storage for the decryptor’s key schedule and chaining state.
- Aes128
CbcImpl Encrypt Context - Opaque storage for the encryptor’s key schedule and chaining state.
- Aes128
CcmImpl Context - Opaque storage for the implementation’s key schedule.
- Aes128
Cmac Impl Context - Opaque storage for the implementation’s CMAC state.
- Aes128
CtrImpl Context - Opaque storage for the key schedule, counter and partial keystream.
- Aes128
EcbImpl Context - Opaque storage for the implementation’s key schedule.
- Aes128
GcmImpl Context - Opaque storage for the implementation’s key schedule.
- Aes256
CbcImpl Decrypt Context - Opaque storage for the decryptor’s key schedule and chaining state.
- Aes256
CbcImpl Encrypt Context - Opaque storage for the encryptor’s key schedule and chaining state.
- Aes256
CcmImpl Context - Opaque storage for the implementation’s key schedule.
- Aes256
Cmac Impl Context - Opaque storage for the implementation’s CMAC state.
- Aes256
CtrImpl Context - Opaque storage for the key schedule, counter and partial keystream.
- Aes256
EcbImpl Context - Opaque storage for the implementation’s key schedule.
- Aes256
GcmImpl Context - Opaque storage for the implementation’s key schedule.
- Ed25519
Public Key - Ed25519 public key: a compressed edwards25519 point, 32 bytes little-endian (RFC 8032 section 5.1.2).
- Ed25519
Secret Key - Ed25519 private key: the 32-byte seed of RFC 8032 section 5.1.5.
- Ed25519
Signature - Ed25519 signature:
R || S, a compressed point and a little-endian scalar (RFC 8032 section 5.1.6). - Hmac
Sha1 Impl Context - Opaque storage for the implementation’s MAC state.
- Hmac
Sha224 Impl Context - Opaque storage for the implementation’s MAC state.
- Hmac
Sha256 Impl Context - Opaque storage for the implementation’s MAC state.
- Hmac
Sha384 Impl Context - Opaque storage for the implementation’s MAC state.
- Hmac
Sha512 Impl Context - Opaque storage for the implementation’s MAC state.
- Hmac
Sha512_ 224Impl Context - Opaque storage for the implementation’s MAC state.
- Hmac
Sha512_ 256Impl Context - Opaque storage for the implementation’s MAC state.
- InOut
Buf - A buffer that is read from and written to, which may or may not alias.
- Md5Impl
Context - Opaque storage for the implementation’s hash state.
- NotEqual
Error - Error returned when a pair of input/output slices have unequal lengths.
- P256
Arith Impl Point - Opaque storage for the implementation’s point representation.
- P256
Point - P-256 (secp256r1) point in affine coordinates:
xandyas32big-endian bytes each. - P256
Scalar - P-256 (secp256r1) scalar: an integer modulo the curve order
n, as32big-endian bytes. - P256
Signature - ECDSA/P-256 (secp256r1) signature: canonical
(r, s), each in[1, n). - P384
Arith Impl Point - Opaque storage for the implementation’s point representation.
- P384
Point - P-384 (secp384r1) point in affine coordinates:
xandyas48big-endian bytes each. - P384
Scalar - P-384 (secp384r1) scalar: an integer modulo the curve order
n, as48big-endian bytes. - P384
Signature - ECDSA/P-384 (secp384r1) signature: canonical
(r, s), each in[1, n). - Sha1
Impl Context - Opaque storage for the implementation’s hash state.
- Sha224
Impl Context - Opaque storage for the implementation’s hash state.
- Sha256
Impl Context - Opaque storage for the implementation’s hash state.
- Sha384
Impl Context - Opaque storage for the implementation’s hash state.
- Sha512
Impl Context - Opaque storage for the implementation’s hash state.
- Sha512_
224Impl Context - Opaque storage for the implementation’s hash state.
- Sha512_
256Impl Context - Opaque storage for the implementation’s hash state.
- X25519
Public Key - X25519 public key: a 32-byte Curve25519 u-coordinate, little-endian (RFC 7748).
- X25519
Secret Key - X25519 private key: a 32-byte Curve25519 scalar, little-endian (RFC 7748).
Enums§
- Error
- Error type for crypto operations.
Traits§
- Aes128
Cbc - AES-128 CBC mode driver.
- Aes128
Ccm - AES-128 CCM driver.
- Aes128
Cmac - AES-128 CMAC driver (NIST SP 800-38B).
- Aes128
Ctr - AES-128 CTR mode driver.
- Aes128
Ecb - AES-128 block cipher (ECB) driver.
- Aes128
Gcm - AES-128 GCM driver.
- Aes256
Cbc - AES-256 CBC mode driver.
- Aes256
Ccm - AES-256 CCM driver.
- Aes256
Cmac - AES-256 CMAC driver (NIST SP 800-38B).
- Aes256
Ctr - AES-256 CTR mode driver.
- Aes256
Ecb - AES-256 block cipher (ECB) driver.
- Aes256
Gcm - AES-256 GCM driver.
- Ed25519
- Ed25519 (EdDSA over edwards25519, RFC 8032) driver.
- Hmac
Sha1 - HMAC-SHA-1 driver.
- Hmac
Sha224 - HMAC-SHA-224 driver.
- Hmac
Sha256 - HMAC-SHA-256 driver.
- Hmac
Sha384 - HMAC-SHA-384 driver.
- Hmac
Sha512 - HMAC-SHA-512 driver.
- Hmac
Sha512_ 224 - HMAC-SHA-512/224 driver.
- Hmac
Sha512_ 256 - HMAC-SHA-512/256 driver.
- Md5
- MD5 driver.
- P256
Arith - P-256 (secp256r1) scalar and point arithmetic driver.
- P256
Ecdh - P-256 (secp256r1) ECDH driver.
- P256
Ecdsa - ECDSA/P-256 (secp256r1) driver, over pre-hashed messages.
- P384
Arith - P-384 (secp384r1) scalar and point arithmetic driver.
- P384
Ecdh - P-384 (secp384r1) ECDH driver.
- P384
Ecdsa - ECDSA/P-384 (secp384r1) driver, over pre-hashed messages.
- Rng
- Source of cryptographically secure random bytes.
- Sha1
- SHA-1 driver.
- Sha224
- SHA-224 driver.
- Sha256
- SHA-256 driver.
- Sha384
- SHA-384 driver.
- Sha512
- SHA-512 driver.
- Sha512_
224 - SHA-512/224 driver.
- Sha512_
256 - SHA-512/256 driver.
- X25519
- X25519 (Curve25519 ECDH, RFC 7748) driver.