source: ecs_cellMon/Bootloader/SES/aes.h @ 3

Last change on this file since 3 was 3, checked in by f.jahn, 20 months ago

fw hinzugfügt-->zed

File size: 1.1 KB
Line 
1#ifndef _AES_H_
2#define _AES_H_
3
4#include <stdint.h>
5
6
7// #define the macros below to 1/0 to enable/disable the mode of operation.
8//
9// CBC enables AES128 encryption in CBC-mode of operation and handles 0-padding.
10// ECB enables the basic ECB 16-byte block algorithm. Both can be enabled simultaneously.
11
12// The #ifndef-guard allows it to be configured before #include'ing or at compile time.
13#ifndef CBC
14  #define CBC 0
15#endif
16
17#ifndef ECB
18  #define ECB 1
19#endif
20
21
22
23#if defined(ECB) && ECB
24
25//void AES128_ECB_encrypt(uint8_t* input, const uint8_t* key, uint8_t *output);
26void AES128_ECB_decrypt(uint8_t* input, const uint8_t* key, uint8_t *output);
27
28#endif // #if defined(ECB) && ECB
29
30
31#if defined(CBC) && CBC
32
33void AES128_CBC_encrypt_buffer(uint8_t* output, uint8_t* input, uint32_t length, const uint8_t* key, const uint8_t* iv);
34void AES128_CBC_decrypt_buffer(uint8_t* output, uint8_t* input, uint32_t length, const uint8_t* key, const uint8_t* iv);
35
36#endif // #if defined(CBC) && CBC
37
38
39
40#endif //_AES_H_
41//void phex(uint8_t* str, int num);
Note: See TracBrowser for help on using the repository browser.