symm/t/chacha: Missing test from RFC8439.
[catacomb] / symm / t / chacha
1 ### ChaCha stream cipher
2
3 ## These test vectors are from
4 ## https://tools.ietf.org/html/draft-strombergson-chacha-test-vectors-01 and
5 ## http://datatracker.ietf.org/doc/draft-irtf-cfrg-chacha20-poly1305/
6 ## Note that the latter messes up ChaCha's nonce/counter split, so we
7 ## compensate.
8
9 chacha20-core {
10 1
11 657870616e642033322d62797465206b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
12 76b8e0ada0f13d90405d6ae55386bd28bdd219b8a08ded1aa836efcc8b770dc7da41597c5157488d7724e03fb8d84a376a43b8f41518a11cc387b669b2ee6586;
13
14 1
15 657870616e642033322d62797465206b000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f01000000000000090000004a00000000
16 10f1e7e4d13b5915500fdd1fa32071c4c7d1f4c733c068030422aa9ac3d46c4ed2826446079faa0914c2d705d98b02a2b5129cd1de164eb9cbd083e8a2503c4e;
17 }
18
19 chacha20 {
20 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
21 0000004a00000000 0000000000000001 0
22 4c616469657320616e642047656e746c656d656e206f662074686520636c617373206f66202739393a204966204920636f756c64206f6666657220796f75206f6e6c79206f6e652074697020666f7220746865206675747572652c2073756e73637265656e20776f756c642062652069742e
23 6e2e359a2568f98041ba0728dd0d6981e97e7aec1d4360c20a27afccfd9fae0bf91b65c5524733ab8f593dabcd62b3571639d624e65152ab8f530c359f0861d807ca0dbf500d6a6156a38e088a22b65e52bc514d16ccf806818ce91ab77937365af90bbf74a35be6b40b8eedf2785e42874d;
24 }
25
26 chacha8-core {
27 1
28 657870616e642031362d62797465206b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
29 e28a5fa4a67f8c5defed3e6fb7303486aa8427d31419a729572d777953491120b64ab8e72b8deb85cd6aea7cb6089a101824beeb08814a428aab1fa2c816081b;
30 }
31
32 xchacha20 {
33 ## Unfortunately, XChaCha isn't actually defined anywhere, even though it's
34 ## obvious how to do it. These test vectors are from
35 ## https://github.com/DaGenix/rust-crypto/blob/master/src/chacha20.rs
36
37 1b27556473e985d462cd51197a9a46c76009549eac6474f206c4ee0844f68389
38 69696ee955b62b73cd62bda875fc73d68219e0036b7a0b37 "" 0 ""
39 4febf2fe4b359c508dc5e8b5980c88e38946d8f18f313465c862a08782648248018dacdcb904178853a46dca3a0eaaee747cba97434eaffad58fea8222047e0de6c3a6775106e0331ad714d2f27a55641340a1f1dd9f94532e68cb241cbdd150970d14e05c5b173193fb14f51c41f393835bf7f416a7e0bba81ffb8b13af0e21691d7ecec93b75e6e4183a;
40 }
41
42 chacha8 {
43 00000000000000000000000000000000
44 0000000000000000 "" 0 ""
45 e28a5fa4a67f8c5defed3e6fb7303486aa8427d31419a729572d777953491120b64ab8e72b8deb85cd6aea7cb6089a101824beeb08814a428aab1fa2c816081b8a26af448a1ba906368fd8c83831c18cec8ced811a028e675b8d2be8fce081165ceae9f1d1b7a975497749480569ceb83de6a0a587d4984f19925f5d338e430d;
46 0000000000000000000000000000000000000000000000000000000000000000
47 0000000000000000 "" 0 ""
48 3e00ef2f895f40d67f5bb8e81f09a5a12c840ec3ce9a7f3b181be188ef711a1e984ce172b9216f419f445367456d5619314a42a3da86b001387bfdb80e0cfe42d2aefa0deaa5c151bf0adb6c01f2a5adc0fd581259f9a2aadcf20f8fd566a26b5032ec38bbc5da98ee0c6f568b872a65a08abf251deb21bb4b56e5d8821e68aa;
49 01000000000000000000000000000000
50 0000000000000000 "" 0 ""
51 03a7669888605a0765e8357475e58673f94fc8161da76c2a3aa2f3caf9fe5449e0fcf38eb882656af83d430d410927d55c972ac4c92ab9da3713e19f761eaa147138c25c8a7ce3d5e7546746ffd2e3515ce6a4b1b2d3f380138668ed39fa92f8a1aee36258e05fae6f566673511765fdb59e05163d55a708c5f9bc45045124cb;
52 0100000000000000000000000000000000000000000000000000000000000000
53 0000000000000000 "" 0 ""
54 cf5ee9a0494aa9613e05d5ed725b804b12f4a465ee635acc3a311de8740489ea289d04f43c7518db56eb4433e498a1238cd8464d3763ddbb9222ee3bd8fae3c8b4355a7d93dd8867089ee643558b95754efa2bd1a8a1e2d75bcdb32015542638291941feb49965587c4fdfe219cf0ec132a6cd4dc067392e67982fe53278c0b4;
55 00000000000000000000000000000000
56 0100000000000000 "" 0 ""
57 25f5bec6683916ff44bccd12d102e692176663f4cac53e719509ca74b6b2eec85da4236fb29902012adc8f0d86c8187d25cd1c486966930d0204c4ee88a6ab355a6c9976c7bc6e78baf3108c5364ef42b93b35d2694d2ddf72a4fc7ecdb968fcfe16bedb8d48102fb54f1ce3636e914c0e2dadc7caa2ab1929733a9263325e72;
58 0000000000000000000000000000000000000000000000000000000000000000
59 0100000000000000 "" 0 ""
60 2b8f4bb3798306ca5130d47c4f8d4ed13aa0edccc1be6942090faeeca0d7599b7ff0fe616bb25aa0153ad6fdc88b954903c22426d478b97b22b8f9b1db00cf06470bdffbc488a8b7c701ebf4061d75c5969186497c95367809afa80bd843b040a79abc6e73a91757f1db73c8eacfa543b38f289d065ab2f3032d377b8c37fe46;
61 ffffffffffffffffffffffffffffffff
62 ffffffffffffffff "" 0 ""
63 2204d5b81ce662193e00966034f91302f14a3fb047f58b6e6ef0d721132304163e0fb640d76ff9c3b9cd99996e6e38fad13f0e31c82244d33abbc1b11e8bf12d9a81d78e9e56604ddfae136921f51c9d81ae15119db8e756dd28024493ee571d363ae4bbcd6e7d300f99d2673aeb92ccfc6e43a38dc31bacd66b28f17b22b28a;
64 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
65 ffffffffffffffff "" 0 ""
66 e163bbf8c9a739d18925ee8362dad2cdc973df05225afb2aa26396f2a9849a4a445e0547d31c1623c537df4ba85c70a9884a35bcbf3dfab077e98b0f68135f5481d4933f8b322ac0cd762c27235ce2b31534e0244a9a2f1fd5e94498d47ff108790c009cf9e1a348032a7694cb28024cd96d3498361edb1785af752d187ab54b;
67 55555555555555555555555555555555
68 5555555555555555 "" 0 ""
69 f0a23bc36270e18ed0691dc384374b9b2c5cb60110a03f56fa48a9fbbad961aa6bab4d892e96261b6f1a0919514ae56f86e066e17c71a4176ac684af1c931996950f754e728bd061d176ecf571c62a5ea5c776697b3193d3ea94cf17d7f0a14e504859d1a67c248ab298be3bb7eded3a23f61b6c5bd1a5a4cfc84bfc3d295ac5;
70 5555555555555555555555555555555555555555555555555555555555555555
71 5555555555555555 "" 0 ""
72 7cb78214e4d3465b6dc62cf7a1538c88996952b4fb72cb6105f1243ce3442e2975a59ebcd2b2a598290d7538491fe65bdbfefd060d88798120a70d049dc2677dd48ff5a2513e497a5d54802d7484c4f1083944d8d0d14d6482ce09f7e5ebf20b29807d62c31874d02f5d3cc85381a745ecbc60525205e300a76961bfe51ac07c;
73 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
74 aaaaaaaaaaaaaaaa "" 0 ""
75 312d95c0bc38eff4942db2d50bdc500a30641ef7132db1a8ae838b3bea3a7ab03815d7a4cc09dbf5882a3433d743aced48136ebab73299506855c0f5437a36c6ef5ad3d6a4f6c35d9d66c2e34005b91bbbe3099e135a00ce2f700745be6253195824d4b19f69731b6177e624358c7977e67552f519b470e3f7a8ec965dc3beda;
76 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
77 aaaaaaaaaaaaaaaa "" 0 ""
78 40f9ab86c8f9a1a0cdc05a75e5531b612d71ef7f0cf9e387df6ed6972f0aae21311aa581f816c90e8a99de990b6b95aac92450f4e112712667b804c99e9c6edaf8d144f560c8c0ea36880d3b77874c9a9103d147f6ded386284801a4ee158e5ea4f9c093fc55fd344c33349dc5b699e21dc83b4296f92ee3ecabf3d51f95fe3f;
79 00112233445566778899aabbccddeeff
80 0f1e2d3c4b5a6978 "" 0 ""
81 29560d280b4528400a8f4b795369fb3a01105599e9f1ed58279cfc9ece2dc5f99f1c2e52c98238f542a5c0a881d850b615d3acd9fbdb026e9368565da50e0d49dd5be8ef74248b3e251d965d8fcb21e7cfe204d4007806fbee3ce94c74bfbad2c11c621ba048147c5caa94d182ccff6fd5cf44adf96e3d68281bb49676af87e7;
82 00112233445566778899aabbccddeeffffeeddccbbaa99887766554433221100
83 0f1e2d3c4b5a6978 "" 0 ""
84 db43ad9d1e842d1272e4530e276b3f568f8859b3f7cf6d9d2c74fa53808cb5157a8ebf46ad3dcc4b6c7dadde131784b0120e0e22f6d5f9ffa7407d4a21b695d9c5dd30bf55612fab9bdd118920c19816470c7f5dcd42325dbbed8c57a56281c144cb0f03e81b3004624e0650a1ce5afaf9a7cd8163f6dbd72602257dd96e471e;
85 c46ec1b18ce8a878725a37e780dfb735
86 1ada31d5cf688221 "" 0 ""
87 6a870108859f679118f3e205e2a56a6826ef5a60a4102ac8d4770059fcb7c7bae02f5ce004a6bfbbea53014dd82107c0aa1c7ce11b7d78f2d50bd3602bbd25940560bb6a84289e0b38f5dd21d6ef6d7737e3ec0fb772da2c71c2397762e5dbbbf449e3d1639ccbfa3e069c4d871ed6395b22aaf35c8da6de2dec3d77880da8e8;
88 c46ec1b18ce8a878725a37e780dfb7351f68ed2e194c79fbc6aebee1a667975d
89 1ada31d5cf688221 "" 0 ""
90 838751b42d8ddd8a3d77f48825a2ba752cf4047cb308a5978ef274973be374c96ad848065871417b08f034e681fe46a93f7d5c61d1306614d4aaf257a7cff08b16f2fda170cc18a4b58a2667ed962774af792a6e7f3c77992540711a7a136d7e8a2f8d3f93816709d45a3fa5f8ce72fde15be7b841acba3a2abd557228d9fe4f;
91 }
92
93 chacha12 {
94 00000000000000000000000000000000
95 0000000000000000 "" 0 ""
96 e1047ba9476bf8ff312c01b4345a7d8ca5792b0ad467313f1dc412b5fdce32410dea8b68bd774c36a920f092a04d3f95274fbeff97bc8491fcef37f85970b4501d43b61a8f7e19fceddef368ae6bfb11101bd9fd3e4d127de30db2db1b472e76426803a45e15b962751986ef1d9d50f598a5dcdc9fa529a28357991e784ea20f;
97 0000000000000000000000000000000000000000000000000000000000000000
98 0000000000000000 "" 0 ""
99 9bf49a6a0755f953811fce125f2683d50429c3bb49e074147e0089a52eae155f0564f879d27ae3c02ce82834acfa8c793a629f2ca0de6919610be82f411326be0bd58841203e74fe86fc71338ce0173dc628ebb719bdcbcc151585214cc089b442258dcda14cf111c602b8971b8cc843e91e46ca905151c02744a6b017e69316;
100 01000000000000000000000000000000
101 0000000000000000 "" 0 ""
102 2a865a3b8999fa83ae8aacf33fc6be4f32c8aa9762738d26963270052f4eef8b86af758f7867560af6d0eeb973b5542bb24c8abceac8b1f36d026963d6c8a9b2d82ce0cad37d51b1052c33144a30a8239c9fca6284ac5ea750bebb2d224dbb39aa4e7acd511f8cef15a5c490590e38e96397c06cd21c389cb8b1159c240c9c0e;
103 0100000000000000000000000000000000000000000000000000000000000000
104 0000000000000000 "" 0 ""
105 12056e595d56b0f6eef090f0cd25a20949248c2790525d0f930218ff0b4ddd10a6002239d9a454e29e107a7d06fefdfef0210feba044f9f29b1772c960dc29c00c7366c5cbc604240e665eb02a69372a7af979b26fbb78092ac7c4b88029a7c854513bc217bbfc7d90432e308eba15afc65aeb48ef100d5601e6afba257117a9;
106 00000000000000000000000000000000
107 0100000000000000 "" 0 ""
108 91cdb2f180bc89cfe86b8b6871cd6b3af61abf6eba01635db619c40a0b2e19edfa8ce5a9bd7f53cc2c9bcfea181e9754a9e245731f658cc282c2ae1cab1ae02c4366d288f0f88e001680bc02f1b19a9637a261a13bd83e312f3758ea89ba72223d65b1cd40cea478b20f4e2bbb9a98ea05fabc05f86df9a289326d379afb99b9;
109 0000000000000000000000000000000000000000000000000000000000000000
110 0100000000000000 "" 0 ""
111 64b8bdf87b828c4b6dbaf7ef698de03df8b33f635714418f9836ade59be1296946c953a0f38ecffc9ecb98e81d5d99a5edfc8f9a0a45b9e41ef3b31f028f1d0f559db4a7f222c442fe23b9a2596a88285122ee4f1363896ea77ca150912ac723bff04b026a2f807e03b29c02077d7b06fc1ab9827c13c8013a6d83bd3b52a26f;
112 ffffffffffffffffffffffffffffffff
113 ffffffffffffffff "" 0 ""
114 60e349e60c38b328c4baab90d44a7c727662770d36350d65a1433bd92b00ecf483d5597d7a616258ec3c5d5b30e1c5c85c5dfe2f92423b8e36870f3185b6add9f34dab6c2bc551898fbdcdfc783f09171cc8b59a8b2852983c3a9b91d29b576112464a9d8e050263e989906f42c7efcac8a70a85bb7ff2211273fbd4cad96142;
115 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
116 ffffffffffffffff "" 0 ""
117 04bf88dae8e47a228fa47b7e6379434ba664a7d28f4dab84e5f8b464add20c3acaa69c5ab221a23a57eb5f345c96f4d1322d0a2ff7a9cd43401cd536639a615a5c9429b55ca3c1b55354559669a154aca46cd761c41ab8ace385363b95675f068e18db5a673c11291bd4187892a9a3a33514f3712b26c13026103298ed76bc9a;
118 55555555555555555555555555555555
119 5555555555555555 "" 0 ""
120 90ec7a49ee0b20a808af3d463c1fac6c2a7c897ce8f6e60d793b62ddbebcf980ac917f091e52952db063b1d2b947de04aac087190ca99a35b5ea501eb535d5708f78ccea3d9452584450101ac495cd166efd69426b47fa6e8e788921f29e3d547364b952913173a5bac500e89d8c66c6ce51ed626d0da8dc94deec92125ea48d;
121 5555555555555555555555555555555555555555555555555555555555555555
122 5555555555555555 "" 0 ""
123 a600f07727ff93f3da00dd74cc3e8bfb5ca7302f6a0a2944953de00450eecd40b860f66049f2eaed63b2ef39cc310d2c488f5d9a241b615dc0ab70f921b91b95140eff4aa495ac61289b6bc57de072419d09daa7a7243990daf348a8f2831e597cf379b3b284f00bda27a4c68085374a8a5c38ded62d1141cae0bb838ddc2232;
124 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
125 aaaaaaaaaaaaaaaa "" 0 ""
126 057fe84fead13c24b76bb2a6fdde66f2688e8eb6268275c22c6bcb90b85616d7fe4d3193a1036b70d7fb864f01453641851029ecdb60ac3879f56496f16213f4e9e61945b8d854a1749a7c1fc5fb584dcfc68c558e6efe045b51d513ebeb093fbe91d7ba36dc6f0c8c7cfa66654ad99d64c342bb3047368b7edddf836c7253cc;
127 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
128 aaaaaaaaaaaaaaaa "" 0 ""
129 856505b01d3b47aae03d6a97aa0f033a9adcc94377babd8608864fb3f625b6e314f086158f9f725d811eeb953b7f747076e4c3f639fa841fad6c9a709e6213976dd6ee9b5e1e2e676b1c9e2b82c2e96c1648437bff2f0126b74e8ce0a9b06d1720ac0b6f09086f28bc201587f0535ed9385270d08b4a9382f18f82dbde18210e;
130 00112233445566778899aabbccddeeff
131 0f1e2d3c4b5a6978 "" 0 ""
132 5eddc2d9428fceeec50a52a964eae0ffb04b2de006a9b04cff368ffa921116b2e8e264babd2efa0de43ef2e3b6d065e8f7c0a17837b0a40eb0e2c7a3742c8753ede5f3f6d19be554675e506a775c63f094d4965c319319dcd7506f457b117b84b10b246e956c2da8898a656ceef3f7b71645b19f701db84485ce5121f0f617ef;
133 00112233445566778899aabbccddeeffffeeddccbbaa99887766554433221100
134 0f1e2d3c4b5a6978 "" 0 ""
135 7ed12a3a63912ae941ba6d4c0d5e862e568b0e5589346935505f064b8c2698dbf7d850667d8e67be639f3b4f6a16f92e65ea80f6c7429445da1fc2c1b9365040e32e50c4106f3b3da1ce7ccb1e7140b153493c0f3ad9a9bcff077ec4596f1d0f29bf9cbaa502820f732af5a93c49eee33d1c4f12af3b4297af91fe41ea9e94a2;
136 c46ec1b18ce8a878725a37e780dfb735
137 1ada31d5cf688221 "" 0 ""
138 b02bd81eb55c8f68b5e9ca4e307079bc225bd22007eddc6702801820709ce09807046a0d2aa552bfdbb49466176d56e32d519e10f5ad5f2746e241e09bdf995917be0873edde9af5b86246441ce410195baede41f8bdab6ad253226382ee383e3472f945a5e6bd628c7a582bcf8f899870596a58dab83b51a50c7dbb4f3e6e76;
139 c46ec1b18ce8a878725a37e780dfb7351f68ed2e194c79fbc6aebee1a667975d
140 1ada31d5cf688221 "" 0 ""
141 1482072784bc6d06b4e73bdc118bc0103c7976786ca918e06986aa251f7e9cc1b2749a0a16ee83b4242d2e99b08d7c20092b80bc466c87283b61b1b39d0ffbabd94b116bc1ebdb329b9e4f620db695544a8e3d9b68473d0c975a46ad966ed631e42aff530ad5eac7d8047adfa1e5113c91f3e3b883f1d189ac1c8fe07ba5a42b;
142 }
143
144 chacha20 {
145 00000000000000000000000000000000
146 0000000000000000 "" 0 ""
147 89670952608364fd00b2f90936f031c8e756e15dba04b8493d00429259b20f46cc04f111246b6c2ce066be3bfb32d9aa0fddfbc12123d4b9e44f34dca05a103f6cd135c2878c832b5896b134f6142a9d4d8d0d8f1026d20a0a81512cbce6e9758a7143d021978022a384141a80cea3062f41f67a752e66ad3411984c787e30ad;
148 0000000000000000000000000000000000000000000000000000000000000000
149 0000000000000000 "" 0 ""
150 76b8e0ada0f13d90405d6ae55386bd28bdd219b8a08ded1aa836efcc8b770dc7da41597c5157488d7724e03fb8d84a376a43b8f41518a11cc387b669b2ee65869f07e7be5551387a98ba977c732d080dcb0f29a048e3656912c6533e32ee7aed29b721769ce64e43d57133b074d839d531ed1f28510afb45ace10a1f4b794d6f;
151 01000000000000000000000000000000
152 0000000000000000 "" 0 ""
153 ae56060d04f5b597897ff2af1388dbceff5a2a4920335dc17a3cb1b1b10fbe70ece8f4864d8c7cdf0076453a8291c7dbeb3aa9c9d10e8ca36be4449376ed7c42fc3d471c34a36fbbf616bc0a0e7c523030d944f43ec3e78dd6a12466547cb4f7b3cebd0a5005e762e562d1375b7ac44593a991b85d1a60fba2035dfaa2a642d5;
154 0100000000000000000000000000000000000000000000000000000000000000
155 0000000000000000 "" 0 ""
156 c5d30a7ce1ec119378c84f487d775a8542f13ece238a9455e8229e888de85bbd29eb63d0a17a5b999b52da22be4023eb07620a54f6fa6ad8737b71eb0464dac010f656e6d1fd55053e50c4875c9930a33f6d0263bd14dfd6ab8c70521c19338b2308b95cf8d0bb7d202d2102780ea3528f1cb48560f76b20f382b942500fceac;
157 00000000000000000000000000000000
158 0100000000000000 "" 0 ""
159 1663879eb3f2c9949e2388caa343d361bb132771245ae6d027ca9cb010dc1fa7178dc41f8278bc1f64b3f12769a24097f40d63a86366bdb36ac08abe60c07fe8b057375c89144408cc744624f69f7f4ccbd93366c92fc4dfcada65f1b959d8c64dfc50de711fb46416c2553cc60f21bbfd006491cb17888b4fb3521c4fdd8745;
160 0000000000000000000000000000000000000000000000000000000000000000
161 0100000000000000 "" 0 ""
162 ef3fdfd6c61578fbf5cf35bd3dd33b8009631634d21e42ac33960bd138e50d32111e4caf237ee53ca8ad6426194a88545ddc497a0b466e7d6bbdb0041b2f586b5305e5e44aff19b235936144675efbe4409eb7e8e5f1430f5f5836aeb49bb5328b017c4b9dc11f8a03863fa803dc71d5726b2b6b31aa32708afe5af1d6b69058;
163 ffffffffffffffffffffffffffffffff
164 ffffffffffffffff "" 0 ""
165 992947c3966126a0e660a3e95db048de091fb9e0185b1e41e41015bb7ee50150399e4760b262f9d53f26d8dd19e56f5c506ae0c3619fa67fb0c408106d0203ee40ea3cfa61fa32a2fda8d1238a2135d9d4178775240f99007064a6a7f0c731b67c227c52ef796b6bed9f9059ba0614bcf6dd6e38917f3b150e576375be50ed67;
166 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
167 ffffffffffffffff "" 0 ""
168 d9bf3f6bce6ed0b54254557767fb57443dd4778911b606055c39cc25e674b8363feabc57fde54f790c52c8ae43240b79d49042b777bfd6cb80e931270b7f50eb5bac2acd86a836c5dc98c116c1217ec31d3a63a9451319f097f3b4d6dab0778719477d24d24b403a12241d7cca064f790f1d51ccaff6b1667d4bbca1958c4306;
169 55555555555555555555555555555555
170 5555555555555555 "" 0 ""
171 357d7d94f966778f5815a2051dcb04133b26b0ead9f57dd09927837bc3067e4b6bf299ad81f7f50c8da83c7810bfc17bb6f4813ab6c326957045fd3fd5e19915ec744a6b9bf8cbdcb36d8b6a5499c68a08ef7be6cc1e93f2f5bcd2cad4e47c18a3e5d94b5666382c6d130d822dd56aacb0f8195278e7b292495f09868ddf12cc;
172 5555555555555555555555555555555555555555555555555555555555555555
173 5555555555555555 "" 0 ""
174 bea9411aa453c5434a5ae8c92862f564396855a9ea6e22d6d3b50ae1b3663311a4a3606c671d605ce16c3aece8e61ea145c59775017bee2fa6f88afc758069f7e0b8f676e644216f4d2a3422d7fa36c6c4931aca950e9da42788e6d0b6d1cd838ef652e97b145b14871eae6c6804c7004db5ac2fce4c68c726d004b10fcaba86;
175 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
176 aaaaaaaaaaaaaaaa "" 0 ""
177 fc79acbd58526103862776aab20f3b7d8d3149b2fab65766299316b6e5b16684de5de548c1b7d083efd9e3052319e0c6254141da04a6586df800f64d46b01c871f05bc67e07628ebe6f6865a2177e0b66a558aa7cc1e8ff1a98d27f7071f8335efce4537bb0ef7b573b32f32765f29007da53bba62e7a44d006f41eb28fe15d6;
178 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
179 aaaaaaaaaaaaaaaa "" 0 ""
180 9aa2a9f656efde5aa7591c5fed4b35aea2895dec7cb4543b9e9f21f5e7bcbcf3c43c748a970888f8248393a09d43e0b7e164bc4d0b0fb240a2d72115c480890672184489440545d021d97ef6b693dfe5b2c132d47e6f041c9063651f96b623e62a11999a23b6f7c461b2153026ad5e866a2e597ed07b8401dec63a0934c6b2a9;
181 00112233445566778899aabbccddeeff
182 0f1e2d3c4b5a6978 "" 0 ""
183 d1abf630467eb4f67f1cfb47cd626aae8afedbbe4ff8fc5fe9cfae307e74ed451f1404425ad2b54569d5f18148939971abb8fafc88ce4ac7fe1c3d1f7a1eb7cae76ca87b61a9713541497760dd9ae059350cad0dcedfaa80a883119a1a6f987fd1ce91fd8ee0828034b411200a9745a285554475d12afc04887fef3516d12a2c;
184 00112233445566778899aabbccddeeffffeeddccbbaa99887766554433221100
185 0f1e2d3c4b5a6978 "" 0 ""
186 9fadf409c00811d00431d67efbd88fba59218d5d6708b1d685863fabbb0e961eea480fd6fb532bfd494b2151015057423ab60a63fe4f55f7a212e2167ccab931fbfd29cf7bc1d279eddf25dd316bb8843d6edee0bd1ef121d12fa17cbc2c574cccab5e275167b08bd686f8a09df87ec3ffb35361b94ebfa13fec0e4889d18da5;
187 c46ec1b18ce8a878725a37e780dfb735
188 1ada31d5cf688221 "" 0 ""
189 826abdd84460e2e9349f0ef4af5b179b426e4b2d109a9c5bb44000ae51bea90a496beeef62a76850ff3f0402c4ddc99f6db07f151c1c0dfac2e56565d62896255b23132e7b469c7bfb88fa95d44ca5ae3e45e848a4108e98bad7a9eb15512784a6a9e6e591dce674120acaf9040ff50ff3ac30ccfb5e14204f5e4268b90a8804;
190 c46ec1b18ce8a878725a37e780dfb7351f68ed2e194c79fbc6aebee1a667975d
191 1ada31d5cf688221 "" 0 ""
192 f63a89b75c2271f9368816542ba52f06ed49241792302b00b5e8f80ae9a473afc25b218f519af0fdd406362e8d69de7f54c604a6e00f353f110f771bdca8ab92e5fbc34e60a1d9a9db17345b0a402736853bf910b060bdf1f897b6290f01d138ae2c4c90225ba9ea14d518f55929dea098ca7a6ccfe61227053c84e49a4a3332;
193
194 ## Tests from RFC7539.
195 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
196 000000090000004a00000000 00000001 0 ""
197 10f1e7e4d13b5915500fdd1fa32071c4c7d1f4c733c068030422aa9ac3d46c4ed2826446079faa0914c2d705d98b02a2b5129cd1de164eb9cbd083e8a2503c4e;
198 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
199 000000000000004a00000000 00000001 0
200 4c616469657320616e642047656e746c656d656e206f662074686520636c617373206f66202739393a204966204920636f756c64206f6666657220796f75206f6e6c79206f6e652074697020666f7220746865206675747572652c2073756e73637265656e20776f756c642062652069742e
201 6e2e359a2568f98041ba0728dd0d6981e97e7aec1d4360c20a27afccfd9fae0bf91b65c5524733ab8f593dabcd62b3571639d624e65152ab8f530c359f0861d807ca0dbf500d6a6156a38e088a22b65e52bc514d16ccf806818ce91ab77937365af90bbf74a35be6b40b8eedf2785e42874d;
202 808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9f
203 000000000001020304050607 "" 0 ""
204 8ad5a08b905f81cc815040274ab29471a833b637e3fd0da508dbb8e2fdd1a646;
205 0000000000000000000000000000000000000000000000000000000000000000
206 000000000000000000000000 "" 0 ""
207 76b8e0ada0f13d90405d6ae55386bd28bdd219b8a08ded1aa836efcc8b770dc7da41597c5157488d7724e03fb8d84a376a43b8f41518a11cc387b669b2ee65869f07e7be5551387a98ba977c732d080dcb0f29a048e3656912c6533e32ee7aed29b721769ce64e43d57133b074d839d531ed1f28510afb45ace10a1f4b794d6f;
208 0000000000000000000000000000000000000000000000000000000000000001
209 000000000000000000000000 00000001 0 ""
210 3aeb5224ecf849929b9d828db1ced4dd832025e8018b8160b82284f3c949aa5a8eca00bbb4a73bdad192b5c42f73f2fd4e273644c8b36125a64addeb006c13a0;
211 00ff000000000000000000000000000000000000000000000000000000000000
212 000000000000000000000000 00000002 0 ""
213 72d54dfbf12ec44b362692df94137f328fea8da73990265ec1bbbea1ae9af0ca13b25aa26cb4a648cb9b9d1be65b2c0924a66c54d545ec1b7374f4872e99f096;
214 0000000000000000000000000000000000000000000000000000000000000000
215 000000000000000000000002 "" 0 ""
216 c2c64d378cd536374ae204b9ef933fcd1a8b2288b3dfa49672ab765b54ee27c78a970e0e955c14f3a88e741b97c286f75f8fc299e8148362fa198a39531bed6d;
217 0000000000000000000000000000000000000000000000000000000000000001
218 000000000000000000000002 00000001 0
219 416e79207375626d697373696f6e20746f20746865204945544620696e74656e6465642062792074686520436f6e7472696275746f7220666f72207075626c69636174696f6e20617320616c6c206f722070617274206f6620616e204945544620496e7465726e65742d4472616674206f722052464320616e6420616e792073746174656d656e74206d6164652077697468696e2074686520636f6e74657874206f6620616e204945544620616374697669747920697320636f6e7369646572656420616e20224945544620436f6e747269627574696f6e222e20537563682073746174656d656e747320696e636c756465206f72616c2073746174656d656e747320696e20494554462073657373696f6e732c2061732077656c6c206173207772697474656e20616e6420656c656374726f6e696320636f6d6d756e69636174696f6e73206d61646520617420616e792074696d65206f7220706c6163652c207768696368206172652061646472657373656420746f
220 a3fbf07df3fa2fde4f376ca23e82737041605d9f4f4f57bd8cff2c1d4b7955ec2a97948bd3722915c8f3d337f7d370050e9e96d647b7c39f56e031ca5eb6250d4042e02785ececfa4b4bb5e8ead0440e20b6e8db09d881a7c6132f420e52795042bdfa7773d8a9051447b3291ce1411c680465552aa6c405b7764d5e87bea85ad00f8449ed8f72d0d662ab052691ca66424bc86d2df80ea41f43abf937d3259dc4b2d0dfb48a6c9139ddd7f76966e928e635553ba76c5c879d7b35d49eb2e62b0871cdac638939e25e8a1e0ef9d5280fa8ca328b351c3c765989cbcf3daa8b6ccc3aaf9f3979c92b3720fc88dc95ed84a1be059c6499b9fda236e7e818b04b0bc39c1e876b193bfe5569753f88128cc08aaa9b63d1a16f80ef2554d7189c411f5869ca52c5b83fa36ff216b9c1d30062bebcfd2dc5bce0911934fda79a86f6e698ced759c3ff9b6477338f3da4f9cd8514ea9982ccafb341b2384dd902f3d1ab7ac61dd29c6f21ba5b862f3730e37cfdc4fd806c22f221;
221 1c9240a5eb55d38af333888604f6b5f0473917c1402b80099dca5cbc207075c0
222 000000000000000000000002 0000002a 0
223 2754776173206272696c6c69672c20616e642074686520736c6974687920746f7665730a446964206779726520616e642067696d626c6520696e2074686520776162653a0a416c6c206d696d737920776572652074686520626f726f676f7665732c0a416e6420746865206d6f6d65207261746873206f757467726162652e
224 62e6347f95ed87a45ffae7426f27a1df5fb69110044c0d73118effa95b01e5cf166d3df2d721caf9b21e5fb14c616871fd84c54f9d65b283196c7fe4f60553ebf39c6402c42234e32a356b3e764312a61a5532055716ead6962568f87d3f3f7704c6a8d1bcd1bf4d50d6154b6da731b187b58dfd728afa36757a797ac188d1;
225 0000000000000000000000000000000000000000000000000000000000000001
226 000000000000000000000002 "" 0 ""
227 ecfa254f845f647473d3cb140da9e87606cb33066c447b87bc2666dde3fbb739;
228 1c9240a5eb55d38af333888604f6b5f0473917c1402b80099dca5cbc207075c0
229 000000000000000000000002 "" 0 ""
230 965e3bc6f9ec7ed9560808f4d229f94b137ff275ca9b3fcbdd59deaad23310ae;
231 }