decryptDirect method

Uint8List decryptDirect({
  1. required KeyAlgorithm encryptionAlgorithm,
  2. required Key recipientKey,
  3. required Key ephemeralKey,
  4. required Key senderKey,
  5. required Uint8List ciphertext,
  6. required Uint8List nonce,
  7. required Uint8List tag,
  8. Uint8List? aad,
})

Decrypts a message directly using the derived key.

Returns a Uint8List containing the decrypted message.

Implementation

Uint8List decryptDirect({
  required KeyAlgorithm encryptionAlgorithm,
  required Key recipientKey,
  required Key ephemeralKey,
  required Key senderKey,
  required Uint8List ciphertext,
  required Uint8List nonce,
  required Uint8List tag,
  Uint8List? aad,
}) {
  final derived = deriveKey(
    encryptionAlgorithm: encryptionAlgorithm,
    ephemeralKey: ephemeralKey,
    recipientKey: recipientKey,
    senderKey: senderKey,
    receive: true,
  );
  final decryptedBuffer = derived.aeadDecrypt(
    tag: tag,
    nonce: nonce,
    ciphertext: ciphertext,
    aad: aad,
  );
  derived.handle.free();
  return decryptedBuffer;
}