27 #ifndef POLARSSL_CCM_H
28 #define POLARSSL_CCM_H
32 #define POLARSSL_ERR_CCM_BAD_INPUT -0x000D
33 #define POLARSSL_ERR_CCM_AUTH_FAILED -0x000F
58 const unsigned char *key,
unsigned int keysize );
93 const unsigned char *iv,
size_t iv_len,
94 const unsigned char *add,
size_t add_len,
95 const unsigned char *input,
unsigned char *output,
96 unsigned char *tag,
size_t tag_len );
116 const unsigned char *iv,
size_t iv_len,
117 const unsigned char *add,
size_t add_len,
118 const unsigned char *input,
unsigned char *output,
119 const unsigned char *tag,
size_t tag_len );
121 #if defined(POLARSSL_SELF_TEST) && defined(POLARSSL_AES_C)
int ccm_auth_decrypt(ccm_context *ctx, size_t length, const unsigned char *iv, size_t iv_len, const unsigned char *add, size_t add_len, const unsigned char *input, unsigned char *output, const unsigned char *tag, size_t tag_len)
CCM buffer authenticated decryption.
int ccm_init(ccm_context *ctx, cipher_id_t cipher, const unsigned char *key, unsigned int keysize)
CCM initialization (encryption and decryption)
int ccm_self_test(int verbose)
Checkup routine.
void ccm_free(ccm_context *ctx)
Free a CCM context and underlying cipher sub-context.
int ccm_encrypt_and_tag(ccm_context *ctx, size_t length, const unsigned char *iv, size_t iv_len, const unsigned char *add, size_t add_len, const unsigned char *input, unsigned char *output, unsigned char *tag, size_t tag_len)
CCM buffer encryption.
cipher_context_t cipher_ctx