1 /* blockcipher_descriptor.h */
3 #ifndef BLOCKCIPHER_DESCRIPTOR_H_
4 #define BLOCKCIPHER_DESCRIPTOR_H_
6 #include <avr/pgmspace.h>
8 typedef void(*void_fpt)(void);
9 typedef void(*bc_init1_fpt)(void*, void*);
10 typedef void(*bc_init2_fpt)(void*, uint16_t,void*);
11 typedef void(*bc_enc1_fpt)(void*, void*);
12 typedef void(*bc_enc2_fpt)(void*, void*, void*);
13 typedef void(*bc_dec1_fpt)(void*, void*);
14 typedef void(*bc_dec2_fpt)(void*, void*, void*);
15 typedef void(*bc_free_fpt)(void*);
35 #define BC_INIT_TYPE 0x01
36 #define BC_INIT_TYPE_1 0x00
37 #define BC_INIT_TYPE_2 0x01
39 #define BC_ENC_TYPE 0x02
40 #define BC_ENC_TYPE_1 0x00
41 #define BC_ENC_TYPE_2 0x02
43 #define BC_DEC_TYPE 0x04
44 #define BC_DEC_TYPE_1 0x00
45 #define BC_DEC_TYPE_2 0x04
47 #define BCDESC_TYPE_BLOCKCIPHER 0x01
50 uint8_t type; /* 1==blockcipher */
59 PGM_VOID_P valid_keysize_desc;
60 } bcdesc_t; /* blockcipher descriptor type */
68 #endif /* BLOCKCIPHER_DESCRIPTOR_H_ */