math/gfreduce.[ch]: Fix out-of-bounds memory access.
[u/mdw/catacomb] / symm / t / rmd128
1 # Test vectors for RIPEMD-160
2 #
3 #
4 # Taken from the authors' web pages.
5
6 rmd128 {
7 "" cdf26213a150dc3ecb610f18f6b38b46;
8 "a" 86be7afa339d0fc7cfc785e72f578d33;
9 "abc" c14a12199c66e4ba84636b0f69144c77;
10 "message digest" 9e327b3d6e523062afc1132d7df9d1b8;
11 "abcdefghijklmnopqrstuvwxyz"
12 fd2aa607f71dc8f510714922b371834e;
13 "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
14 a1aa0689d0fafa2ddc22e88b49133a06;
15 "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
16 d1e959eb179c911faea4624c60c5c702;
17 }
18
19 rmd128-rep {
20 "1234567890" 8 3f45ef194732c2dbb2c4a2c769795fa3;
21 "a" 1000000 4a7f5723f954eba1216c9d8f6320431f;
22 }
23
24 # --- HMAC mode ---
25
26 rmd128-hmac {
27 # --- Test vectors from RFC2286 ---
28
29 "Hi There"
30 0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b
31 fbf61f9492aa4bbf81c172e84e0734db;
32
33 "what do ya want for nothing?"
34 4a656665
35 875f828862b6b334b427c55f9f7ff09b;
36
37 "ÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝ"
38 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
39 09f0b2846d2f543da363cbec8d62a38d;
40
41 "ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ"
42 0102030405060708090a0b0c0d0e0f10111213141516171819
43 bdbbd7cf03e44b5aa60af815be4d2294;
44
45 "Test With Truncation"
46 0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c
47 e79808f24b25fd031c155f0d551d9a3a;
48
49 "Test Using Larger Than Block-Size Key - Hash Key First"
50 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
51 dc732928de98104a1f59d373c150acbb;
52
53 "Test Using Larger Than Block-Size Key and Larger Than One Block-Size Data"
54 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
55 5c6bec96793e16d40690c237635f30c5;
56
57 # --- Test vectors from the RIPEMD160 home page ---
58
59 ""
60 00112233445566778899aabbccddeeff
61 ad9db2c1e22af9ab5ca9dbe5a86f67dc;
62 "a"
63 00112233445566778899aabbccddeeff
64 3bf448c762de00bcfa0310b11c0bde4c;
65 "abc"
66 00112233445566778899aabbccddeeff
67 f34ec0945f02b70b8603f89e1ce4c78c;
68 "message digest"
69 00112233445566778899aabbccddeeff
70 e8503a8aec2289d82aa0d8d445a06bdd;
71 "abcdefghijklmnopqrstuvwxyz"
72 00112233445566778899aabbccddeeff
73 ee880b735ce3126065de1699cc136199;
74 "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
75 00112233445566778899aabbccddeeff
76 794daf2e3bdeea2538638a5ced154434;
77 "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
78 00112233445566778899aabbccddeeff
79 3a06eef165b23625247800be23e232b6;
80 "12345678901234567890123456789012345678901234567890123456789012345678901234567890"
81 00112233445566778899aabbccddeeff
82 9a4f0159c0952da43a8d466d46b0af58;
83
84 ""
85 0123456789abcdeffedcba9876543210
86 8931eeee56a6b257fd1ab5418183d826;
87 "a"
88 0123456789abcdeffedcba9876543210
89 dbbcf169ea7419d5ba7bd8eb3673ff2d;
90 "abc"
91 0123456789abcdeffedcba9876543210
92 2c4cd07d3162d6a0e338004d6b6fbc9a;
93 "message digest"
94 0123456789abcdeffedcba9876543210
95 75bfb25888f4bb77c77ae83ad0817447;
96 "abcdefghijklmnopqrstuvwxyz"
97 0123456789abcdeffedcba9876543210
98 b1b5dc0fcb7258758855dd1840fcdce4;
99 "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
100 0123456789abcdeffedcba9876543210
101 670d0f7a697b18f1a8ab7d2a2a00dbc1;
102 "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
103 0123456789abcdeffedcba9876543210
104 54e315fdb34a61c0475392e5c7852998;
105 "12345678901234567890123456789012345678901234567890123456789012345678901234567890"
106 0123456789abcdeffedcba9876543210
107 ad04354d8aa2a623e72e3594ee3535c0;
108 }