Nostrduino
Loading...
Searching...
No Matches
Macros | Typedefs | Functions
NostrAES.cpp File Reference
#include <string.h>
#include "NostrAES.h"

Macros

#define Nb   4
 
#define Nk   8
 
#define Nr   14
 
#define MULTIPLY_AS_A_FUNCTION   0
 
#define getSBoxValue(num)   (sbox[(num)])
 
#define Multiply(x, y)
 
#define getSBoxInvert(num)   (rsbox[(num)])
 

Typedefs

typedef uint8_t state_t[4][4]
 

Functions

void AES_init_ctx (struct AES_ctx *ctx, const uint8_t *key)
 
void AES_init_ctx_iv (struct AES_ctx *ctx, const uint8_t *key, const uint8_t *iv)
 
void AES_ctx_set_iv (struct AES_ctx *ctx, const uint8_t *iv)
 
void AES_ECB_encrypt (const struct AES_ctx *ctx, uint8_t *buf)
 
void AES_ECB_decrypt (const struct AES_ctx *ctx, uint8_t *buf)
 
void AES_CBC_encrypt_buffer (struct AES_ctx *ctx, uint8_t *buf, size_t length)
 
void AES_CBC_decrypt_buffer (struct AES_ctx *ctx, uint8_t *buf, size_t length)
 
void AES_CTR_xcrypt_buffer (struct AES_ctx *ctx, uint8_t *buf, size_t length)
 

Macro Definition Documentation

◆ getSBoxInvert

#define getSBoxInvert (   num)    (rsbox[(num)])

◆ getSBoxValue

#define getSBoxValue (   num)    (sbox[(num)])

◆ Multiply

#define Multiply (   x,
 
)
Value:
( ((y & 1) * x) ^ \
((y>>1 & 1) * xtime(x)) ^ \
((y>>2 & 1) * xtime(xtime(x))) ^ \
((y>>3 & 1) * xtime(xtime(xtime(x)))) ^ \
((y>>4 & 1) * xtime(xtime(xtime(xtime(x)))))) \

◆ MULTIPLY_AS_A_FUNCTION

#define MULTIPLY_AS_A_FUNCTION   0

◆ Nb

#define Nb   4

◆ Nk

#define Nk   8

◆ Nr

#define Nr   14

Typedef Documentation

◆ state_t

typedef uint8_t state_t[4][4]

Function Documentation

◆ AES_CBC_decrypt_buffer()

void AES_CBC_decrypt_buffer ( struct AES_ctx ctx,
uint8_t *  buf,
size_t  length 
)

◆ AES_CBC_encrypt_buffer()

void AES_CBC_encrypt_buffer ( struct AES_ctx ctx,
uint8_t *  buf,
size_t  length 
)

◆ AES_CTR_xcrypt_buffer()

void AES_CTR_xcrypt_buffer ( struct AES_ctx ctx,
uint8_t *  buf,
size_t  length 
)

◆ AES_ctx_set_iv()

void AES_ctx_set_iv ( struct AES_ctx ctx,
const uint8_t *  iv 
)

◆ AES_ECB_decrypt()

void AES_ECB_decrypt ( const struct AES_ctx ctx,
uint8_t *  buf 
)

◆ AES_ECB_encrypt()

void AES_ECB_encrypt ( const struct AES_ctx ctx,
uint8_t *  buf 
)

◆ AES_init_ctx()

void AES_init_ctx ( struct AES_ctx ctx,
const uint8_t *  key 
)

◆ AES_init_ctx_iv()

void AES_init_ctx_iv ( struct AES_ctx ctx,
const uint8_t *  key,
const uint8_t *  iv 
)