Decrypt a message with a specified aad and split the result. Returns true if valid.

Synopsis

Declared in <crypto/chacha20poly1305.h>

bool
Decrypt(
    std::span<std::byte const> cipher,
    std::span<std::byte const> aad,
    std::span<std::byte> plain1,
    std::span<std::byte> plain2) noexcept;

Description

Requires cipher.size() = plain1.size() + plain2.size() + EXPANSION.

Return Value

true if the tag is valid and decryption succeeded, false otherwise.

Parameters

Name

Description

cipher

The ciphertext and authentication tag to decrypt and verify.

aad

The associated data to authenticate.

plain1

Output buffer receiving the first part of the recovered plaintext.

plain2

Output buffer receiving the second part of the recovered plaintext.

Created with MrDocs