1 /* des.h - header file for des.c
2  */
3 
4 #ifndef __AIR_DES_H
5 #define __AIR_DES_H
6 
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10 
11 #include "air_crypt.h"
12 
13 
14 #define AIR_RET_DES_INIT                         (0x55D659AA)
15 #define AIR_RET_DES_PARAM_ERR                    (AIR_RET_DES_INIT + 0x1)
16 #define AIR_RET_DES_TRNG_ERR                     (AIR_RET_DES_INIT + 0x2)
17 #define AIR_RET_DES_PACK_MODE_ERROR              (AIR_RET_DES_INIT + 0x3)
18 #define AIR_RET_DES_INPUT_SIZE_ERROR             (AIR_RET_DES_INIT + 0x4)
19 #define AIR_RET_DES_MODE_ERROR                   (AIR_RET_DES_INIT + 0x5)
20 #define AIR_RET_DES_ATTACKED                     (AIR_RET_DES_INIT + 0x6)
21 #define AIR_RET_DES_OUTBUF_TOO_SMALL             (AIR_RET_DES_INIT + 0x7)
22 #define AIR_RET_DES_DFA_LOCK                     (AIR_RET_DES_INIT + 0x8)
23 #define AIR_RET_DES_KEY_SIZE_ERROR               (AIR_RET_DES_INIT + 0x9)
24 #define AIR_RET_DES_SUCCESS                      (AIR_RET_DES_INIT + 0x0100)
25 
26 
27 
28 #define AIR_DES_OPT_MODE_Mask        (BIT(0))
29 #define AIR_DES_OPT_MODE_ENCRYPT     (0)
30 #define AIR_DES_OPT_MODE_DECRYPT     (BIT(0))
31 #define AIR_DES_OPT_BLK_Mask         (BIT(1)|BIT(2))
32 #define AIR_DES_OPT_BLK_CBC          (BIT(1))
33 #define AIR_DES_OPT_BLK_ECB          (BIT(2))
34 #define AIR_DES_OPT_BLK_CBC_MAC      (BIT(1)|BIT(2))
35 
36 #define AIR_TDES_OPT_KEY_LEN_Mask    (BIT(3))
37 #define AIR_TDES_OPT_KEY_2           (0)
38 #define AIR_TDES_OPT_KEY_3           (BIT(3))
39 
40 uint32_t AIRDES_EncDec(AIR_SYM_CRYPT_CALL *pCall);
41 
42 uint32_t AIRTDES_EncDec(AIR_SYM_CRYPT_CALL *pCall);
43 
44 #ifdef __cplusplus
45 }
46 #endif
47 
48 #endif
49