MAGMA
Cryptographic Library
Loading...
Searching...
No Matches
ctr.h File Reference
#include <stddef.h>
#include <stdint.h>
#include "core/keys.h"
#include "core/crypt.h"
#include "core/utils.h"
Include dependency graph for ctr.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define CTR_IV_LENGTH   4

Functions

MagmaResult magma_encrypt_ctr (const unsigned char keys[ITER_KEYS_COUNT][ITER_KEY_LEN], const unsigned char iv[CTR_IV_LENGTH], const unsigned char *input, unsigned char *output, const size_t length)
MagmaResult magma_decrypt_ctr (const unsigned char keys[ITER_KEYS_COUNT][ITER_KEY_LEN], const unsigned char iv[CTR_IV_LENGTH], const unsigned char *input, unsigned char *output, const size_t length)

Macro Definition Documentation

◆ CTR_IV_LENGTH

#define CTR_IV_LENGTH   4

Function Documentation

◆ magma_decrypt_ctr()

MagmaResult magma_decrypt_ctr ( const unsigned char keys[ITER_KEYS_COUNT][ITER_KEY_LEN],
const unsigned char iv[CTR_IV_LENGTH],
const unsigned char * input,
unsigned char * output,
const size_t length )
Parameters
keysExpanded iteration keys.
ivPointer to the IV (initialization vector).
inputPointer to the input data.
outputPointer to the output data.
lengthLength of the input data in bytes.
Returns
MAGMA_SUCCESS on success, error code otherwise.

◆ magma_encrypt_ctr()

MagmaResult magma_encrypt_ctr ( const unsigned char keys[ITER_KEYS_COUNT][ITER_KEY_LEN],
const unsigned char iv[CTR_IV_LENGTH],
const unsigned char * input,
unsigned char * output,
const size_t length )
Parameters
keysExpanded iteration keys.
ivPointer to the IV (initialization vector).
inputPointer to the input data.
outputPointer to the output data.
lengthLength of the input data in bytes.
Returns
MAGMA_SUCCESS on success, error code otherwise.