Implement AES-GCM-SIV (RFC8452)
[openssl.git] / test / recipes / 30-test_evp_data / evppkey_kdf_hkdf.txt
1 #
2 # Copyright 2001-2020 The OpenSSL Project Authors. All Rights Reserved.
3 #
4 # Licensed under the Apache License 2.0 (the "License").  You may not use
5 # this file except in compliance with the License.  You can obtain a copy
6 # in the file LICENSE in the source distribution or at
7 # https://www.openssl.org/source/license.html
8
9 # Tests start with one of these keywords
10 #       Cipher Decrypt Derive Digest Encoding KDF MAC PBE
11 #       PrivPubKeyPair Sign Verify VerifyRecover
12 # and continue until a blank line. Lines starting with a pound sign are ignored.
13
14 Title = HKDF tests (from RFC5869 test vectors) using PKEYKDF
15
16 PKEYKDF = HKDF
17 Ctrl.md = md:SHA256
18 Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b
19 Ctrl.salt = hexsalt:000102030405060708090a0b0c
20 Ctrl.info = hexinfo:f0f1f2f3f4f5f6f7f8f9
21 Output = 3cb25f25faacd57a90434f64d0362f2a2d2d0a90cf1a5a4c5db02d56ecc4c5bf34007208d5b887185865
22
23 PKEYKDF = HKDF
24 Ctrl.mode = mode:EXTRACT_ONLY
25 Ctrl.md = md:SHA256
26 Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b
27 Ctrl.salt = hexsalt:000102030405060708090a0b0c
28 Output = 077709362c2e32df0ddc3f0dc47bba6390b6c73bb50f9c3122ec844ad7c2b3e5
29
30 PKEYKDF = HKDF
31 Ctrl.mode = mode:EXPAND_ONLY
32 Ctrl.md = md:SHA256
33 Ctrl.IKM = hexkey:077709362c2e32df0ddc3f0dc47bba6390b6c73bb50f9c3122ec844ad7c2b3e5
34 Ctrl.info = hexinfo:f0f1f2f3f4f5f6f7f8f9
35 Output = 3cb25f25faacd57a90434f64d0362f2a2d2d0a90cf1a5a4c5db02d56ecc4c5bf34007208d5b887185865
36
37 PKEYKDF = HKDF
38 Ctrl.md = md:SHA256
39 Ctrl.IKM = hexkey:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f
40 Ctrl.salt = hexsalt:606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeaf
41 Ctrl.info = hexinfo:b0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
42 Output = b11e398dc80327a1c8e7f78c596a49344f012eda2d4efad8a050cc4c19afa97c59045a99cac7827271cb41c65e590e09da3275600c2f09b8367793a9aca3db71cc30c58179ec3e87c14c01d5c1f3434f1d87
43
44 PKEYKDF = HKDF
45 Ctrl.mode = mode:EXTRACT_ONLY
46 Ctrl.md = md:SHA256
47 Ctrl.IKM = hexkey:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f
48 Ctrl.salt = hexsalt:606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeaf
49 Output = 06a6b88c5853361a06104c9ceb35b45cef760014904671014a193f40c15fc244
50
51 PKEYKDF = HKDF
52 Ctrl.mode = mode:EXPAND_ONLY
53 Ctrl.md = md:SHA256
54 Ctrl.IKM = hexkey:06a6b88c5853361a06104c9ceb35b45cef760014904671014a193f40c15fc244
55 Ctrl.info = hexinfo:b0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
56 Output = b11e398dc80327a1c8e7f78c596a49344f012eda2d4efad8a050cc4c19afa97c59045a99cac7827271cb41c65e590e09da3275600c2f09b8367793a9aca3db71cc30c58179ec3e87c14c01d5c1f3434f1d87
57
58 PKEYKDF = HKDF
59 Ctrl.md = md:SHA256
60 Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b
61 Ctrl.salt = salt:
62 Ctrl.info = info:
63 Output = 8da4e775a563c18f715f802a063c5a31b8a11f5c5ee1879ec3454e5f3c738d2d9d201395faa4b61a96c8
64
65 PKEYKDF = HKDF
66 Ctrl.mode = mode:EXTRACT_ONLY
67 Ctrl.md = md:SHA256
68 Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b
69 Ctrl.salt = salt:
70 Ctrl.info = info:
71 Output = 19ef24a32c717b167f33a91d6f648bdf96596776afdb6377ac434c1c293ccb04
72
73 PKEYKDF = HKDF
74 Ctrl.mode = mode:EXPAND_ONLY
75 Ctrl.md = md:SHA256
76 Ctrl.IKM = hexkey:19ef24a32c717b167f33a91d6f648bdf96596776afdb6377ac434c1c293ccb04
77 Ctrl.info = info:
78 Output = 8da4e775a563c18f715f802a063c5a31b8a11f5c5ee1879ec3454e5f3c738d2d9d201395faa4b61a96c8
79
80 PKEYKDF = HKDF
81 Ctrl.md = md:SHA1
82 Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b
83 Ctrl.salt = hexsalt:000102030405060708090a0b0c
84 Ctrl.info = hexinfo:f0f1f2f3f4f5f6f7f8f9
85 Output = 085a01ea1b10f36933068b56efa5ad81a4f14b822f5b091568a9cdd4f155fda2c22e422478d305f3f896
86
87 PKEYKDF = HKDF
88 Ctrl.mode = mode:EXTRACT_ONLY
89 Ctrl.md = md:SHA1
90 Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b
91 Ctrl.salt = hexsalt:000102030405060708090a0b0c
92 Output = 9b6c18c432a7bf8f0e71c8eb88f4b30baa2ba243
93
94 PKEYKDF = HKDF
95 Ctrl.mode = mode:EXPAND_ONLY
96 Ctrl.md = md:SHA1
97 Ctrl.IKM = hexkey:9b6c18c432a7bf8f0e71c8eb88f4b30baa2ba243
98 Ctrl.info = hexinfo:f0f1f2f3f4f5f6f7f8f9
99 Output = 085a01ea1b10f36933068b56efa5ad81a4f14b822f5b091568a9cdd4f155fda2c22e422478d305f3f896
100
101 PKEYKDF = HKDF
102 Ctrl.md = md:SHA1
103 Ctrl.IKM = hexkey:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f
104 Ctrl.salt = hexsalt:606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeaf
105 Ctrl.info = hexinfo:b0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
106 Output = 0bd770a74d1160f7c9f12cd5912a06ebff6adcae899d92191fe4305673ba2ffe8fa3f1a4e5ad79f3f334b3b202b2173c486ea37ce3d397ed034c7f9dfeb15c5e927336d0441f4c4300e2cff0d0900b52d3b4
107
108 PKEYKDF = HKDF
109 Ctrl.mode = mode:EXTRACT_ONLY
110 Ctrl.md = md:SHA1
111 Ctrl.IKM = hexkey:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f
112 Ctrl.salt = hexsalt:606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeaf
113 Output = 8adae09a2a307059478d309b26c4115a224cfaf6
114
115 PKEYKDF = HKDF
116 Ctrl.mode = mode:EXPAND_ONLY
117 Ctrl.md = md:SHA1
118 Ctrl.IKM = hexkey:8adae09a2a307059478d309b26c4115a224cfaf6
119 Ctrl.info = hexinfo:b0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
120 Output = 0bd770a74d1160f7c9f12cd5912a06ebff6adcae899d92191fe4305673ba2ffe8fa3f1a4e5ad79f3f334b3b202b2173c486ea37ce3d397ed034c7f9dfeb15c5e927336d0441f4c4300e2cff0d0900b52d3b4
121
122 PKEYKDF = HKDF
123 Ctrl.md = md:SHA1
124 Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b
125 Ctrl.salt = salt:
126 Ctrl.info = info:
127 Output = 0ac1af7002b3d761d1e55298da9d0506b9ae52057220a306e07b6b87e8df21d0ea00033de03984d34918
128
129 PKEYKDF = HKDF
130 Ctrl.mode = mode:EXTRACT_ONLY
131 Ctrl.md = md:SHA1
132 Ctrl.IKM = hexkey:0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b
133 Ctrl.salt = salt:
134 Output = da8c8a73c7fa77288ec6f5e7c297786aa0d32d01
135
136 PKEYKDF = HKDF
137 Ctrl.mode = mode:EXPAND_ONLY
138 Ctrl.md = md:SHA1
139 Ctrl.IKM = hexkey:da8c8a73c7fa77288ec6f5e7c297786aa0d32d01
140 Ctrl.info = info:
141 Output = 0ac1af7002b3d761d1e55298da9d0506b9ae52057220a306e07b6b87e8df21d0ea00033de03984d34918
142
143 PKEYKDF = HKDF
144 Ctrl.md = md:SHA1
145 Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c
146 Ctrl.salt = salt:
147 Ctrl.info = info:
148 Output = 2c91117204d745f3500d636a62f64f0ab3bae548aa53d423b0d1f27ebba6f5e5673a081d70cce7acfc48
149
150 PKEYKDF = HKDF
151 Ctrl.mode = mode:EXTRACT_ONLY
152 Ctrl.md = md:SHA1
153 Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c
154 Ctrl.salt = salt:
155 Output = 2adccada18779e7c2077ad2eb19d3f3e731385dd
156
157 PKEYKDF = HKDF
158 Ctrl.mode = mode:EXPAND_ONLY
159 Ctrl.md = md:SHA1
160 Ctrl.IKM = hexkey:2adccada18779e7c2077ad2eb19d3f3e731385dd
161 Ctrl.info = info:
162 Output = 2c91117204d745f3500d636a62f64f0ab3bae548aa53d423b0d1f27ebba6f5e5673a081d70cce7acfc48
163
164 PKEYKDF = HKDF
165 Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c
166 Ctrl.salt = salt:
167 Ctrl.info = info:
168 Output = 00
169 Result = KDF_DERIVE_ERROR
170
171 PKEYKDF = HKDF
172 Ctrl.md = md:SHA1
173 Ctrl.salt = salt:
174 Ctrl.info = info:
175 Output = 00
176 Result = KDF_DERIVE_ERROR
177
178 PKEYKDF = HKDF
179 Ctrl.md = md:SHA1
180 Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c
181 Ctrl.info = info:
182 Output = 2c91117204d745f3500d636a62f64f0ab3bae548aa53d423b0d1f27ebba6f5e5673a081d70cce7acfc48
183
184 PKEYKDF = HKDF
185 Ctrl.md = md:SHA1
186 Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c
187 Ctrl.salt = salt:
188 Output = 2c91117204d745f3500d636a62f64f0ab3bae548aa53d423b0d1f27ebba6f5e5673a081d70cce7acfc48
189
190 PKEYKDF = HKDF
191 Ctrl.mode = mode:EXTRACT_AND_EXPAND
192 Ctrl.md = md:SHA1
193 Ctrl.IKM = hexkey:0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c
194 Ctrl.salt = salt:
195 Output = 2c91117204d745f3500d636a62f64f0ab3bae548aa53d423b0d1f27ebba6f5e5673a081d70cce7acfc48