Skip to main content

Crate pkcs5

Crate pkcs5 

Source
Expand description

§RustCrypto: PKCS#5

crate Docs Build Status Apache2/MIT licensed Rust Version Project Chat

Pure Rust implementation of Public-Key Cryptography Standards (PKCS) #5: Password-Based Cryptography Specification Version 2.1 (RFC 8018).

Documentation

§About

PKCS#5 is a standard for deriving cryptographic keys from a password using a variety of supported algorithms, and then encrypting/decrypting data (e.g. PKCS#8 private keys) using that derived key.

This crate supports deriving keys from passwords using either the scrypt or pbkdf2 algorithms.

§Minimum Supported Rust Version (MSRV) Policy

MSRV increases are not considered breaking changes and can happen in patch releases.

The crate MSRV accounts for all supported targets and crate feature combinations, excluding explicitly unstable features.

§License

Licensed under either of:

at your option.

§Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

§Usage

The main API for this crate is the EncryptionScheme enum, which impls the Decode and Encode traits from the der crate, and can be used for decoding/encoding PKCS#5 AlgorithmIdentifier fields.

The pbes2::Parameters struct can be used to generate new encryption parameters when encrypting new keys.

Re-exports§

pub use der;

Modules§

pbes1
Password-Based Encryption Scheme 1 as defined in RFC 8018 Section 6.1.
pbes2
Password-Based Encryption Scheme 2 as defined in RFC 8018 Section 6.2.

Structs§

ObjectIdentifier
Object identifier (OID).

Enums§

EncryptionScheme
Configuration for supported PKCS#5 password-based encryption schemes.
Error
Error type

Type Aliases§

AlgorithmIdentifierRef
AlgorithmIdentifier reference which has AnyRef parameters.
Result
Result type