diff options
author | lloyd <[email protected]> | 2013-03-16 22:23:59 +0000 |
---|---|---|
committer | lloyd <[email protected]> | 2013-03-16 22:23:59 +0000 |
commit | 158b20308dcc5c81e712e2e496fa0a5944e484a4 (patch) | |
tree | b797fed9a06ba62f57b4c6d771d389c493f6ab0c /checks | |
parent | 01d1a8f734b9912301e4c0b6504c5ffa1d09e27a (diff) |
Working GCM. Add support for AEAD modes in self tests
Diffstat (limited to 'checks')
-rw-r--r-- | checks/bench.cpp | 29 | ||||
-rw-r--r-- | checks/validate.cpp | 3 | ||||
-rw-r--r-- | checks/validate.dat | 91 |
3 files changed, 89 insertions, 34 deletions
diff --git a/checks/bench.cpp b/checks/bench.cpp index f7ddc5650..96afd7d87 100644 --- a/checks/bench.cpp +++ b/checks/bench.cpp @@ -62,46 +62,23 @@ const std::string algos[] = { "Luby-Rackoff(SHA-512)", /* Cipher modes */ - "TripleDES/CBC/PKCS7", - "TripleDES/CBC/CTS", - "TripleDES/CTR-BE", - "TripleDES/EAX", - "TripleDES/OFB", - "TripleDES/CFB(64)", - "TripleDES/CFB(32)", - "TripleDES/CFB(16)", - "TripleDES/CFB(8)", - "AES-128/CBC/PKCS7", - "AES-128/CBC/CTS", "AES-128/CTR-BE", "AES-128/EAX", "AES-128/OCB", - "AES-128/OFB", + "AES-128/GCM", "AES-128/XTS", - "AES-128/CFB(128)", - "AES-128/CFB(64)", - "AES-128/CFB(32)", - "AES-128/CFB(16)", - "AES-128/CFB(8)", "Serpent/CBC/PKCS7", - "Serpent/CBC/CTS", "Serpent/CTR-BE", "Serpent/EAX", - "Serpent/OFB", + "Serpent/OCB", + "Serpent/GCM", "Serpent/XTS", - "Serpent/CFB(128)", - "Serpent/CFB(64)", - "Serpent/CFB(32)", - "Serpent/CFB(16)", - "Serpent/CFB(8)", /* Stream ciphers */ "ARC4", "Salsa20", - "Turing", - "WiderWake4+1-BE", /* Checksums */ "Adler32", diff --git a/checks/validate.cpp b/checks/validate.cpp index 60fd729e3..7ae2fba29 100644 --- a/checks/validate.cpp +++ b/checks/validate.cpp @@ -442,6 +442,9 @@ bool failed_test(const std::string& algo, if(params.size() > 3) vars["iv"] = params[3]; + if(params.size() > 4) + vars["ad"] = params[4]; + Algorithm_Factory& af = global_state().algorithm_factory(); const auto results = algorithm_kat_detailed(algo, vars, af); diff --git a/checks/validate.dat b/checks/validate.dat index affd59c7c..e7526e817 100644 --- a/checks/validate.dat +++ b/checks/validate.dat @@ -26292,19 +26292,94 @@ C61A0851AB4E515D11525B92E2B9D850:C825FC7C4D539DC74887CECC70884F37 F956B879EC7F807F1FCB482B53623671:E64F90B4619D93137E6237929EABF297 [AES-128/GCM] -#:58E2FCCEFA7E3061367F1D57A4E7455A:\ -#00000000000000000000000000000000:000000000000000000000000 +:58E2FCCEFA7E3061367F1D57A4E7455A:\ +00000000000000000000000000000000:000000000000000000000000 00000000000000000000000000000000:\ 0388DACE60B6A392F328C2B971B2FE78AB6E47D42CEC13BDF53A67B21257BDDF:\ 00000000000000000000000000000000:000000000000000000000000 -#D9313225F88406E5A55909C5AFF5269A86A7A9531534F7DA2E4C303D8A318A72\ -#1C3C0C95956809532FCF0E2449A6B525B16AEDF5AA0DE657BA637B391AAFD255:\ -#42831EC2217774244B7221B784D0D49CE3AA212F2C02A4E035C17E2329ACA12E\ -#21D514B25466931C7D8F6A5AAC84AA051BA30B396A0AAC973D58E091473F5985\ -#4D5C2AF327CD64A62CF35ABD2BA6FAB4:\ -#FEFFE9928665731C6D6A8F9467308308:CAFEBABEFACEDBADDECAF888 +D9313225F88406E5A55909C5AFF5269A86A7A9531534F7DA2E4C303D8A318A72\ +1C3C0C95956809532FCF0E2449A6B525B16AEDF5AA0DE657BA637B391AAFD255:\ +42831EC2217774244B7221B784D0D49CE3AA212F2C02A4E035C17E2329ACA12E\ +21D514B25466931C7D8F6A5AAC84AA051BA30B396A0AAC973D58E091473F5985\ +4D5C2AF327CD64A62CF35ABD2BA6FAB4:\ +FEFFE9928665731C6D6A8F9467308308:CAFEBABEFACEDBADDECAF888 + +D9313225F88406E5A55909C5AFF5269A86A7A9531534F7DA2E4C303D8A318A72\ +1C3C0C95956809532FCF0E2449A6B525B16AEDF5AA0DE657BA637B39:\ +42831EC2217774244B7221B784D0D49CE3AA212F2C02A4E035C17E2329ACA12E\ +21D514B25466931C7D8F6A5AAC84AA051BA30B396A0AAC973D58E091\ +5BC94FBC3221A5DB94FAE95AE7121A47:\ +FEFFE9928665731C6D6A8F9467308308:\ +CAFEBABEFACEDBADDECAF888:\ +FEEDFACEDEADBEEFFEEDFACEDEADBEEFABADDAD2 + +D9313225F88406E5A55909C5AFF5269A86A7A9531534F7DA2E4C303D8A318A72\ +1C3C0C95956809532FCF0E2449A6B525B16AEDF5AA0DE657BA637B39:\ +61353B4C2806934A777FF51FA22A4755699B2A714FCDC6F83766E5F97B6C7423\ +73806900E49F24B22B097544D4896B424989B5E1EBAC0F07C23F4598\ +3612D2E79E3B0785561BE14AACA2FCCB:\ +FEFFE9928665731C6D6A8F9467308308:\ +CAFEBABEFACEDBAD:\ +FEEDFACEDEADBEEFFEEDFACEDEADBEEFABADDAD2 + +D9313225F88406E5A55909C5AFF5269A86A7A9531534F7DA2E4C303D8A318A72\ +1C3C0C95956809532FCF0E2449A6B525B16AEDF5AA0DE657BA637B39:\ +8CE24998625615B603A033ACA13FB894BE9112A5C3A211A8BA262A3CCA7E2CA7\ +01E4A9A4FBA43C90CCDCB281D48C7C6FD62875D2ACA417034C34AEE5\ +619CC5AEFFFE0BFA462AF43C1699D050:\ +FEFFE9928665731C6D6A8F9467308308:\ +9313225DF88406E555909C5AFF5269AA6A7A9538534F7DA1E4C303D2A318A728\ +C3C0C95156809539FCF0E2429A6B525416AEDBF5A0DE6A57A637B39B:\ +FEEDFACEDEADBEEFFEEDFACEDEADBEEFABADDAD2 + +# From Crypto++ 5.6.1 +006BC1BEE22E409F96E93D7E117393172AAE2D8A571E03AC9C9EB76FAC45AF8E5\ +130C81C46A35CE411E5FBC1191A0A52EFF69F2445DF4F9B17AD2B417BE66C3710\ +006BC1BEE22E409F96E93D7E117393172AAE2D8A571E03AC9C9EB76FAC45AF8E5\ +130C81C46A35CE411E5FBC1191A0A52EFF69F2445DF4F9B17AD2B417BE66C3710\ +006BC1BEE22E409F96E93D7E117393172AAE2D8A571E03AC9C9EB76FAC45AF8E5\ +130C81C46A35CE411E5FBC1191A0A52EFF69F2445DF4F9B17AD2B417BE66C3710\ +006BC1BEE22E409F96E93D7E117393172AAE2D8A571E03AC9C9EB76FAC45AF8E5\ +130C81C46A35CE411E5FBC1191A0A52EFF69F2445DF4F9B17AD2B417BE66C3710\ +006BC1BEE22E409F96E93D7E117393172AAE2D8A571E03AC9C9EB76FAC45AF8E5\ +130C81C46A35CE411E5FBC1191A0A52EFF69F2445DF4F9B17AD2B417BE66C3710\ +006BC1BEE22E409F96E93D7E117393172AAE2D8A571E03AC9C9EB76FAC45AF8E5\ +130C81C46A35CE411E5FBC1191A0A52EFF69F2445DF4F9B17AD2B417BE66C3710\ +006BC1BEE22E409F96E93D7E117393172AAE2D8A571E03AC9C9EB76FAC45AF8E5\ +130C81C46A35CE411E5FBC1191A0A52EFF69F2445DF4F9B17AD2B417BE66C3710\ +006BC1BEE22E409F96E93D7E117393172AAE2D8A571E03AC9C9EB76FAC45AF8E5\ +130C81C46A35CE411E5FBC1191A0A52EFF69F2445DF4F9B17AD2B417BE66C3710\ +006BC1BEE22E409F96E93D7E117393172AAE2D8A571E03AC9C9EB76FAC45AF8E5\ +130C81C46A35CE411E5FBC1191A0A52EFF69F2445DF4F9B17AD2B417BE66C3710\ +006BC1BEE22E409F96E93D7E117393172AAE2D8A571E03AC9C9EB76FAC45AF8E5\ +130C81C46A35CE411E5FBC1191A0A52EFF69F2445DF4F9B17AD2B417BE66C3710\ +006BC1BEE22E409F96E93D7E117393172AAE2D8A571E03AC9C9EB76FAC45AF8E5\ +130C81C46A35CE411E5FBC1191A0A52EFF69F2445DF4F9B17AD2B417BE66C3710:\ +BD70C168B0D4371B0A85B4B5D65D92569B17\ +F9A3D0A25B9F608E2C34621CF4D37357845431E04E585CDAAD7527BF8A2426DEEF451320C78D5EF0\ +9F5B11A8B8C700CD329A3D4CDED92C20F6BF28CB3627681C5B0AF2B5692CC7EC9049008ACBBD127A\ +9CD8DEF00425697E0BCF67E05AEE70EA1A5D7EE95E3B88FBAF3C196AAAECB73E09BDF057AF701A02\ +42394BCC104FF4F75F15D287325FCFFDB7E7FF3A939A80A6A3A9D7570E6EF6AD0BBE6E291338938D\ +2FEBBC7D5EE95CD73E752ACD48915DCAE0A0807E6F4B2ADADBD945667318264EF7D8C2ECC0B8FB67\ +A43614C5F5EA51CADD4AEE91DC371A7FC5A3B4581D1D9DD99608CD2BB0338F82933C19F5B8EBAD6B\ +BA583835FBD29136302BAC163F86CA9E3E6F3B5BFDEFAB3E4B019190AE2EBC0B71034EA9BF882879\ +139FFE76DD997F6729425F3D5C5392762C245769D18CC963C92211B71F564203AFBF68626C083303\ +1D449B02DFA5C0F09FAFCE951FE35F4AD8122AB682A4AF28931113F75615E12DB05DD9247973F1C6\ +057666848C13EDE41192F38948366D468D84CAF896EFF724082D2BAB2376E2813B41A014999B0EE7\ +377758715D9554926AB3514EEB96A0ABD501D94A05692D858190D5AD307CEB6E6C8A63841A8257BE\ +C2527C4B937840AA51292E15834AB801F0275A6A4B1B6E969B7A7FCE217D6F823CDE1760F847E8F4\ +6CBDE152A24F2319EC2A7089D2954259D30332089FF928034391D1B0B8AFD7C8A5D4F8E0DAB5883C\ +A7D581F78E4848DC3B01E5F2A5C01BA8910D0F144BC494E29450271174B866868EE8DC6B0DD396ED\ +9D72F83DE3BB6DE6FEBC64178961E011D0D746C2CE3A0FBD05CDF8FA79AC03E94C88368BD903E142\ +7FCFC30C9D100E220B4CB9B7BA242DA49D334E930B6C4EB877D1DF2C0F8CF4AF7813E2F295929707\ +19846FC52A47FCE6E71DC5E58FC5F49C91BDE56B7A2A68CFA994D6BFA5357A8403A2B37C69A6A0A4\ +35E4AB4C9E450473AF0CDFDBCC238A2DD7\ +4FEA89D75727E82B3A9F9EEB5E217A3E:\ +2B7E151628AED2A6ABF7158809CF4F3C:\ +F0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF + [AES-128/XTS] # Vectors are from IEEE P1619 D11 |