pub unsafe extern "C" fn ocrypto_aes_gcm_encrypt(
    ct: *mut u8,
    tag: *mut u8,
    tag_len: usize,
    pt: *const u8,
    pt_len: usize,
    key: *const u8,
    size: usize,
    iv: *const u8,
    aa: *const u8,
    aa_len: usize
)
Expand description

AES-GCM encryption.

  • ct - Ciphertext.
  • tag - Authentication tag.
  • tag_len - Authentication tag length, 0 < * tag_len - <= 16.
  • pt - Plaintext.
  • pt_len - Plaintext length, 0 < * ct_len - < 2^36-32 bytes.
  • key - AES key.
  • size - Key size (16, 24, or 32 bytes).
  • iv - Initial vector.
  • aa - Additional authentication data.
  • aa_len - Additional authentication data length, 0 < * aa_len - < 2^61 bytes.

@remark * ct - may be same as * pt - .