Merge branch 'master' of /home/nchip/public_html/qemu into garage-push
[qemu] / aes.h
1 #ifndef QEMU_AES_H
2 #define QEMU_AES_H
3
4 #define AES_MAXNR 14
5 #define AES_BLOCK_SIZE 16
6
7 struct aes_key_st {
8     uint32_t rd_key[4 *(AES_MAXNR + 1)];
9     int rounds;
10 };
11 typedef struct aes_key_st AES_KEY;
12
13 int AES_set_encrypt_key(const unsigned char *userKey, const int bits,
14         AES_KEY *key);
15 int AES_set_decrypt_key(const unsigned char *userKey, const int bits,
16         AES_KEY *key);
17
18 void AES_encrypt(const unsigned char *in, unsigned char *out,
19         const AES_KEY *key);
20 void AES_decrypt(const unsigned char *in, unsigned char *out,
21         const AES_KEY *key);
22 void AES_cbc_encrypt(const unsigned char *in, unsigned char *out,
23                      const unsigned long length, const AES_KEY *key,
24                      unsigned char *ivec, const int enc);
25
26 #endif