Blame view

kernel/linux-imx6_3.14.28/include/crypto/aes.h 1019 Bytes
6b13f685e   김민수   BSP 최초 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
  /*
   * Common values for AES algorithms
   */
  
  #ifndef _CRYPTO_AES_H
  #define _CRYPTO_AES_H
  
  #include <linux/types.h>
  #include <linux/crypto.h>
  
  #define AES_MIN_KEY_SIZE	16
  #define AES_MAX_KEY_SIZE	32
  #define AES_KEYSIZE_128		16
  #define AES_KEYSIZE_192		24
  #define AES_KEYSIZE_256		32
  #define AES_BLOCK_SIZE		16
  #define AES_MAX_KEYLENGTH	(15 * 16)
  #define AES_MAX_KEYLENGTH_U32	(AES_MAX_KEYLENGTH / sizeof(u32))
  
  /*
   * Please ensure that the first two fields are 16-byte aligned
   * relative to the start of the structure, i.e., don't move them!
   */
  struct crypto_aes_ctx {
  	u32 key_enc[AES_MAX_KEYLENGTH_U32];
  	u32 key_dec[AES_MAX_KEYLENGTH_U32];
  	u32 key_length;
  };
  
  extern const u32 crypto_ft_tab[4][256];
  extern const u32 crypto_fl_tab[4][256];
  extern const u32 crypto_it_tab[4][256];
  extern const u32 crypto_il_tab[4][256];
  
  int crypto_aes_set_key(struct crypto_tfm *tfm, const u8 *in_key,
  		unsigned int key_len);
  int crypto_aes_expand_key(struct crypto_aes_ctx *ctx, const u8 *in_key,
  		unsigned int key_len);
  #endif