]> git.cryptolib.org Git - avr-crypto-lib.git/blob - bcal/bcal_noekeon.c
a9ce10c200e4401343b24ea6a711fc02527f72a0
[avr-crypto-lib.git] / bcal / bcal_noekeon.c
1 /* bcal_noekeon.c */
2
3 #include <avr/pgmspace.h>
4 #include <stdlib.h>
5 #include "blockcipher_descriptor.h"
6 #include "noekeon.h"
7 #include "keysize_descriptor.h"
8
9 const char noekeon_direct_str[] PROGMEM = "Noekeon-Direct";
10 const char noekeon_indirect_str[] PROGMEM = "Noekeon-Indirect";
11
12 const uint8_t noekeon_keysize_desc[] PROGMEM = { KS_TYPE_LIST, 1, KS_INT(128),
13 KS_TYPE_TERMINATOR };
14
15 const bcdesc_t noekeon_direct_desc PROGMEM = {
16 BCDESC_TYPE_BLOCKCIPHER,
17 BC_ENC_TYPE_1,
18         noekeon_direct_str,
19         16,
20         128,
21         { (void_fpt) NULL },
22         { (void_fpt) noekeon_enc },
23         { (void_fpt) noekeon_dec },
24         (bc_free_fpt) NULL,
25         noekeon_keysize_desc
26 };
27
28 const bcdesc_t noekeon_indirect_desc PROGMEM = {
29 BCDESC_TYPE_BLOCKCIPHER,
30 BC_INIT_TYPE_1 | BC_ENC_TYPE_1,
31         noekeon_indirect_str,
32         16,
33         128,
34         { (void_fpt) noekeon_init },
35         { (void_fpt) noekeon_enc },
36         { (void_fpt) noekeon_dec },
37         (bc_free_fpt) NULL,
38         noekeon_keysize_desc
39 };
40