Skip to main content

aead_encrypt

Function aead_encrypt 

Source
pub fn aead_encrypt(
    alg: AeadAlgorithm,
    params: &AeadParams<'_>,
    plaintext: &[u8],
) -> Result<Vec<u8>, AlgorithmError>
Expand description

Encrypt plaintext with the selected AEAD. Returns ciphertext || tag.

ยงExamples

use crypto_core::AeadAlgorithm;
use crypto_dispatch::{aead_decrypt, aead_encrypt, AeadParams};

let key = [0x42u8; 32];
let nonce = [0x24u8; 12];
let params = AeadParams { key: &key, nonce: &nonce, aad: b"context" };

let sealed = aead_encrypt(AeadAlgorithm::Aes256Gcm, &params, b"plaintext")?;
let opened = aead_decrypt(AeadAlgorithm::Aes256Gcm, &params, &sealed)?;
assert_eq!(opened.as_slice(), b"plaintext");