diff options
author | Egor Tensin <Egor.Tensin@gmail.com> | 2015-05-30 05:13:44 +0300 |
---|---|---|
committer | Egor Tensin <Egor.Tensin@gmail.com> | 2015-05-30 05:13:44 +0300 |
commit | 1109190cc2edd86f12cdd16847f3e80e48dccc50 (patch) | |
tree | a688b89f7e4ede0defaeb79ffb8e8a99ece5a395 /test/aes256cbc_encrypt_block.c | |
parent | support AES-{128,192}-cbc (diff) | |
download | aes-tools-1109190cc2edd86f12cdd16847f3e80e48dccc50.tar.gz aes-tools-1109190cc2edd86f12cdd16847f3e80e48dccc50.zip |
detach key expansion routines
Block encryption/decryption routines now don't expand key schedules on
each call.
Diffstat (limited to '')
-rw-r--r-- | test/aes256cbc_encrypt_block.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/test/aes256cbc_encrypt_block.c b/test/aes256cbc_encrypt_block.c index 08ca11b..1436020 100644 --- a/test/aes256cbc_encrypt_block.c +++ b/test/aes256cbc_encrypt_block.c @@ -21,6 +21,7 @@ int main(int argc, char** argv) { __declspec(align(16)) AesBlock128 plain, cipher, iv; __declspec(align(16)) AesBlock256 key; + __declspec(align(16)) Aes256KeySchedule key_schedule; if (argc < 3) exit_with_usage(argv[0]); @@ -37,6 +38,8 @@ int main(int argc, char** argv) exit_with_usage(argv[0]); } + aes256_expand_key_schedule(&key, &key_schedule); + for (int i = 3; i < argc; ++i) { if (parse_aes_block128(&plain, argv[i]) != 0) @@ -44,7 +47,7 @@ int main(int argc, char** argv) fprintf(stderr, "Invalid 128-bit AES block '%s'\n", argv[i]); continue; } - cipher = aes256cbc_encrypt(plain, &key, &iv); + cipher = aes256cbc_encrypt(plain, &key_schedule, &iv); print_aes_block128(&cipher); } |