CC23x0r2DriverLibrary
sw_ecrypt-sync.h File Reference
Include dependency graph for sw_ecrypt-sync.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  ECRYPT_ctx
 

Macros

#define ECRYPT_NAME   "ChaCha8"
 
#define ECRYPT_PROFILE   "_____"
 
#define ECRYPT_MAXKEYSIZE   256 /* [edit] */
 
#define ECRYPT_KEYSIZE(i)   (128 + (i)*128) /* [edit] */
 
#define ECRYPT_MAXIVSIZE   64 /* [edit] */
 
#define ECRYPT_IVSIZE(i)   (64 + (i)*64) /* [edit] */
 
#define ECRYPT_GENERATES_KEYSTREAM
 
#define ECRYPT_USES_DEFAULT_ALL_IN_ONE   /* [edit] */
 
#define ECRYPT_BLOCKLENGTH   64 /* [edit] */
 
#define ECRYPT_USES_DEFAULT_BLOCK_MACROS   /* [edit] */
 
#define ECRYPT_encrypt_blocks(ctx, plaintext, ciphertext, blocks)   ECRYPT_encrypt_bytes(ctx, plaintext, ciphertext, (blocks)*ECRYPT_BLOCKLENGTH)
 
#define ECRYPT_decrypt_blocks(ctx, ciphertext, plaintext, blocks)   ECRYPT_decrypt_bytes(ctx, ciphertext, plaintext, (blocks)*ECRYPT_BLOCKLENGTH)
 
#define ECRYPT_keystream_blocks(ctx, keystream, blocks)   ECRYPT_keystream_bytes(ctx, keystream, (blocks)*ECRYPT_BLOCKLENGTH)
 
#define ECRYPT_MAXVARIANT   1 /* [edit] */
 
#define ECRYPT_VARIANT   1
 

Functions

void ECRYPT_init (void)
 
void ECRYPT_keysetup (ECRYPT_ctx *ctx, const u8 *key, u32 keysize, u32 ivsize)
 
void ECRYPT_ivsetup (ECRYPT_ctx *ctx, const u8 *iv)
 
void ECRYPT_encrypt_bytes (ECRYPT_ctx *ctx, const u8 *plaintext, u8 *ciphertext, u32 msglen)
 
void ECRYPT_decrypt_bytes (ECRYPT_ctx *ctx, const u8 *ciphertext, u8 *plaintext, u32 msglen)
 
void ECRYPT_keystream_bytes (ECRYPT_ctx *ctx, u8 *keystream, u32 length)
 
void ECRYPT_encrypt_packet (ECRYPT_ctx *ctx, const u8 *iv, const u8 *plaintext, u8 *ciphertext, u32 msglen)
 
void ECRYPT_decrypt_packet (ECRYPT_ctx *ctx, const u8 *iv, const u8 *ciphertext, u8 *plaintext, u32 msglen)
 

Macro Definition Documentation

§ ECRYPT_NAME

#define ECRYPT_NAME   "ChaCha8"

§ ECRYPT_PROFILE

#define ECRYPT_PROFILE   "_____"

§ ECRYPT_MAXKEYSIZE

#define ECRYPT_MAXKEYSIZE   256 /* [edit] */

§ ECRYPT_KEYSIZE

#define ECRYPT_KEYSIZE (   i)    (128 + (i)*128) /* [edit] */

§ ECRYPT_MAXIVSIZE

#define ECRYPT_MAXIVSIZE   64 /* [edit] */

§ ECRYPT_IVSIZE

#define ECRYPT_IVSIZE (   i)    (64 + (i)*64) /* [edit] */

§ ECRYPT_GENERATES_KEYSTREAM

#define ECRYPT_GENERATES_KEYSTREAM

§ ECRYPT_USES_DEFAULT_ALL_IN_ONE

#define ECRYPT_USES_DEFAULT_ALL_IN_ONE   /* [edit] */

§ ECRYPT_BLOCKLENGTH

#define ECRYPT_BLOCKLENGTH   64 /* [edit] */

§ ECRYPT_USES_DEFAULT_BLOCK_MACROS

#define ECRYPT_USES_DEFAULT_BLOCK_MACROS   /* [edit] */

§ ECRYPT_encrypt_blocks

#define ECRYPT_encrypt_blocks (   ctx,
  plaintext,
  ciphertext,
  blocks 
)    ECRYPT_encrypt_bytes(ctx, plaintext, ciphertext, (blocks)*ECRYPT_BLOCKLENGTH)

§ ECRYPT_decrypt_blocks

#define ECRYPT_decrypt_blocks (   ctx,
  ciphertext,
  plaintext,
  blocks 
)    ECRYPT_decrypt_bytes(ctx, ciphertext, plaintext, (blocks)*ECRYPT_BLOCKLENGTH)

§ ECRYPT_keystream_blocks

#define ECRYPT_keystream_blocks (   ctx,
  keystream,
  blocks 
)    ECRYPT_keystream_bytes(ctx, keystream, (blocks)*ECRYPT_BLOCKLENGTH)

§ ECRYPT_MAXVARIANT

#define ECRYPT_MAXVARIANT   1 /* [edit] */

§ ECRYPT_VARIANT

#define ECRYPT_VARIANT   1

Function Documentation

§ ECRYPT_init()

void ECRYPT_init ( void  )

§ ECRYPT_keysetup()

void ECRYPT_keysetup ( ECRYPT_ctx ctx,
const u8 *  key,
u32  keysize,
u32  ivsize 
)

§ ECRYPT_ivsetup()

void ECRYPT_ivsetup ( ECRYPT_ctx ctx,
const u8 *  iv 
)

References ECRYPT_ctx::input, and U8TO32_LITTLE.

§ ECRYPT_encrypt_bytes()

void ECRYPT_encrypt_bytes ( ECRYPT_ctx ctx,
const u8 *  plaintext,
u8 *  ciphertext,
u32  msglen 
)

§ ECRYPT_decrypt_bytes()

void ECRYPT_decrypt_bytes ( ECRYPT_ctx ctx,
const u8 *  ciphertext,
u8 *  plaintext,
u32  msglen 
)

§ ECRYPT_keystream_bytes()

void ECRYPT_keystream_bytes ( ECRYPT_ctx ctx,
u8 *  keystream,
u32  length 
)

§ ECRYPT_encrypt_packet()

void ECRYPT_encrypt_packet ( ECRYPT_ctx ctx,
const u8 *  iv,
const u8 *  plaintext,
u8 *  ciphertext,
u32  msglen 
)

§ ECRYPT_decrypt_packet()

void ECRYPT_decrypt_packet ( ECRYPT_ctx ctx,
const u8 *  iv,
const u8 *  ciphertext,
u8 *  plaintext,
u32  msglen 
)