nrfxlib API 0.1.0
Loading...
Searching...
No Matches

Type definitions and APIs for AES-CCM (AES Counter mode with CBC-MAC). More...

Functions

void ocrypto_aes_ccm_encrypt (uint8_t *ct, uint8_t *tag, size_t tag_len, const uint8_t *pt, size_t pt_len, const uint8_t *key, size_t size, const uint8_t *nonce, size_t n_len, const uint8_t *aa, size_t aa_len)
 
int ocrypto_aes_ccm_decrypt (uint8_t *pt, const uint8_t *tag, size_t tag_len, const uint8_t *ct, size_t ct_len, const uint8_t *key, size_t size, const uint8_t *nonce, size_t n_len, const uint8_t *aa, size_t aa_len)
 

Incremental AES-CCM encryption/decryption.

This group of functions can be used to incrementally compute the AES-CCM encryption/decryption for a given message.

void ocrypto_aes_ccm_init (ocrypto_aes_ccm_ctx *ctx, const uint8_t *key, size_t size, const uint8_t *nonce, size_t n_len, size_t tag_len, size_t pt_len, size_t aa_len)
 
void ocrypto_aes_ccm_update_aad (ocrypto_aes_ccm_ctx *ctx, const uint8_t *aa, size_t aa_len)
 
void ocrypto_aes_ccm_update_enc (ocrypto_aes_ccm_ctx *ctx, uint8_t *ct, const uint8_t *pt, size_t pt_len)
 
void ocrypto_aes_ccm_update_dec (ocrypto_aes_ccm_ctx *ctx, uint8_t *pt, const uint8_t *ct, size_t ct_len)
 
void ocrypto_aes_ccm_final_enc (ocrypto_aes_ccm_ctx *ctx, uint8_t *tag, size_t tag_len)
 
int ocrypto_aes_ccm_final_dec (ocrypto_aes_ccm_ctx *ctx, const uint8_t *tag, size_t tag_len)
 

Detailed Description

Type definitions and APIs for AES-CCM (AES Counter mode with CBC-MAC).

AES-CCM (AES counter mode with CBC-MAC) is an AES mode which effectively turns the block cipher into a stream cipher. The AES block cipher primitive is used in CTR mode for encryption and decryption. In addition an AES CBC-MAC is used for authentication.