Browse Source

Extract test vectors to JSON files

Oliver Gugger 1 year ago
parent
commit
ec7426b449
8 changed files with 13401 additions and 1227 deletions
  1. 79 1227
      aez_test.go
  2. 12290 0
      testdata/encrypt.json
  3. 34 0
      testdata/encrypt_16_byte_key.json
  4. 42 0
      testdata/encrypt_33_byte_ad.json
  5. 34 0
      testdata/encrypt_no_ad.json
  6. 442 0
      testdata/extract.json
  7. 382 0
      testdata/hash.json
  8. 98 0
      testdata/prf.json

File diff suppressed because it is too large
+ 79 - 1227
aez_test.go


File diff suppressed because it is too large
+ 12290 - 0
testdata/encrypt.json


File diff suppressed because it is too large
+ 34 - 0
testdata/encrypt_16_byte_key.json


File diff suppressed because it is too large
+ 42 - 0
testdata/encrypt_33_byte_ad.json


File diff suppressed because it is too large
+ 34 - 0
testdata/encrypt_no_ad.json


+ 442 - 0
testdata/extract.json

@@ -0,0 +1,442 @@
+[
+  {
+    "a": "",
+    "b": "b32811423377f52d7862286ee1a72ee540524380fda1724a6f25d7978c6fd3244a6caf0498812673c5e05ef583825100"
+  },
+  {
+    "a": "00",
+    "b": "cc01088536f784f0bb769e41c4957b6d0cde1fcc8cf1d91fc477d4dd6e3fbfcd43d1698d146f348b2c36a339682bec3f"
+  },
+  {
+    "a": "61",
+    "b": "7d40de16ff771d4595bf70cbda0c4ea0a066a6046fa73d34471cd4d93d827d7c94c29399c50de86983af1ec61d5dcef0"
+  },
+  {
+    "a": "",
+    "b": "b32811423377f52d7862286ee1a72ee540524380fda1724a6f25d7978c6fd3244a6caf0498812673c5e05ef583825100"
+  },
+  {
+    "a": "54",
+    "b": "daf521a939bb5b3ec708986f3cd2b8b661c47c43405d6ff02149abade1c4b99bab203c46e36523fbca30baefc3026936"
+  },
+  {
+    "a": "5468",
+    "b": "f02332101e689efe4f159dfd58754bcdb9dc39f7ff7da74507116f0903b6a7b72b798c5a2a02790f65e51d99a95cc45e"
+  },
+  {
+    "a": "546869",
+    "b": "6c570ea6a64a4ca94f5d4bd38a1ed59ced479554a32272747793a469e1de4a575fecb2764b139813e68a28d84c1b65fe"
+  },
+  {
+    "a": "54686973",
+    "b": "5d27398e78c1072e79ef8f3c835d2fee4a215d1eba33e1b808c4080ab3d3c8fa2d076dc9b25492937fc80dcca71d75b7"
+  },
+  {
+    "a": "5468697320",
+    "b": "586d8bf55a1931a9a5d691bc18b7d3018742ec40b071b894abf4799f209ae5f83054355ec05bc17b0cebe77fa8412a3b"
+  },
+  {
+    "a": "546869732069",
+    "b": "bd58c6a1d9efff21c2b8a7f79f92ac1c7ac15d727181511506e32fc9a6724fbff4922b57ac9b48db5889b83b18b91a6e"
+  },
+  {
+    "a": "54686973206973",
+    "b": "ddfac65dea535ae6992036d1139b09a18e66fda08a4bdb80ce490dc5d2dcf7e5d74bfa867d754929593f9d38db45a4cf"
+  },
+  {
+    "a": "5468697320697320",
+    "b": "af5d47462eb0db31b0dd62daff652bdfc9240f7383b4bc9dd15ce0551e032a20ebbf09ff46de3c99d993cc06de4f1adf"
+  },
+  {
+    "a": "546869732069732061",
+    "b": "d04bb339698b2a8a5635d090182f322ff9dc9a1c4e1bcda6b12a045dc63939a0a8da2966cd5750bdc8a264948c11757f"
+  },
+  {
+    "a": "54686973206973206120",
+    "b": "1bcff4fcba7abbf96bfde2ef7aea15e56851bc11810f94945bb21d1951e2f3f05d2a3c548f31b675c570d45d170f47c5"
+  },
+  {
+    "a": "5468697320697320612073",
+    "b": "52c7833610e6881eb05e4e1c9af77c9b199ab6764cb6612048cab09b83f32d361f38e45cf963c4009c01c5874b916de4"
+  },
+  {
+    "a": "546869732069732061207374",
+    "b": "0f9523eb7433e509cbdac6812ab9696b114c0dac7ca22bf4097aeea3da8723d359f14afe737d959c599854f2b8332fde"
+  },
+  {
+    "a": "54686973206973206120737472",
+    "b": "a2e18b316c3cfd30eb66bb49e10138d4f38e80062b0b2620888c95ad6eaa32c3aff7b77b0118895272942228c5d6800b"
+  },
+  {
+    "a": "5468697320697320612073747269",
+    "b": "2923d6419596a309107a369444ed7c452fe0e148021d8a475a5b952ffff11f1ab162741e1dc626709b69442d1517d7bc"
+  },
+  {
+    "a": "54686973206973206120737472696e",
+    "b": "f523b144e2c0ca4309b4edbffcc65eef8d405b88e8a559e53c981950d4397c2adb98f19d2a098ac09bbca063de2a271d"
+  },
+  {
+    "a": "54686973206973206120737472696e67",
+    "b": "d912a63984871adca67ab2839b56db5a457ed7ac01ab0ce5de9779519e419a317380cc9f6db43ff2a3ffb1147ba806a6"
+  },
+  {
+    "a": "54686973206973206120737472696e6720",
+    "b": "7cf62feebaeca796bd0cd56fb5f84558e2dc79591a1cc27a6d40a15ad9192a01f6a77cf238161f1778c6091f86c7c73e"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f",
+    "b": "f923913f0dfcbbc3c6805a60f9a4449d5e905db1db607019f268035ce386f12c295d9d32e896308872e97d4a2b716372"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66",
+    "b": "a6c4574ce28550a028079c434f5aeee62025902ec3680f59ebb1e5a46a6d62051caabb713ca40db9c796da8f9f4036e3"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f6620",
+    "b": "6a0a8ae0bec90fc8d12cbd6ba16a3e755ec12d282ede32dbcd2b960e238f9d5dac588ac74b9fd40e4c6d333d0f3b58bc"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f662061",
+    "b": "9b9b15d59e16af90a4bdc74a5fd702b615ab3fd744482d855d7509215b287e94fda6c6a37b755851be637d9b021477ba"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174",
+    "b": "ef273c43f1be91f10492db1adda4175d4e1b052fdc436065d793fe1580458f10d6ae3f61baa69cf056d0adb0a8a97350"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f6620617420",
+    "b": "4f0f846459388013f4982c4290658bdcd8255b5afcd353e97f8f8dd181726e1d9e0521fe93cf7b822f229fa6cac0eef1"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c",
+    "b": "3d49a34bcb52f18d586755c4dc0331f5f9f8b9e5cc347b5ec216facf64503148cb94fb62c9df93bbe9da71c7e021e9ad"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65",
+    "b": "bae596609c2c50738e62bf7a1cc9925d41d8ddbf4325cfb0c9da4e3586b3ed78c5625c2651d4dea30311bd8c6d33da3e"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c6561",
+    "b": "0b559dd631495c73886ffc696265a5f58e38d223a8178707e83a4637aa71114c7d7b977513d2b2936b0b57965981dafb"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c656173",
+    "b": "2cbb8e360f7ae1e3f3831679320e5095a6993ce0620a07cbab5900018349884cda27f4c1c87943ab262c7939eb312da4"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374",
+    "b": "f704e5879a397b2947cdb2c76f7eb6b011439e362350a352302a32d8a40dc65f7abadf1d202164918caa4be61d818fef"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c6561737420",
+    "b": "db3f982747a3302466a2b0c205549989dd85da32367c486f481fb60f029dd5475b83da491ee58ae03eaa9522d9f53916"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c656173742065",
+    "b": "b336d23d2e67632ad807b8e69050df9943126a1dc29102d2f9cdf554da0fe011e14d5097ec533e92658192142dc9e8fc"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569",
+    "b": "a06a1acd5581cf8666246ba4f0085576ff3b24a1e82268e634254c68215ea3c0945fda72a1b4fc1cdde63df2026578ea"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c6561737420656967",
+    "b": "aa9ca3ade6ab14ece6be4014747d782e078461d285e8720e8be115a98ec31e6227812e81eeafe7f745f69de80a050bf8"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c656173742065696768",
+    "b": "a1962cd4dfa84ee42acc5adc5769d367cc041e7ed3ae924af6d210b55d8f48e289b19798cceeecc41b25021611347768"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874",
+    "b": "47c769d573ceb0b2d1eeebd5dbbda36d95bfb9a324a9a0afd2531bddb8219575c0e8ee1521535f71c38ed5cb4c70597e"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c6561737420656967687479",
+    "b": "c87a4024777ccae8a4c59d77aaff8b26f7bb877ffc27b9cb1458147fd449c640bb9fd749fe525f598edcc2fc24aeb290"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c656173742065696768747920",
+    "b": "e98e15be651be268a8f3e59c51ff5808ddb4a927672b8c5d165e7d887aa3bb4a72874d21ae7d560c0eee25012ba46ce0"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063",
+    "b": "d981ccf422df7693dd24482db4cb88eac1d5a3b048f8b8d6c15a0dc43017afe1b2ab0990b712a77f8b4945ade6bab290"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c6561737420656967687479206368",
+    "b": "053ff5de91342c3ee1a7c188b4e3d226f799cc7ff620340b05e7056bfcac686c17ebf8405db5202347be46abf53d4b08"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c656173742065696768747920636861",
+    "b": "cdbd3f66ee5b5ea99e93fcda2498e31c1a74423f30739fbc1874663ce6313be500aab25b8f9c3ce3f0d67fb6c7e23712"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172",
+    "b": "f94861da2e5ccc07938c53271d5139646ecdc709fd0a05f6b78ecba5e30d65e572d22995d84996996ff60b8b163f15e4"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c6561737420656967687479206368617261",
+    "b": "37714f72265152b4bdd72fdff1e8540e6b786aba3f51280aac2bcb4afe118efd3c68dd9bf4bbaa82d83e53f85f3fa6f1"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c656173742065696768747920636861726163",
+    "b": "62ac741aab579a6235512acc2d6201cdb95441e3f64f1d64e321a562398f516599befe6ea779ce6de69a7f152dfc3478"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374",
+    "b": "ac679fbd3da64333db9f618f95c99356432b4aaf6e3c136d5cca053f18f6a79d058aa41363c1c46381454e9bc3361395"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c6561737420656967687479206368617261637465",
+    "b": "a987109e63b2aba64f9267a235d21d40f5b93886bce0e70009d0b7123797719bc21573f68cbc0b7c0c1a5f7978651bad"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c656173742065696768747920636861726163746572",
+    "b": "5ea6c08993a1da2ae089917c02217ca53f71b8ccf6e17000b879cfd7898166f77d1a528e0a3b884f76ceaeffb8d23a14"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273",
+    "b": "2461695d7c02a5d2aaaead1302539f3d39526e84431d9fa10af5a300fb5b004b0f2d06410c6894c737346c1221f8f149"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c6561737420656967687479206368617261637465727374",
+    "b": "715f90537b4a766d39d5619228593228ccb7c57536b7d40276c43b4c32e3f112a2eca21f0cb464d6e9ca777d3a102452"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f",
+    "b": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20",
+    "b": "f765fccbefc1fb3d4862174eb2ff212ad7be8f44f6eacd56bb514163c689b4095af0d8e5ba6b2d3b50500916051b61e7"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f2065",
+    "b": "9c99141bda7e76b116ad6932d3ca234a94782bc6d5bd7f10089c3b0ceeab0b8aedff1d6c2ec4cba89e0167040dccf5bf"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e",
+    "b": "314e431774427a6c75a462448e327e959cc4e5f8102c7a19ac81f7d35f2bb9859b87bdff0bd7acb2e1e438c6d17d0559"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e73",
+    "b": "f83d6606272eb91828df7cd3e4feb2a031638716dbf74ed1ae02988f2e00025a19081037a8aca3cf6aff1850c0f4d58b"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375",
+    "b": "66e6fe7655fd1709b3b2689b06b378c1e080df721c0af60b8fc1fd3deb0597cd0743d0cf8bd47387ad3d23349657b470"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e737572",
+    "b": "3b7c4ebae53c543af881f1b56bf57dfec8495856703039e978edca255c12d611934ea4605681efec9bbcd175f019976a"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e73757265",
+    "b": "8e5353b8daaae66da3d590d9c6396e406c5443e6acbf442d39153212b7ddbd9a3e37a40a07b52c89c778b6304a6687e6"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520",
+    "b": "9ab8e0eae083209386ab026a979b337387c8fd0b8035bd41d2bb4974ddd6ce0221e4e22be849eaf6d78450e31bba9e49"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e737572652077",
+    "b": "8dd763c0cd49fbbcfbb7507baf4467f808800d5e38ea23743057f2c5e26834052ea3a8b7db9d9444f4b2233b8c0d58c8"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e73757265207765",
+    "b": "2fe9a4aaae320bdef0aabd1dc4966c1c85f628d4d7fb4d1a9c392a5aaa8ce54936b9165ca28f8c290f9c210914580f89"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520",
+    "b": "c443b53b6b7d559f170bfaf96bc8e43032578b415d3ab5cfab9bfa6cf2ba3c3e4bda8208f22c5cb5dfb38d8da636ee5a"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e737572652077652063",
+    "b": "90384ac7e88aaec5eb4366c60b7574255a20ea6831631f096d1e481141ee980eb13b1a9aa8f2908f4220c189d72094a4"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f",
+    "b": "81be5f6808b11d32c12ac6b67164d63821083781385efa2d04b1c9001ae7115fd8f2f359530397113272ec1394b148ca"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f76",
+    "b": "54230baf9c0450070a43d7bf9ad1a7a968eaf505b955979a25ba506863936bc3e088309e691bc4c47166b318b208eec6"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f7665",
+    "b": "3e3f50fb297b3967dcd7883c25e481edeb27ee3e607d76b28af21957ebf6dca665ba13bd75d22db0311f96a9d64b5c8a"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572",
+    "b": "78fba17f99696698ff3d96ad301c762ec7eba2d332c41bb35f51985546166a7862f18fa40dd888b1d38d4ebbe15ddd4c"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f76657220",
+    "b": "0b58401c86e45ca545d53c249f5453b7e136b71289a7e82d297333a8b507fb2387b6aabdb83ff12c9dcb05eb9621e50c"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d",
+    "b": "0d508c3d674b9ce17e4c901d47029678382deacf9d292207b30be3371bbdc8bba78b754d2653f62d40111763adfd4588"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d75",
+    "b": "c05a747303cf71ead2e7b09ff7b35b0705bcc22cba2d7723ebe7e6cb82b3880d092b7ce8ad83b51b2c622a693c6855ec"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c",
+    "b": "2f1953cf80ad10720b407d75b8f0456aa6bd4292ec6e39f6934900a52a0ee39838c8fac2ca1602c82a65052125e79c53"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c74",
+    "b": "9f4a4dfc52cf65d1c63ee84da0bb8f4c34b5da4e258c2656ddc928431e4fe74034e4b17941f5a0da64a78586e85e77bf"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469",
+    "b": "0dc540e8d16ad800aaa199b24dc75ef9fd0a96edff06f0b6990329124309a3e7f40bdc40974f6ae01d62fd2b1c1fa458"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c746970",
+    "b": "0d9aef0734f72584bbf4f0759c696217567e2ff9bb4c05512db8c98e6e741f78f441ea2dc8b9e8a1bba2a79f62cce135"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c",
+    "b": "f168e5a7946c7fd20b7e45a6380cff2ff9e45f3e0d35e3f5ccc0636f1bd532d1548bdb2c48f8b782e5a8cce3d3c7d907"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c65",
+    "b": "7e8ccbc33f1c973e80f88d3584dfd9153af41f3d716b0c402023b7b5c09ad4e7bb640dd9af76136ae892020b350e3195"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520",
+    "b": "9b07b1a47a499a941b2a1a3a413099978338f33853d332de7dc0a5e340545efd25345f74382d38d9e9ecf293cd932353"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c652062",
+    "b": "9da1f99c4f4e11424ff3b44d7cff1f9c6aa306563790444c58d6ba49c7e5c4a586357a5b989caf3399af6ffe39910f80"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c",
+    "b": "3c7f792d190ac0627af870734ab589510d8f37c537889243ac6db3f10c937a4553ace5ee3556109f410339c97d12280e"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c61",
+    "b": "af150a7d3e8ca127f777cd2b249f23537e4b168cce8a3e5dca966600f8aba94f5f1ddc26283781ce7e0d8871ef25e29b"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b",
+    "b": "2f11a63f46c0fa53a8f29927fe3785b3aeabb1b8fa9ff08f1636fd9a33d438a5822e399ce1f2fc6266e91023ae793bd2"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65",
+    "b": "8444204873f7e2ec020b2a412f317b96ffda27abc65acb4e7a8aa2fb1c9fe3caf695015f32256375b42cf587273ac3cd"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b6532",
+    "b": "6e08340cb1d187feb633e8068416cc442f55ce2a62bdfad2fb0a99e9a3e88ca744f2c8940e6d6823f9e3124ba0c3a7a4"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b653262",
+    "b": "2bd1eb962821eec46d43edbbe7f49c03ec0cdb44d33dd86af3a6eaba3ab6196fa8d25c5948cb9157ea60c337fff6bc11"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220",
+    "b": "87b03dfcbb0dbbaee18e6777ad0563b09caf619c45eca13d85942e8f5a769119e4381e3928ea51ba70ee985ce752f486"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b6532622062",
+    "b": "bd77be3287b68edccfe6f01ae87e00d97138169985a07c70794487eda254a9ae71f7ab8ee87e0e227b330ae188195e43"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c",
+    "b": "2d307e897cfb6074f336c51f91eba665458b68db462f375c7c412708ee32019edbd8ffaa21a50fc10843437d736496db"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f",
+    "b": "023cc1564384632b304a5f5e2f5830dd9a09b468af17482863520f77cf95886c8597c674e1ee5a7ab21c89d879002f9c"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f63",
+    "b": "33a56c54a244bdfc75f86307e5e0bd46e52807b4077877af8b4a87f020539dc8f456048daead840580d6753a7afc6cc0"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b",
+    "b": "35efd714370de249392f29fb4563c227da37a4f9309cb4fe554187aeeb9d465eabc562ec7224ff4b040502b7eb8bb921"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b73",
+    "b": "d7035251df5948bd745c4a45cee2d470392f9e445e93e6cd9c3e9b3c8466add370cb7eff0f690fa461a6e39091cb96f4"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e",
+    "b": "fde4209380afcc3bda02c4473e3008cb1fe1539e18ad708587ac1eac7cc574aa320ce1f7a96c6b47dd1e0d787732cf7a"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e00",
+    "b": "4bd2cfbfee954c1e3c21fbcbb17defe9a72dd7481a48b78db962b251cfe52d8d8963c11b7376c73e0ced200ab5437401"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e00ff",
+    "b": "9bace65a1c9c35dddc797de45af9df81660adad2c06fdf1c0078c051132e20615be28a75f19d21a08462352328b96c2a"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e00fff0",
+    "b": "a85dd7e1f5e697ba81b1012197aafb105b6edc7cf041e39bfd3ddcc40a03710c6bb57843177a2c21de67eb492c347f00"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e00fff0a0",
+    "b": "821d091349e0835296a6581e42646871304ce1fd2694c74d15f81da764456deede12829adacb4351f0a99bd4f8167aff"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e00fff0a020",
+    "b": "5303f1be9ad3afdd13022b031e20db7a00c786a12b905b52169c3479327787deae0d0c645dbb0fadcb3930772cb10a61"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e00fff0a02041",
+    "b": "a026af05ce73cecfba8e662b437a6742abd254c55b36752d80da54f20382c7514fac11d69c00dc00ff07ea7d3a101770"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e00fff0a020416c",
+    "b": "c0f5013596ba4d075352b7983c2877931d4668eb9a5dd5aa8817abbe72910c967cf2dc5da57cda7bf80273def9135b75"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e00fff0a020416c73",
+    "b": "109676a183b7248b86ad4f27f0eaf5ca5fd089cfec6097a27c48621a8f3a7c915b5980908046ddfc482528a4274bcb96"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e00fff0a020416c736f",
+    "b": "50d619f2b35841edc93dbc88b27085d4873ebb23dd0916695de0b80951fb7f097a499d260df65fa6f1cceca40d5d3987"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e00fff0a020416c736f20",
+    "b": "29129404f23063bc3c355abbd788ca37137e3bf52c6205b4613f03da57421d4138e7a4f9345c2fd4fb95d3875e315ce8"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e00fff0a020416c736f2074",
+    "b": "5ac6f9f13d808f9312a00adc026c246402bae0ac546351a5b5f4bc0c54897ddffe1c65be65a7a89d2c893e53acc42003"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e00fff0a020416c736f207468",
+    "b": "61644430d6431180e658516266536b64658b88e0cafcce978a5fa56320d4ad6c48b22f120cb29b3f6abd3ee6aeaba4fa"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e00fff0a020416c736f2074686f",
+    "b": "41b5d7bc94ae0a4ea268d137088f690efe03363005b732cfefcfbf699623e11acf789ef79823960f7838413c52783c8d"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e00fff0a020416c736f2074686f73",
+    "b": "e6555bf8e985822cc45d0f9657ec05701b4e64522af2aa6551103c110308d2e472bc7ed39c8b07f6bd4987a787f8d5df"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e00fff0a020416c736f2074686f7365",
+    "b": "81a78efb801fcc36a1079145f4ce063e3ad80f249ec5fbd7d8d684fe251a9e0c2f453410beb28f333960622739bf32c3"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e00fff0a020416c736f2074686f73652e",
+    "b": "371a28725a1388c3a4ba96f5104774c4b7bee4561af91f3ab878fe8e3ac22a4db4aaca4e9cdd2482a1e9bd6c09f81ddc"
+  },
+  {
+    "a": "54686973206973206120737472696e67206f66206174206c65617374206569676874792063686172616374657273746f20656e7375726520776520636f766572206d756c7469706c6520626c616b65326220626c6f636b732e00fff0a020416c736f2074686f73652e00",
+    "b": "390c29a67d96240f38afafe716736075ee5031167fca41e479990db1573a6aa7b5d3ef62a171db40682438e6ec7292ec"
+  }
+]

File diff suppressed because it is too large
+ 382 - 0
testdata/hash.json


File diff suppressed because it is too large
+ 98 - 0
testdata/prf.json