diff options
author | Egor Tensin <Egor.Tensin@gmail.com> | 2015-05-24 17:35:31 +0300 |
---|---|---|
committer | Egor Tensin <Egor.Tensin@gmail.com> | 2015-05-24 17:35:31 +0300 |
commit | f4eb1f376a8dad10daf8ba4acf0a2095169af179 (patch) | |
tree | e9b5c36726d3e55b612c84d8d777d1f80b2b6993 /include/aesni | |
parent | bugfix (diff) | |
download | aes-tools-f4eb1f376a8dad10daf8ba4acf0a2095169af179.tar.gz aes-tools-f4eb1f376a8dad10daf8ba4acf0a2095169af179.zip |
add higher-level encrypt/decrypt functions
Diffstat (limited to '')
-rw-r--r-- | include/aesni/all.h | 1 | ||||
-rw-r--r-- | include/aesni/api.h | 70 | ||||
-rw-r--r-- | include/aesni/raw.h | 16 |
3 files changed, 79 insertions, 8 deletions
diff --git a/include/aesni/all.h b/include/aesni/all.h index f16d2a6..3935d2a 100644 --- a/include/aesni/all.h +++ b/include/aesni/all.h @@ -8,5 +8,6 @@ #pragma once +#include "api.h" #include "data.h" #include "raw.h" diff --git a/include/aesni/api.h b/include/aesni/api.h new file mode 100644 index 0000000..64d169c --- /dev/null +++ b/include/aesni/api.h @@ -0,0 +1,70 @@ +/** + * \file + * \author Egor Tensin <Egor.Tensin@gmail.com> + * \date 2015 + * \copyright This file is licensed under the terms of the MIT License. + * See LICENSE.txt for details. + */ + +#pragma once + +#include "data.h" +#include "raw.h" + +static __inline AesBlock128 __fastcall aes128ecb_encrypt( + AesBlock128 plain, + AesBlock128 key) +{ + return raw_aes128ecb_encrypt(plain, key); +} + +static __inline AesBlock128 __fastcall aes128ecb_decrypt( + AesBlock128 cypher, + AesBlock128 key) +{ + return raw_aes128ecb_decrypt(cypher, key); +} + +static __inline AesBlock128 __fastcall aes192ecb_encrypt( + AesBlock128 plain, + AesBlock192* key) +{ + return raw_aes192ecb_encrypt(plain, key->lo, key->hi); +} + +static __inline AesBlock128 __fastcall aes192ecb_decrypt( + AesBlock128 cypher, + AesBlock192* key) +{ + return raw_aes192ecb_decrypt(cypher, key->lo, key->hi); +} + +static __inline AesBlock128 __fastcall aes256ecb_encrypt( + AesBlock128 plain, + AesBlock256* key) +{ + return raw_aes256ecb_encrypt(plain, key->lo, key->hi); +} + +static __inline AesBlock128 __fastcall aes256ecb_decrypt( + AesBlock128 cypher, + AesBlock256* key) +{ + return raw_aes256ecb_decrypt(cypher, key->lo, key->hi); +} + +static __inline AesBlock128 __fastcall aes256cbc_encrypt( + AesBlock128 plain, + AesBlock256* key, + AesBlock128* initialization_vector) +{ + return raw_aes256cbc_encrypt(plain, key->lo, key->hi, initialization_vector); +} + +static __inline AesBlock128 __fastcall aes256cbc_decrypt( + AesBlock128 cypher, + AesBlock256* key, + AesBlock128* initialization_vector) +{ + return raw_aes256cbc_decrypt(cypher, key->lo, key->hi, initialization_vector); +} diff --git a/include/aesni/raw.h b/include/aesni/raw.h index 9ee6ae9..d648cac 100644 --- a/include/aesni/raw.h +++ b/include/aesni/raw.h @@ -10,37 +10,37 @@ #include "data.h" -AesBlock128 __fastcall aes128ecb_encrypt( +AesBlock128 __fastcall raw_aes128ecb_encrypt( AesBlock128 plain, AesBlock128 key); -AesBlock128 __fastcall aes128ecb_decrypt( +AesBlock128 __fastcall raw_aes128ecb_decrypt( AesBlock128 cypher, AesBlock128 key); -AesBlock128 __fastcall aes192ecb_encrypt( +AesBlock128 __fastcall raw_aes192ecb_encrypt( AesBlock128 plain, AesBlock128 key_lo, AesBlock128 key_hi); -AesBlock128 __fastcall aes192ecb_decrypt( +AesBlock128 __fastcall raw_aes192ecb_decrypt( AesBlock128 cypher, AesBlock128 key_lo, AesBlock128 key_hi); -AesBlock128 __fastcall aes256ecb_encrypt( +AesBlock128 __fastcall raw_aes256ecb_encrypt( AesBlock128 plain, AesBlock128 key_lo, AesBlock128 key_hi); -AesBlock128 __fastcall aes256ecb_decrypt( +AesBlock128 __fastcall raw_aes256ecb_decrypt( AesBlock128 cypher, AesBlock128 key_lo, AesBlock128 key_hi); -AesBlock128 __fastcall aes256cbc_encrypt( +AesBlock128 __fastcall raw_aes256cbc_encrypt( AesBlock128 plain, AesBlock128 key_lo, AesBlock128 key_hi, AesBlock128 *iv); -AesBlock128 __fastcall aes256cbc_decrypt( +AesBlock128 __fastcall raw_aes256cbc_decrypt( AesBlock128 cypher, AesBlock128 key_lo, AesBlock128 key_hi, |