symm/gcm.h, symm/gcm-def.h: Implement the GCM authenticated encryption mode.
[catacomb] / symm / t / serpent.local
index 60bc1a5..b41ebef 100644 (file)
@@ -50,3 +50,385 @@ serpent-cmac {
     1e72d7b97e23e6eabdff3bcd211499268878dbf30f1dad89d4b9b12012e4713df46795630e7952d22bb02d
     8ef0d030ddb7bd4c700e15efc563f5cf;
 }
+
+serpent-eax {
+  ## Taken from Secnet, with thanks to Ian Jackson.
+
+  233952dee4d5ed5f9b9c6d6ff80ff478
+    62ec67f9c3a4a407fcb2a8c49031a8b3
+    6bfb914fd07eae6b
+    ""
+    ""
+    1271ec1e68330eb461a96d3a3a7a2707;
+  91945d3f4dcbee0bf45ef52255f095a4
+    becaf043b0a23d843194ba972c66debd
+    fa3bfd4806eb53fa
+    f7fb
+    1c73
+    67d3db493a1f7b054ececa2a2cf37ee6;
+  01f74ad64077f2e704c0f60ada3dd523
+    70c3db4f0d26368400a10ed05d2bff5e
+    234a3463c1264ac6
+    1a47cb4933
+    2439712b59
+    b13982351ba05b25bb2bd3b95df62d73;
+  d07cf6cbb7f313bdde66b727afd3c5e8
+    8408dfff3c1a2b1292dc199e46b7d617
+    33cce2eabff5a79d
+    481c9e39b1
+    f1d718884b
+    e94b29e143a264b54e283ca9e439c90d;
+  35b6d0580005bbc12b0587124557d2c2
+    fdb6b06676eedc5c61d74276e1f8e816
+    aeb96eaebe2970e9
+    40d0c07da5e4
+    5936db85df31
+    199ba3556a5d5eff1964a6befea0d950;
+  bd8e6e11475e60b268784c38c62feb22
+    6eac5c93072d8e8513f750935e46da1b
+    d4482d1ca78dce0f
+    4de3b35c3fc039245bd1fb7d
+    7a3a7997ee349b57152cc43f
+    723903a85b09d86456315ac0d9180724;
+  7c77d6e813bed5ac98baa417477a2e7d
+    1a8c98dcd73d38393b2bf1569deefc19
+    65d2017990d62528
+    8b0a79306c9ce7ed99dae4f87f8dd61636
+    73548ffaf45d2617eb25ad1dffa1842083
+    6d48394d5ef2cd2e0e30cdd2f4c52d96;
+  5fff20cafab119ca2fc73549e20f5b0d
+    dde59b97d722156d4d9aff2bc7559826
+    54b9f04e6a09189a
+    1bda122bce8a8dbaf1877d962b8592dd2d56
+    e8bd1c6fe47df149a141ce813b0c1239542e
+    c4cbf7b3968388d631e6f4ffe86e14e7;
+  a4a4782bcffd3ec5e7ef6d8c34a56123
+    b781fcf2f75fa5a8de97a9ca48e522ec
+    899a175897561d7e
+    6cf36720872b8513f6eab1a8a44438d5ef11
+    e4a9d72847d437b85f10b7daa46f1e00e350
+    9af0b97961c39dfbb70170b6c4cadbc1;
+  8395fcf1e95bebd697bd010bc766aac3
+    22e7add93cfc6393c57ec0b3c17d6b44
+    126735fcc320d25a
+    ca40d7446e545ffaed3bd12a740a659ffbbb3ceab7
+    83d69403eae9386b679daeaad2951465f8ddf9be1a
+    ffad1c5fef072f8b48bd58c07fee3d83;
+
+  ## Locally-generated tests for edge-cases.
+  60d7bcda163547d348b7551195
+    ""
+    ""
+    ""
+    ""
+    47f4f974dac8fbccb2d85c4dd030ecc2;
+  e77022907dd1dff7dac5c9941d
+    26
+    ""
+    ""
+    ""
+    fdd1a67df6ef4962c0e07c3bcb258fdb;
+  d0c6eb14ad568f86edd1dc9268
+    ""
+    ee
+    ""
+    ""
+    dddced0e626e1a606ad6150f981231c4;
+  ee533285a6ed810c9b689daaa9
+    ""
+    ""
+    06
+    93
+    994b5c972bc7d85771220863405b62be;
+  0d2d4b6003062365b0a54364c7
+    6c160f11896c4794846ecfa14a7130c9
+    f137120634c9519848a877ff77bf79192a5b50ade5d9cd739a3d1f337f29549e6b0d27a4ba234085406a6136512061f7
+    080cc07df0591d8fa21f2dd88374d8cde8e160ad10997a21635c6d62c9269029df3e6057acc87638f508046733d9ff61
+    82f5aab367d2f92bb06cdbdcf3b840fa03775f8473bc2c7923d06b0d264679c2bb8ad3a0b4008946198caa858ac3035b
+    4be2dd26de2bb142d08d2e80ff7e1556;
+  cdbda3b3e9878731ebfedd4705
+    e505da1435dceaa7b1cc49ae1d50c3
+    8201a894476b3f102b752eb9529533966f27043eb621b7f65b000961040ef2f9b2fc5fa450727a9b542cde
+    52ebfda19d0ccc520f215eb57bb3a4f3ebbbb18ac6c95a97a48030370c33d090c54215abd6b3ad54efc9a38378c5b93bf4f2aad260
+    4a2f0f21a4c240fcebbda1500c1c87193c1100ab9922b6c02b6200eb6c4c166ba715f09ba95ff7daa0a49a92139b1fb7785198c3cd
+    7597b3928b3811ad02ba9c380fc053b7;
+  5faee2b03fb648e27fff6310
+    ""
+    ""
+    ""
+    ""
+    0a85bbdf824c6fd51bb56934219a44bb;
+  2758fe2b69ac26afa3349829
+    b9
+    ""
+    ""
+    ""
+    8b3c4c5ef77b2b25cd78f8e7ee1a1eeb;
+  4586306fed54154f8f28523c
+    ""
+    03
+    ""
+    ""
+    9dd8b376a786caa020f631ec33e8adee;
+  d4de1600157846b710ee7280
+    ""
+    ""
+    7a
+    9d
+    66d221c6542adab014cde389a8375271;
+  2219bfb474fd71d891f24bb6
+    5d1563259f9eb53b571ea629c54d57dd
+    2d42f70800df9fcbaca48b77dba189196d1ebba10b0467cb9fc2712a199e533fa9156308cdec3f768281e040a9b9a222
+    bd689aef66f5306ceb0c6b08ac8b0a22260c571b4a42bb8fdb233bfa6a5cfb0bad7d95214ade49cb3b6f5fe836813111
+    d70c3fe1525edf6975dd3ec110f44d66ee38812bee278632cd476e9571d90ea3a4181e472841e699acbb613172b3c8d9
+    cf949b9623f6027249246ff3914f4c9e;
+  5c037ba323fe1dc815178487
+    3f0eb5b647da6794c18b5337685a96
+    ed65b9aca338527ef19b09c063c46f88de9fd41e72d7b97e23e6eabdff3bcd211499268878dbf30f1dad89
+    d4b9b12012e4713df46795630e7952d22bb02d7100b8b649377d20a8f083455b663e4ee1315f3c8f2aebfa921451dcd1af5813b70d
+    bbeb0d455e42b31743e6b1f62e7a8beb05b6579140f9523b441f1523fffd56799ea74a815f64cd65fe2d912c0ac88a42d668020ad4
+    aa19b7bc58fb57f2cd072ed13f7a22d1;
+  30ce2f1fef6ef315
+    ""
+    ""
+    ""
+    ""
+    e071f4b5be472b5d27a62d3b59de4076;
+  d0798391805da08d
+    a3
+    ""
+    ""
+    ""
+    9700bb529c726f7f9383103afde5c072;
+  aefc5f8584b7c5e6
+    ""
+    17
+    ""
+    ""
+    beddb35cd6ce26eeccd01fc49467f581;
+  669c0f16e39815d4
+    ""
+    ""
+    e9
+    89
+    a6ea652052db22889858bba51b743f77;
+  cfce3ed1ecdf3d26
+    4a7f16cb16c2e815f422cdf0c8e30308
+    be3c31e6bc58c0b7cadcb658b970e47479a684b5aefa69a4cd52147ed12ca986981a874498ad0abef8bc4fcb70e27e98
+    ef1f0446b42fb144d44b6d00f06dc188d472a784e0c6f21195a3b9f4ae985511265febd11c164720eef9eb1c8dd0b009
+    c343474bde0f534fb167d4f0f45dc029376218f83a54b3dd22eaf08ceb381357ae3c3f73e48d26775bbb3d09ea1300c2
+    9184a5120a75b987ebf1c111ee0f7fe0;
+  51f284649016ed00
+    456331854bc78bf43966eb0cfa9138
+    ddc39908445608fe95e81c2533e31c9c1a9851bc2810d858cbbc8424d126b807e6daa089c3f9099c5ffb82
+    4173d7634c04226f30cbb7f0e4a973a8cd190107314717a77456f3ff669c732b58db8f48af65f7cc9e3fb90e1721b730374ffc9bc5
+    8a5f8d241fd8edabb3447134fced691a560ffc16eb35351f299055d61c65a9d016a8a2aecd321e2aaba5be088bc4e787d23279d3b9
+    2d94ce868ac29109422a40835e92df30;
+  97f56ccbb2f294b38766fc69f6a9f2c094
+    ""
+    ""
+    ""
+    ""
+    cc3b89f1e518665f325656d16078b115;
+  5ffd505003cc0cae9ce021a5f1fa4ffa91
+    54
+    ""
+    ""
+    ""
+    77f9efcf277f9618606fd47f5233bb79;
+  4485f1a1258b2b9b8f0911e32d65cc1770
+    ""
+    a1
+    ""
+    ""
+    4d91889c474511f47711a00d22a37021;
+  8cbfe6effd1ff6778554acf1270485b203
+    ""
+    ""
+    a3
+    f2
+    db79e93136fbbcb2d167a14005e3e4f4;
+  c1c4c967c0a458cb948bdd409b687fa3a6
+    827b480aa3a4c84cef64f6c9b53bf8f9
+    57f4b03cf43e89957f9a3e8128f8743d16687b7bb8deb9bd205b70e04c091d205cdad9e9a79b1abf91b0851e5ca605ac
+    8451399587011677508a15dde524af3e2bee0646541a42c2ecccb44d65bad397abfaf529ee41cf9a05c7efedef340153
+    242f387588ee5c723abeac99f710a02c29c5d9420475d5c81cd7840cdb9c965b2357c9fd6cf4ed18247daf5e5b4908d6
+    72aa25cd54aa0ed7bb78fdf9d491547e;
+  9c51d2a90bbf7f1bfc338ab0ef5746ea8f
+    dcccd213e33f7e8a5718fd25014107
+    c8e7d715a92add9589d1f5c054b2d983514605ec590294a319b9802068a9f891bc5ba5afabf8c3122d12d7
+    ff3c41122d70d17d4569eaff59a332ba58d5d5589bfe079753ee1a957eb6d6699e6b7ea2725cb2dac07ecde95759ac46fee6dda7ab
+    2ea09fe497954fcc5ff649f0c72b229294018f6d69846e4d55b35fcf561d6d73e36fd253241af102f1a5beabca9f878898bebc3c38
+    018ad589b2a12c05238a52773fd66463;
+}
+
+serpent-gcm {
+  60d7bcda163547d348b7551195
+    ""
+    ""
+    ""
+    ""
+    b7a5e3afee9d6b5d3272a42db95fe058;
+  e77022907dd1dff7dac5c9941d
+    26
+    ""
+    ""
+    ""
+    5a3f93b2c28c3208f3f470a28ded0981;
+  d0c6eb14ad568f86edd1dc9268
+    ""
+    ee
+    ""
+    ""
+    31b6ec116273e033816b5ebeb8198b1c;
+  ee533285a6ed810c9b689daaa9
+    ""
+    ""
+    06
+    82
+    1edf5ba454a8cd5ef0aac6153800a101;
+  0d2d4b6003062365b0a54364c7
+    6c160f11896c4794846ecfa14a7130c9
+    f137120634c9519848a877ff77bf79192a5b50ade5d9cd739a3d1f337f29549e6b0d27a4ba234085406a6136512061f7
+    080cc07df0591d8fa21f2dd88374d8cde8e160ad10997a21635c6d62c9269029df3e6057acc87638f508046733d9ff61
+    08276a3d1fd2638903bb85fd5ad5b3abf64d1e384ad5262501e198e697c210d778ef1ca2cb78e3fc462d18daaba7ee12
+    75eb776d709e756036210b8d85056fdd;
+  cdbda3b3e9878731ebfedd4705
+    e505da1435dceaa7b1cc49ae
+    1d50c38201a894476b3f102b752eb952953396
+    6f27043eb621b7f65b000961040ef2f9b2fc5fa450727a9b542cde52ebfda19d0ccc520f215eb57bb3a4f3ebbbb18ac6c95a97a48030370c33
+    6cf5fafa1f1b67aef17c51ecd4cc8807863bb47816d9416eee45e144973c6bfe325b1dd7b29af06a4d9b0e2f993127dcbf33e8075f35781fe7
+    8827e78f2a8ba21a12f6c4078713d83b;
+  d090c54215abd6b3ad54efc9a3
+    8378c5b93bf4f2aad2605faee2b03f
+    b648e27fff63102758fe2b69ac26afa3349829b94586306fed54154f8f28523c03d4de1600157846b710ee
+    72807a2219bfb474fd71d891f24bb65d1563259f9eb53b571ea629c54d57dd2d42f70800df9fcbaca48b77dba189196d1ebba10b04
+    11687e1abefb35846b4c37d820220610a076a589e33bdc58b8b9f4f5318a945421139b3122e26578e3d34e00ab2cb88a0de1590b46
+    75d611a4d23fc1cc399cb1d06475c400;
+  67cb9fc2712a199e533fa915
+    ""
+    ""
+    ""
+    ""
+    2e79ef91df0515538a3bf641867668d4;
+  6308cdec3f768281e040a9b9
+    a2
+    ""
+    ""
+    ""
+    4a3d8a26dac3498e97ec445243d6073f;
+  22bd689aef66f5306ceb0c6b
+    ""
+    08
+    ""
+    ""
+    c47eae4dc6e8e34fd594bcf425c93137;
+  ac8b0a22260c571b4a42bb8f
+    ""
+    ""
+    db
+    08
+    d328c14d09ea87f05101640b5c19ec06;
+  233bfa6a5cfb0bad7d95214a
+    de49cb3b6f5fe8368131115c037ba323
+    fe1dc8151784873f0eb5b647da6794c18b5337685a96ed65b9aca338527ef19b09c063c46f88de9fd41e72d7b97e23e6
+    eabdff3bcd211499268878dbf30f1dad89d4b9b12012e4713df46795630e7952d22bb02d7100b8b649377d20a8f08345
+    681e86e5aebd4a9648b78daa6bc86d34de3970fa7065f26789d65cb8d0d05639849b612fef76214315948d44f3e9c512
+    2a4f1ff8cc104ded9d693f28d62396a3;
+  5b663e4ee1315f3c8f2aebfa
+    921451dcd1af5813b70d30ce
+    2f1fef6ef315d0798391805da08da3aefc5f85
+    84b7c5e617669c0f16e39815d4e9cfce3ed1ecdf3d264a7f16cb16c2e815f422cdf0c8e30308be3c31e6bc58c0b7cadcb658b970e47479a684
+    cbd8037fa6cca0d3c5d760f9775d6ec6b3349a80089425f3a72f47fa138d41ddb7d165fdf2df4d5ea97d430b173363a87cf9d61ef829127ba7
+    f2f7d0abeac736dbcb17c8b11a614ef5;
+  b5aefa69a4cd52147ed12ca9
+    86981a874498ad0abef8bc4fcb70e2
+    7e98ef1f0446b42fb144d44b6d00f06dc188d472a784e0c6f21195a3b9f4ae985511265febd11c164720ee
+    f9eb1c8dd0b00951f284649016ed00456331854bc78bf43966eb0cfa9138ddc39908445608fe95e81c2533e31c9c1a9851bc2810d8
+    78aad8dbb0a294e0d23f61421d9adf39e537651cf5d91bc9e815307a021e916467f1abae1cf7eb09aadf42f053f6c9dbb099b7587c
+    f40974b1334cf4c25e29bc26f608bf94;
+  58cbbc8424d126b8
+    ""
+    ""
+    ""
+    ""
+    65a882a10602424ef433579558fd91db;
+  07e6daa089c3f909
+    9c
+    ""
+    ""
+    ""
+    67a19a1d408be278d46cb09c2d09e5ca;
+  5ffb824173d7634c
+    ""
+    04
+    ""
+    ""
+    af4590dab6b84c9ab769597a6075bb40;
+  226f30cbb7f0e4a9
+    ""
+    ""
+    73
+    19
+    ee176a9eb69f35199805f8c19b5061bb;
+  a8cd190107314717
+    a77456f3ff669c732b58db8f48af65f7
+    cc9e3fb90e1721b730374ffc9bc597f56ccbb2f294b38766fc69f6a9f2c0945ffd505003cc0cae9ce021a5f1fa4ffa91
+    544485f1a1258b2b9b8f0911e32d65cc1770a18cbfe6effd1ff6778554acf1270485b203a3c1c4c967c0a458cb948bdd
+    bcece9311f7669d6f744b547aafeba06c7cb05e623325f183ec1c0b24424f612b10a539f684fd1c0730ee75e5deb2b55
+    d6c09aed972bfb56ab024c80fa114965;
+  409b687fa3a6827b
+    480aa3a4c84cef64f6c9b53b
+    f8f957f4b03cf43e89957f9a3e8128f8743d16
+    687b7bb8deb9bd205b70e04c091d205cdad9e9a79b1abf91b0851e5ca605ac8451399587011677508a15dde524af3e2bee0646541a42c2eccc
+    fd90ce8763bd7ad21f288077677eb3cfee48137ffe89d5c5965b3d99592896c4eb94b6573c1610d266609da17e3192a833bddc1a656e91b4f0
+    87a7ea3dc29335c676a2d8453d5232ec;
+  b44d65bad397abfa
+    f529ee41cf9a05c7efedef3401539c
+    51d2a90bbf7f1bfc338ab0ef5746ea8fdcccd213e33f7e8a5718fd25014107c8e7d715a92add9589d1f5c0
+    54b2d983514605ec590294a319b9802068a9f891bc5ba5afabf8c3122d12d7ff3c41122d70d17d4569eaff59a332ba58d5d5589bfe
+    d29ece81f1d8523540fd3e4edae0f717730b301f05f3c9fae128581349a2740ae49266ed8d83a2216072ed232e280163b9531f80c1
+    9f123aa15e25f65aeda0a8c05855c696;
+  079753ee1a957eb6d6699e6b7ea2725cb2
+    ""
+    ""
+    ""
+    ""
+    0d19fefb39f9d5ca47305f578da4c2a6;
+  dac07ecde95759ac46fee6dda7abc8ad68
+    da
+    ""
+    ""
+    ""
+    33e9c876994b5d473cee7028bd8bc422;
+  ac90cfe22d2f1f2968cc42fa8b669ed3bb
+    ""
+    35
+    ""
+    ""
+    b5f2eefdbd65dad3c85637c4644d81b8;
+  42a9cf44bbc8c6254d980398bd94e66eb4
+    ""
+    ""
+    56
+    a1
+    41f9c05ae9ec028487faba6297d754aa;
+  3d405e51881e99027b8ab9aea3ccf860b0
+    009740763d96836c5f87b95460938de1
+    288c69d80ea12ff4bb5f069b8a2e86041c1b9fc214e9ca2186ddf1f6a7a3aa7e740da967828e3604b35b15ffaa6c3680
+    0d9645563a308ba60076817523bd2abf1261b089d8f23a9c2835076a23faac2cdd67771cc667a8331f0a170b66283e4f
+    62a4e874b9bed58dfa604492bb7d314c941a359fb4704211a03bb5efb5bd1ead5f4bc209c9ed2ec55945e542da07de30
+    9ab10e04cce4cdb21816a452838e207e;
+  834a06148f302c3973accd56f6f24e3395
+    8b8c2e2352fd61e4fa8fec81
+    6ac861a8b33779f09e7a10fc02a8f48afa3080
+    ee119a52a9a817e4f2b94b0820cab383a8cffeea7c486315799dc875fba578c8ec4837898a92142b5b0677da1ac273117b45bcfff5d5f8b6fd
+    6be1ebdac5a498d5c1005189710616d5317726377ccdde02d771a44d9127704c821f1056a1079d34e742ebfdfd11ef3aea46b18655bb2ffe88
+    fd98fa8d62a384d07a991fb3caea3398;
+  e2893232a9f81d14517ffae475f6b94a43
+    a67b3d380d2f9aaafe2dd721c0095c
+    8808847689211450ba8095ffab1eaadf66fd22ac1976063e113ab61f813e28a1397a7974a1d7f4220c785f
+    e426a5a0e80f678d404147842941feeffdc2eb44dc8c0d5e8f444f7f4e0c893959b74dc23a7bb40e7e0013e5150686d2301b43a15a
+    100ee38a4070af0c2e7ea43836fcfa78a65278a09ab122bdcdba11d93b63c2965341b19ff4be55ced558fa76d5c3fcb0227e037572
+    cec6a5923cedad5ad0bc6551a039ed2d;
+}