diff options
author | Niels Möller <nisse@lysator.liu.se> | 2002-01-12 15:23:14 +0100 |
---|---|---|
committer | Niels Möller <nisse@lysator.liu.se> | 2002-01-12 15:23:14 +0100 |
commit | 9d4b4dfe7cb75f6f139f1dce5c8f300f118711bd (patch) | |
tree | 1096ee1448706e262fd1d9f4b410d5c9c5393b9b /testsuite/aes-test.c | |
parent | 7699f2d5609387e16461b46ad7687685e0d9a43b (diff) | |
download | nettle-9d4b4dfe7cb75f6f139f1dce5c8f300f118711bd.tar.gz |
Don't use m4 for geneerating test programs, it's way overkill. Use
the C preprocessor instead.
* testsuite/*-test.c: New file.
Rev: src/nettle/testsuite/.cvsignore:1.12
Rev: src/nettle/testsuite/Makefile.am:1.17
Rev: src/nettle/testsuite/aes-test.c:1.1
Rev: src/nettle/testsuite/aes-test.m4:1.4(DEAD)
Rev: src/nettle/testsuite/arcfour-test.c:1.1
Rev: src/nettle/testsuite/arcfour-test.m4:1.2(DEAD)
Rev: src/nettle/testsuite/bignum-test.c:1.1
Rev: src/nettle/testsuite/bignum-test.m4:1.2(DEAD)
Rev: src/nettle/testsuite/blowfish-test.c:1.1
Rev: src/nettle/testsuite/blowfish-test.m4:1.5(DEAD)
Rev: src/nettle/testsuite/cast128-test.c:1.1
Rev: src/nettle/testsuite/cast128-test.m4:1.2(DEAD)
Rev: src/nettle/testsuite/cbc-test.c:1.1
Rev: src/nettle/testsuite/cbc-test.m4:1.3(DEAD)
Rev: src/nettle/testsuite/des-test.c:1.1
Rev: src/nettle/testsuite/des-test.m4:1.3(DEAD)
Rev: src/nettle/testsuite/des3-test.c:1.1
Rev: src/nettle/testsuite/des3-test.m4:1.3(DEAD)
Rev: src/nettle/testsuite/macros.m4:1.3(DEAD)
Rev: src/nettle/testsuite/md5-compat-test.c:1.1
Rev: src/nettle/testsuite/md5-compat-test.m4:1.2(DEAD)
Rev: src/nettle/testsuite/md5-test.c:1.1
Rev: src/nettle/testsuite/md5-test.m4:1.4(DEAD)
Rev: src/nettle/testsuite/serpent-test.c:1.1
Rev: src/nettle/testsuite/serpent-test.m4:1.3(DEAD)
Rev: src/nettle/testsuite/sha1-test.c:1.1
Rev: src/nettle/testsuite/sha1-test.m4:1.4(DEAD)
Rev: src/nettle/testsuite/sha256-test.c:1.1
Rev: src/nettle/testsuite/sha256-test.m4:1.3(DEAD)
Rev: src/nettle/testsuite/testutils.c:1.5
Rev: src/nettle/testsuite/testutils.h:1.3
Rev: src/nettle/testsuite/twofish-test.c:1.1
Rev: src/nettle/testsuite/twofish-test.m4:1.3(DEAD)
Diffstat (limited to 'testsuite/aes-test.c')
-rw-r--r-- | testsuite/aes-test.c | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/testsuite/aes-test.c b/testsuite/aes-test.c new file mode 100644 index 00000000..42b3cda1 --- /dev/null +++ b/testsuite/aes-test.c @@ -0,0 +1,100 @@ +#include "testutils.h" +#include "aes.h" + +int +main(int argc, char **argv) +{ + /* 128 bit keys */ + test_cipher(&nettle_aes128, + HL("0001020305060708 0A0B0C0D0F101112"), + HL("506812A45F08C889 B97F5980038B8359"), + H("D8F532538289EF7D 06B506A4FD5BE9C9")); + + test_cipher(&nettle_aes128, + HL("14151617191A1B1C 1E1F202123242526"), + HL("5C6D71CA30DE8B8B 00549984D2EC7D4B"), + H("59AB30F4D4EE6E4F F9907EF65B1FB68C")); + + test_cipher(&nettle_aes128, + HL("28292A2B2D2E2F30 323334353738393A"), + HL("53F3F4C64F8616E4 E7C56199F48F21F6"), + H("BF1ED2FCB2AF3FD4 1443B56D85025CB1")); + + test_cipher(&nettle_aes128, + HL("A0A1A2A3A5A6A7A8 AAABACADAFB0B1B2"), + HL("F5F4F7F684878689 A6A7A0A1D2CDCCCF"), + H("CE52AF650D088CA5 59425223F4D32694")); + + /* 192 bit keys */ + + test_cipher(&nettle_aes192, + HL("0001020305060708 0A0B0C0D0F101112" + "14151617191A1B1C"), + HL("2D33EEF2C0430A8A 9EBF45E809C40BB6"), + H("DFF4945E0336DF4C 1C56BC700EFF837F")); + + /* 256 bit keys */ + + test_cipher(&nettle_aes256, + HL("0001020305060708 0A0B0C0D0F101112" + "14151617191A1B1C 1E1F202123242526"), + HL("834EADFCCAC7E1B30664B1ABA44815AB"), + H("1946DABF6A03A2A2 C3D0B05080AED6FC")); + + /* This test case has been problematic with the CBC test case */ + test_cipher(&nettle_aes256, + HL("8d ae 93 ff fc 78 c9 44" + "2a bd 0c 1e 68 bc a6 c7" + "05 c7 84 e3 5a a9 11 8b" + "d3 16 aa 54 9b 44 08 9e"), + HL("a5 ce 55 d4 21 15 a1 c6 4a a4 0c b2 ca a6 d1 37"), + /* In the cbc test, I once got the bad value + * "b2 a0 6c d2 2f df 7d 2c 26 d2 42 88 8f 20 74 a2" */ + H("1f 94 fc 85 f2 36 21 06" + "4a ea e3 c9 cc 38 01 0e")); + + /* From draft NIST spec on AES modes. + * + * F.1 ECB Example Vectors + * F.1.1 ECB-AES128-Encrypt + */ + + test_cipher(&nettle_aes128, + HL("2b7e151628aed2a6abf7158809cf4f3c"), + HL("6bc1bee22e409f96e93d7e117393172a" + "ae2d8a571e03ac9c9eb76fac45af8e51" + "30c81c46a35ce411e5fbc1191a0a52ef" + "f69f2445df4f9b17ad2b417be66c3710"), + H("3ad77bb40d7a3660a89ecaf32466ef97" + "f5d3d58503b9699de785895a96fdbaaf" + "43b1cd7f598ece23881b00e3ed030688" + "7b0c785e27e8ad3f8223207104725dd4")); + + /* F.1.3 ECB-AES192-Encrypt */ + + test_cipher(&nettle_aes192, + HL("8e73b0f7da0e6452c810f32b809079e5 62f8ead2522c6b7b"), + HL("6bc1bee22e409f96e93d7e117393172a" + "ae2d8a571e03ac9c9eb76fac45af8e51" + "30c81c46a35ce411e5fbc1191a0a52ef" + "f69f2445df4f9b17ad2b417be66c3710"), + H("bd334f1d6e45f25ff712a214571fa5cc" + "974104846d0ad3ad7734ecb3ecee4eef" + "ef7afd2270e2e60adce0ba2face6444e" + "9a4b41ba738d6c72fb16691603c18e0e")); + + /* F.1.5 ECB-AES256-Encrypt */ + test_cipher(&nettle_aes256, + HL("603deb1015ca71be2b73aef0857d7781" + "1f352c073b6108d72d9810a30914dff4"), + HL("6bc1bee22e409f96e93d7e117393172a" + "ae2d8a571e03ac9c9eb76fac45af8e51" + "30c81c46a35ce411e5fbc1191a0a52ef" + "f69f2445df4f9b17ad2b417be66c3710"), + H("f3eed1bdb5d2a03c064b5a7e3db181f8" + "591ccb10d410ed26dc5ba74a31362870" + "b6ed21b99ca6f4f9f153e7b1beafed1d" + "23304b7a39f9f3ff067d8d8f9e24ecc7")); + + SUCCESS(); +} |