Module openssl::envelope [−][src]
Envelope encryption.
Example
use openssl::rsa::Rsa; use openssl::envelope::Seal; use openssl::pkey::PKey; use openssl::symm::Cipher; let rsa = Rsa::generate(2048).unwrap(); let key = PKey::from_rsa(rsa).unwrap(); let cipher = Cipher::aes_256_cbc(); let mut seal = Seal::new(cipher, &[key]).unwrap(); let secret = b"My secret message"; let mut encrypted = vec![0; secret.len() + cipher.block_size()]; let mut enc_len = seal.update(secret, &mut encrypted).unwrap(); enc_len += seal.finalize(&mut encrypted[enc_len..]).unwrap(); encrypted.truncate(enc_len);
Structs
Open | Represents an EVP_Open context. |
Seal | Represents an EVP_Seal context. |