diff --git a/include/polarssl/cipher.h b/include/polarssl/cipher.h index 5ae25c1ea..d73445cc6 100644 --- a/include/polarssl/cipher.h +++ b/include/polarssl/cipher.h @@ -102,6 +102,9 @@ typedef enum { POLARSSL_CIPHER_CAMELLIA_128_CTR, POLARSSL_CIPHER_CAMELLIA_192_CTR, POLARSSL_CIPHER_CAMELLIA_256_CTR, + POLARSSL_CIPHER_CAMELLIA_128_GCM, + POLARSSL_CIPHER_CAMELLIA_192_GCM, + POLARSSL_CIPHER_CAMELLIA_256_GCM, POLARSSL_CIPHER_DES_ECB, POLARSSL_CIPHER_DES_CBC, POLARSSL_CIPHER_DES_EDE_ECB, diff --git a/library/cipher_wrap.c b/library/cipher_wrap.c index 18fc6a24a..3020e14e2 100644 --- a/library/cipher_wrap.c +++ b/library/cipher_wrap.c @@ -66,6 +66,20 @@ #include +#if defined(POLARSSL_GCM_C) +/* shared by all GCM ciphers */ +static void *gcm_ctx_alloc( void ) +{ + return polarssl_malloc( sizeof( gcm_context ) ); +} + +static void gcm_ctx_free( void *ctx ) +{ + gcm_free( ctx ); + polarssl_free( ctx ); +} +#endif + #if defined(POLARSSL_AES_C) static int aes_crypt_ecb_wrap( void *ctx, operation_t operation, @@ -301,17 +315,6 @@ const cipher_info_t aes_256_ctr_info = { #endif /* POLARSSL_CIPHER_MODE_CTR */ #if defined(POLARSSL_GCM_C) -static void *gcm_ctx_alloc( void ) -{ - return polarssl_malloc( sizeof( gcm_context ) ); -} - -static void gcm_ctx_free( void *ctx ) -{ - gcm_free( ctx ); - polarssl_free( ctx ); -} - static int gcm_aes_setkey_wrap( void *ctx, const unsigned char *key, unsigned int key_length ) { return gcm_init( (gcm_context *) ctx, POLARSSL_CIPHER_ID_AES, @@ -601,7 +604,61 @@ const cipher_info_t camellia_256_ctr_info = { }; #endif /* POLARSSL_CIPHER_MODE_CTR */ -#endif +#if defined(POLARSSL_GCM_C) +static int gcm_camellia_setkey_wrap( void *ctx, const unsigned char *key, unsigned int key_length ) +{ + return gcm_init( (gcm_context *) ctx, POLARSSL_CIPHER_ID_CAMELLIA, + key, key_length ); +} + +const cipher_base_t gcm_camellia_info = { + POLARSSL_CIPHER_ID_CAMELLIA, + NULL, + NULL, + NULL, + NULL, + NULL, + gcm_camellia_setkey_wrap, + gcm_camellia_setkey_wrap, + gcm_ctx_alloc, + gcm_ctx_free, +}; + +const cipher_info_t camellia_128_gcm_info = { + POLARSSL_CIPHER_CAMELLIA_128_GCM, + POLARSSL_MODE_GCM, + 128, + "CAMELLIA-128-GCM", + 12, + 1, + 16, + &gcm_camellia_info +}; + +const cipher_info_t camellia_192_gcm_info = { + POLARSSL_CIPHER_CAMELLIA_192_GCM, + POLARSSL_MODE_GCM, + 192, + "CAMELLIA-192-GCM", + 12, + 1, + 16, + &gcm_camellia_info +}; + +const cipher_info_t camellia_256_gcm_info = { + POLARSSL_CIPHER_CAMELLIA_256_GCM, + POLARSSL_MODE_GCM, + 256, + "CAMELLIA-256-GCM", + 12, + 1, + 16, + &gcm_camellia_info +}; +#endif /* POLARSSL_GCM_C */ + +#endif /* POLARSSL_CAMELLIA_C */ #if defined(POLARSSL_DES_C) @@ -1165,6 +1222,11 @@ const cipher_definition_t cipher_definitions[] = { POLARSSL_CIPHER_CAMELLIA_192_CTR, &camellia_192_ctr_info }, { POLARSSL_CIPHER_CAMELLIA_256_CTR, &camellia_256_ctr_info }, #endif +#if defined(POLARSSL_GCM_C) + { POLARSSL_CIPHER_CAMELLIA_128_GCM, &camellia_128_gcm_info }, + { POLARSSL_CIPHER_CAMELLIA_192_GCM, &camellia_192_gcm_info }, + { POLARSSL_CIPHER_CAMELLIA_256_GCM, &camellia_256_gcm_info }, +#endif #endif /* POLARSSL_CAMELLIA_C */ #if defined(POLARSSL_DES_C) diff --git a/tests/suites/test_suite_cipher.gcm.data b/tests/suites/test_suite_cipher.gcm.data index 42cd0945a..9afd91819 100644 --- a/tests/suites/test_suite_cipher.gcm.data +++ b/tests/suites/test_suite_cipher.gcm.data @@ -1,4 +1,4 @@ -AES-GCM Encrypt and decrypt 0 bytes +AES 128 GCM Encrypt and decrypt 0 bytes depends_on:POLARSSL_AES_C:POLARSSL_GCM_C enc_dec_buf:POLARSSL_CIPHER_AES_128_GCM:"AES-128-GCM":128:0:-1 @@ -125,3 +125,279 @@ decrypt_test_vec:POLARSSL_CIPHER_AES_128_GCM:-1:"69eedf3777e594c30e94e9c5e2bce46 AES 128 GCM Decrypt test vector #9 depends_on:POLARSSL_AES_C:POLARSSL_GCM_C decrypt_test_vec:POLARSSL_CIPHER_AES_128_GCM:-1:"45cc35311eedf0ba093bf901931a7036":"fed5084de3c348f5a0adf4c2fd4e848a":"5dc8d7525eaad035c19714ae1b1e538cb66a4089027245351e0ad9297410fb3a0c1155407c10a8bb95a9ca624a9c9925dac003ee78926c6e90ff4ccdba10e8a78bda1c4478162a0e302de5ff05fb0f94c89c3c7429fb94828bdcd97d21333c2ee72963ee6f056ce272b8bab007e653a42b01d1d2041ba627f169c8c0d32e6dae":"":"6e210914e4aed188d576f5ad7fc7e4cf7dd8d82f34ea3bcbdb7267cfd9045f806978dbff3460c4e8ff8c4edb6ad2edba405a8d915729d89aab2116b36a70b54f5920a97f5a571977e0329eda6c696749be940eabfc6d8b0bbd6fbdb87657b3a7695da9f5d3a7384257f20e0becd8512d3705cc246ee6ca1e610921cf92603d79":"266a895fc21da5176b44b446d7d1921d":0:POLARSSL_ERR_CIPHER_AUTH_FAILED + +CAMELLIA 128 GCM Encrypt and decrypt 0 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_128_GCM:"CAMELLIA-128-GCM":128:0:-1 + +CAMELLIA 128 GCM Encrypt and decrypt 1 byte +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_128_GCM:"CAMELLIA-128-GCM":128:1:-1 + +CAMELLIA 128 GCM Encrypt and decrypt 2 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_128_GCM:"CAMELLIA-128-GCM":128:2:-1 + +CAMELLIA 128 GCM Encrypt and decrypt 7 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_128_GCM:"CAMELLIA-128-GCM":128:7:-1 + +CAMELLIA 128 GCM Encrypt and decrypt 8 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_128_GCM:"CAMELLIA-128-GCM":128:8:-1 + +CAMELLIA 128 GCM Encrypt and decrypt 9 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_128_GCM:"CAMELLIA-128-GCM":128:9:-1 + +CAMELLIA 128 GCM Encrypt and decrypt 15 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_128_GCM:"CAMELLIA-128-GCM":128:15:-1 + +CAMELLIA 128 GCM Encrypt and decrypt 16 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_128_GCM:"CAMELLIA-128-GCM":128:16:-1 + +CAMELLIA 128 GCM Encrypt and decrypt 17 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_128_GCM:"CAMELLIA-128-GCM":128:17:-1 + +CAMELLIA 128 GCM Encrypt and decrypt 31 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_128_GCM:"CAMELLIA-128-GCM":128:31:-1 + +CAMELLIA 128 GCM Encrypt and decrypt 32 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_128_GCM:"CAMELLIA-128-GCM":128:32:-1 + +CAMELLIA 128 GCM Encrypt and decrypt 32 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_128_GCM:"CAMELLIA-128-GCM":128:33:-1 + +CAMELLIA 128 GCM Encrypt and decrypt 47 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_128_GCM:"CAMELLIA-128-GCM":128:47:-1 + +CAMELLIA 128 GCM Encrypt and decrypt 48 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_128_GCM:"CAMELLIA-128-GCM":128:48:-1 + +CAMELLIA 128 GCM Encrypt and decrypt 49 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_128_GCM:"CAMELLIA-128-GCM":128:49:-1 + +CAMELLIA 128 GCM Encrypt and decrypt 0 bytes in multiple parts +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_128_GCM:128:0:0 + +CAMELLIA 128 GCM Encrypt and decrypt 1 bytes in multiple parts 1 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_128_GCM:128:1:0 + +CAMELLIA 128 GCM Encrypt and decrypt 1 bytes in multiple parts 2 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_128_GCM:128:0:1 + +CAMELLIA 128 GCM Encrypt and decrypt 16 bytes in multiple parts 1 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_128_GCM:128:16:0 + +CAMELLIA 128 GCM Encrypt and decrypt 16 bytes in multiple parts 2 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_128_GCM:128:0:16 + +CAMELLIA 128 GCM Encrypt and decrypt 22 bytes in multiple parts 1 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_128_GCM:128:16:6 + +CAMELLIA 128 GCM Encrypt and decrypt 22 bytes in multiple parts 2 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_128_GCM:128:0:22 + +CAMELLIA 128 GCM Encrypt and decrypt 32 bytes in multiple parts 1 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_128_GCM:128:16:16 + +CAMELLIA 192 GCM Encrypt and decrypt 0 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_192_GCM:"CAMELLIA-192-GCM":192:0:-1 + +CAMELLIA 192 GCM Encrypt and decrypt 1 byte +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_192_GCM:"CAMELLIA-192-GCM":192:1:-1 + +CAMELLIA 192 GCM Encrypt and decrypt 2 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_192_GCM:"CAMELLIA-192-GCM":192:2:-1 + +CAMELLIA 192 GCM Encrypt and decrypt 7 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_192_GCM:"CAMELLIA-192-GCM":192:7:-1 + +CAMELLIA 192 GCM Encrypt and decrypt 8 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_192_GCM:"CAMELLIA-192-GCM":192:8:-1 + +CAMELLIA 192 GCM Encrypt and decrypt 9 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_192_GCM:"CAMELLIA-192-GCM":192:9:-1 + +CAMELLIA 192 GCM Encrypt and decrypt 15 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_192_GCM:"CAMELLIA-192-GCM":192:15:-1 + +CAMELLIA 192 GCM Encrypt and decrypt 16 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_192_GCM:"CAMELLIA-192-GCM":192:16:-1 + +CAMELLIA 192 GCM Encrypt and decrypt 17 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_192_GCM:"CAMELLIA-192-GCM":192:17:-1 + +CAMELLIA 192 GCM Encrypt and decrypt 31 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_192_GCM:"CAMELLIA-192-GCM":192:31:-1 + +CAMELLIA 192 GCM Encrypt and decrypt 32 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_192_GCM:"CAMELLIA-192-GCM":192:32:-1 + +CAMELLIA 192 GCM Encrypt and decrypt 32 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_192_GCM:"CAMELLIA-192-GCM":192:33:-1 + +CAMELLIA 192 GCM Encrypt and decrypt 47 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_192_GCM:"CAMELLIA-192-GCM":192:47:-1 + +CAMELLIA 192 GCM Encrypt and decrypt 48 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_192_GCM:"CAMELLIA-192-GCM":192:48:-1 + +CAMELLIA 192 GCM Encrypt and decrypt 49 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_192_GCM:"CAMELLIA-192-GCM":192:49:-1 + +CAMELLIA 192 GCM Encrypt and decrypt 0 bytes in multiple parts +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_192_GCM:192:0:0 + +CAMELLIA 192 GCM Encrypt and decrypt 1 bytes in multiple parts 1 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_192_GCM:192:1:0 + +CAMELLIA 192 GCM Encrypt and decrypt 1 bytes in multiple parts 2 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_192_GCM:192:0:1 + +CAMELLIA 192 GCM Encrypt and decrypt 16 bytes in multiple parts 1 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_192_GCM:192:16:0 + +CAMELLIA 192 GCM Encrypt and decrypt 16 bytes in multiple parts 2 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_192_GCM:192:0:16 + +CAMELLIA 192 GCM Encrypt and decrypt 22 bytes in multiple parts 1 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_192_GCM:192:16:6 + +CAMELLIA 192 GCM Encrypt and decrypt 22 bytes in multiple parts 2 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_192_GCM:192:0:22 + +CAMELLIA 192 GCM Encrypt and decrypt 32 bytes in multiple parts 1 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_192_GCM:192:16:16 + +CAMELLIA 256 GCM Encrypt and decrypt 0 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_256_GCM:"CAMELLIA-256-GCM":256:0:-1 + +CAMELLIA 256 GCM Encrypt and decrypt 1 byte +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_256_GCM:"CAMELLIA-256-GCM":256:1:-1 + +CAMELLIA 256 GCM Encrypt and decrypt 2 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_256_GCM:"CAMELLIA-256-GCM":256:2:-1 + +CAMELLIA 256 GCM Encrypt and decrypt 7 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_256_GCM:"CAMELLIA-256-GCM":256:7:-1 + +CAMELLIA 256 GCM Encrypt and decrypt 8 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_256_GCM:"CAMELLIA-256-GCM":256:8:-1 + +CAMELLIA 256 GCM Encrypt and decrypt 9 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_256_GCM:"CAMELLIA-256-GCM":256:9:-1 + +CAMELLIA 256 GCM Encrypt and decrypt 15 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_256_GCM:"CAMELLIA-256-GCM":256:15:-1 + +CAMELLIA 256 GCM Encrypt and decrypt 16 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_256_GCM:"CAMELLIA-256-GCM":256:16:-1 + +CAMELLIA 256 GCM Encrypt and decrypt 17 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_256_GCM:"CAMELLIA-256-GCM":256:17:-1 + +CAMELLIA 256 GCM Encrypt and decrypt 31 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_256_GCM:"CAMELLIA-256-GCM":256:31:-1 + +CAMELLIA 256 GCM Encrypt and decrypt 32 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_256_GCM:"CAMELLIA-256-GCM":256:32:-1 + +CAMELLIA 256 GCM Encrypt and decrypt 32 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_256_GCM:"CAMELLIA-256-GCM":256:33:-1 + +CAMELLIA 256 GCM Encrypt and decrypt 47 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_256_GCM:"CAMELLIA-256-GCM":256:47:-1 + +CAMELLIA 256 GCM Encrypt and decrypt 48 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_256_GCM:"CAMELLIA-256-GCM":256:48:-1 + +CAMELLIA 256 GCM Encrypt and decrypt 49 bytes +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf:POLARSSL_CIPHER_CAMELLIA_256_GCM:"CAMELLIA-256-GCM":256:49:-1 + +CAMELLIA 256 GCM Encrypt and decrypt 0 bytes in multiple parts +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_256_GCM:256:0:0 + +CAMELLIA 256 GCM Encrypt and decrypt 1 bytes in multiple parts 1 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_256_GCM:256:1:0 + +CAMELLIA 256 GCM Encrypt and decrypt 1 bytes in multiple parts 2 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_256_GCM:256:0:1 + +CAMELLIA 256 GCM Encrypt and decrypt 16 bytes in multiple parts 1 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_256_GCM:256:16:0 + +CAMELLIA 256 GCM Encrypt and decrypt 16 bytes in multiple parts 2 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_256_GCM:256:0:16 + +CAMELLIA 256 GCM Encrypt and decrypt 22 bytes in multiple parts 1 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_256_GCM:256:16:6 + +CAMELLIA 256 GCM Encrypt and decrypt 22 bytes in multiple parts 2 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_256_GCM:256:0:22 + +CAMELLIA 256 GCM Encrypt and decrypt 32 bytes in multiple parts 1 +depends_on:POLARSSL_CAMELLIA_C:POLARSSL_GCM_C +enc_dec_buf_multipart:POLARSSL_CIPHER_CAMELLIA_256_GCM:256:16:16