Chacha20poly1305 functions. More...
Chacha20poly1305 functions.
Definition in file chacha20poly1305.h.
#include "crypto/poly1305.h"
Go to the source code of this file.
Data Structures | |
union | chacha20poly1305_ctx_t |
Chacha20poly1305 state struct. More... | |
Macros | |
#define | CHACHA20POLY1305_KEY_BYTES (32U) |
Key length in bytes. | |
#define | CHACHA20POLY1305_NONCE_BYTES (12U) |
Nonce length in bytes. | |
#define | CHACHA20POLY1305_TAG_BYTES (16U) |
Tag length in bytes. | |
Functions | |
void | chacha20poly1305_encrypt (uint8_t *cipher, const uint8_t *msg, size_t msglen, const uint8_t *aad, size_t aadlen, const uint8_t *key, const uint8_t *nonce) |
Encrypt a plaintext to ciphertext and append a tag to protect the ciphertext and additional data. | |
int | chacha20poly1305_decrypt (const uint8_t *cipher, size_t cipherlen, uint8_t *msg, size_t *msglen, const uint8_t *aad, size_t aadlen, const uint8_t *key, const uint8_t *nonce) |
Verify the tag and decrypt a ciphertext to plaintext. | |
void | chacha20_encrypt_decrypt (const uint8_t *input, uint8_t *output, const uint8_t *key, const uint8_t *nonce, size_t inputlen) |
Encrypt a plaintext to ciphertext with the ChaCha20 algorithm. | |