OLD | NEW |
| (Empty) |
1 // This file contains incorrect key data in a variety of formats. | |
2 // "key" -- either a dictionary for JWK, or hex encoded bytes for PKCS8/SPKI. | |
3 // "key_format" -- one of: "jwk", "pkcs8", "spki" | |
4 // "error" -- The expected rejection reason when importing the key. | |
5 [ | |
6 // -------------------------------------------------------------------------- | |
7 // Bad public keys | |
8 // -------------------------------------------------------------------------- | |
9 // TODO(eroman): Group the bad public keys by format type. | |
10 | |
11 // Import Error: P-521 is requested by importKey(), however the JWK's curve is
for P-256. | |
12 { | |
13 "crv": "P-521", | |
14 "key_format": "jwk", | |
15 "key": { | |
16 "kty": "EC", | |
17 "crv": "P-256", | |
18 "x": "APUKCHAyUMFfBDyMRumXg0NSRc-Y9PJpSw4vjQKaUU3W8LCG1O2JIADNVZAQeq5pxMCn
qV98905XcKB9XbVbzkq0", | |
19 "y": "APLHcLq4ub5M227NPcJsaY2g0lmc6_PZBPf5yjpV5kcxgQ1zzTFyZOULq6S8KGCFfhbW
y7eVAbyeOjK9Fy6opx3u" | |
20 }, | |
21 "error": "DataError: The JWK's \"crv\" member specifies a different curve th
an requested" | |
22 }, | |
23 | |
24 // Import Error: P-521 is requested by importKey(), however the JWK's algorith
m implies P-256 | |
25 { | |
26 "crv": "P-521", | |
27 "key_format": "jwk", | |
28 "key": { | |
29 "kty": "EC", | |
30 "alg": "ES256", | |
31 "crv": "P-521", | |
32 "x": "APUKCHAyUMFfBDyMRumXg0NSRc-Y9PJpSw4vjQKaUU3W8LCG1O2JIADNVZAQeq5pxMCn
qV98905XcKB9XbVbzkq0", | |
33 "y": "APLHcLq4ub5M227NPcJsaY2g0lmc6_PZBPf5yjpV5kcxgQ1zzTFyZOULq6S8KGCFfhbW
y7eVAbyeOjK9Fy6opx3u" | |
34 }, | |
35 "error": "DataError: The JWK \"alg\" member was inconsistent with that speci
fied by the Web Crypto call" | |
36 }, | |
37 | |
38 // Import Error: crv is missing | |
39 { | |
40 "crv": "P-384", | |
41 "key_format": "jwk", | |
42 "key": { | |
43 "kty": "EC", | |
44 "x": "hqwS3Qp_5bgf2uhrEkNdMW75OSo_ULMHq2XZxged0NLYGdwJ4ihhRZwu2Z-6tm-u", | |
45 "y": "rIREB3qu1tbMrL5npMqs7gtaCUo1dcoS6ktHdMAw_hyHDJJJAj9dxNmtbjM2aMw4" | |
46 }, | |
47 "error": "DataError: The required JWK member \"crv\" was missing" | |
48 }, | |
49 | |
50 // Import Error: x is missing | |
51 { | |
52 "crv": "P-384", | |
53 "key_format": "jwk", | |
54 "key": { | |
55 "kty": "EC", | |
56 "crv": "P-384", | |
57 "y": "rIREB3qu1tbMrL5npMqs7gtaCUo1dcoS6ktHdMAw_hyHDJJJAj9dxNmtbjM2aMw4" | |
58 }, | |
59 "error": "DataError: The required JWK member \"x\" was missing" | |
60 }, | |
61 | |
62 // Import Error: Invalid key (x was corrupted) | |
63 { | |
64 "crv": "P-256", | |
65 "key_format": "jwk", | |
66 "key": { | |
67 "kty": "EC", | |
68 "crv": "P-256", | |
69 "x": "nLPPaTA9r8dh1ORoe07PA55tNKuWSvgIENjVWKSo1vc", | |
70 "y": "LVEjOheIkgqG7gihlix576MX-3h54pfa0hRtuZX6HHg" | |
71 }, | |
72 "error": "DataError" | |
73 }, | |
74 | |
75 // Import Error: Incorrect kty. | |
76 { | |
77 "crv": "P-384", | |
78 "key_format": "jwk", | |
79 "key": { | |
80 "kty": "RSA", | |
81 "crv": "P-384", | |
82 "x": "hqwS3Qp_5bgf2uhrEkNdMW75OSo_ULMHq2XZxged0NLYGdwJ4ihhRZwu2Z-6tm-u", | |
83 "y": "rIREB3qu1tbMrL5npMqs7gtaCUo1dcoS6ktHdMAw_hyHDJJJAj9dxNmtbjM2aMw4" | |
84 }, | |
85 "error": "DataError: The JWK \"kty\" member was not \"EC\"" | |
86 }, | |
87 | |
88 // Import Error: SPKI data is empty. | |
89 { | |
90 "crv": "P-384", | |
91 "key_format": "spki", | |
92 "key": "", | |
93 "error": "DataError" | |
94 }, | |
95 | |
96 // Import Error: SPKI data is invalid. | |
97 { | |
98 "crv": "P-384", | |
99 "key_format": "spki", | |
100 "key": "00010203", | |
101 "error": "DataError" | |
102 }, | |
103 | |
104 // Import Error: SPKI data is invalid (1 byte was corrupted) | |
105 { | |
106 "crv": "P-256", | |
107 "key_format": "spki", | |
108 "key": "3059301306072A8648CE3D020106082A8748CE3D030107034200049CB0CF69303DAF
C761D4E4687B4ECF039E6D34AB964AF80810D8D558A4A8D6F72D51233A1788920A86EE08A1962C79
EFA317FB7879E297DAD2146DB995FA1C78", | |
109 "error": "DataError" | |
110 }, | |
111 | |
112 // Import Error: SPKI data is invalid (1 byte truncated from end) | |
113 { | |
114 "crv": "P-256", | |
115 "key_format": "spki", | |
116 "key": "3059301306072A8648CE3D020106082A8648CE3D030107034200049CB0CF69303DAF
C761D4E4687B4ECF039E6D34AB964AF80810D8D558A4A8D6F72D51233A1788920A86EE08A1962C79
EFA317FB7879E297DAD2146DB995FA1C", | |
117 "error": "DataError" | |
118 }, | |
119 | |
120 // Import Error: Valid SPKI data was provided, however it is for an RSA key | |
121 { | |
122 "crv": "P-256", | |
123 "key_format": "spki", | |
124 "key": "30819f300d06092a864886f70d010101050003818d0030818902818100a56e4a0e70
1017589a5187dc7ea841d156f2ec0e36ad52a44dfeb1e61f7ad991d8c51056ffedb162b4c0f283a1
2a88a394dff526ab7291cbb307ceabfce0b1dfd5cd9508096d5b2b8b6df5d671ef6377c0921cb23c
270a70e2598e6ff89d19f105acc2d3f0cb35f29280e1386b6f64c4ef22e1e1f20d0ce8cffb2249bd
9a21370203010001", | |
125 "error": "DataError" | |
126 }, | |
127 | |
128 // Import Error: JWK was given where the "x" member is not zero-padded. | |
129 { | |
130 "crv": "P-256", | |
131 "key_format": "jwk", | |
132 "key": { | |
133 "kty": "EC", | |
134 "crv": "P-256", | |
135 "x": "2A0aLWA8otEPMLZFAksn2h5JC3HrJNNu4MRksc-b2Q", | |
136 "y": "lZYURbYRHyeqmHQOEKxrVVJZzL0_BByXwMCwRKzAN_k" | |
137 }, | |
138 "error": "DataError: The JWK's \"x\" member defines an octet string of lengt
h 31 bytes but should be 32" | |
139 }, | |
140 | |
141 // Import Error: JWK was given where the "x" member is not zero-padded. | |
142 { | |
143 "crv": "P-256", | |
144 "key_format": "jwk", | |
145 "key": { | |
146 "kty": "EC", | |
147 "crv": "P-256", | |
148 "x": "V_S9kHyUTFiXiIJNovS89K0ctDtXe2qthCWjs4J7Bb0", | |
149 "y": "e-6aI45DddCJGrGWqgH83fFjn_eS7s8ygoeZJbh2Bg" | |
150 }, | |
151 "error": "DataError: The JWK's \"y\" member defines an octet string of lengt
h 31 bytes but should be 32" | |
152 }, | |
153 | |
154 // Import Error: The SPKI is valid, however contains 3 trailing bytes. | |
155 { | |
156 "crv": "P-256", | |
157 "key_format": "spki", | |
158 "key": "3059301306072A8648CE3D020106082A8648CE3D030107034200049CB0CF69303DAF
C761D4E4687B4ECF039E6D34AB964AF80810D8D558A4A8D6F72D51233A1788920A86EE08A1962C79
EFA317FB7879E297DAD2146DB995FA1C78000000", | |
159 "error": "DataError" | |
160 }, | |
161 | |
162 // -------------------------------------------------------------------------- | |
163 // Bad private keys (JWK) | |
164 // -------------------------------------------------------------------------- | |
165 | |
166 // The "d" parameter was modified, such that it is no longer consistent with | |
167 // the public key. | |
168 { | |
169 "crv": "P-256", | |
170 "key_format": "jwk", | |
171 "key": { | |
172 "kty": "EC", | |
173 "crv": "P-256", | |
174 "d": "H-M5UMX0YRKK6ZLCvf3xxzsWFfVxvVZ-YNGaofSM30I", | |
175 "x": "fBEMZtz9qAf25p5F3bPHT2mhSE0gPo3Frajpqd18s8c", | |
176 "y": "DfRImG5RveXRV2-ZkB-cLGqAakf9kHZDpyuDVZfvyMY" | |
177 }, | |
178 "error": "DataError: The imported EC key is invalid" | |
179 }, | |
180 | |
181 // The "d" parameter is empty. | |
182 { | |
183 "crv": "P-256", | |
184 "key_format": "jwk", | |
185 "key": { | |
186 "kty": "EC", | |
187 "crv": "P-256", | |
188 "d": "", | |
189 "x": "fBEMZtz9qAf25p5F3bPHT2mhSE0gPo3Frajpqd18s8c", | |
190 "y": "DfRImG5RveXRV2-ZkB-cLGqAakf9kHZDpyuDVZfvyMY" | |
191 }, | |
192 "error": "DataError: The JWK's \"d\" member defines an octet string of lengt
h 0 bytes but should be 32" | |
193 }, | |
194 | |
195 // The y parameter has been modified (no longer a valid point on curve). | |
196 { | |
197 "crv": "P-384", | |
198 "key_format": "jwk", | |
199 "key": { | |
200 "kty": "EC", | |
201 "crv": "P-384", | |
202 "d": "pJLOj6kAhMIn4aMveXTTnp_2en6HBew0GbNftgdYK-vUYeCxUgrHbsLdTptj665x", | |
203 "x": "5V_ubEnY1SP1znv5wEJc5P9lBwi33lz7CVkBUjl5p_BCYC2zCFRzU2mBO1w_Xvho", | |
204 "y": "KPWcxdxQlJKpiNOKjiUZ3j0MT9D72wmT448YUGwXYGxeJCSSRvHOlJg6U2HFvpg-" | |
205 }, | |
206 "error": "DataError" | |
207 }, | |
208 | |
209 // -------------------------------------------------------------------------- | |
210 // Bad private keys (PKCS8) | |
211 // -------------------------------------------------------------------------- | |
212 | |
213 // The private key is exactly equal to the order, and the public key is | |
214 // private key * order. | |
215 { | |
216 "crv": "P-256", | |
217 "key_format": "pkcs8", | |
218 "key": "3066020100301306072A8648CE3D020106082A8648CE3D030107044C304A02010104
20FFFFFFFF00000000FFFFFFFFFFFFFFFFBCE6FAADA7179E84F3B9CAC2FC632551A12303210000FF
FFFF00000000FFFFFFFFFFFFFFFFBCE6FAADA7179E84F3B9CAC2FC632551", | |
219 "error": "DataError" | |
220 }, | |
221 | |
222 // The private key is exactly equal to the order, and the public key is | |
223 // omitted. | |
224 { | |
225 "crv": "P-256", | |
226 "key_format": "pkcs8", | |
227 "key": "3041020100301306072A8648CE3D020106082A8648CE3D0301070427302502010104
20FFFFFFFF00000000FFFFFFFFFFFFFFFFBCE6FAADA7179E84F3B9CAC2FC632551", | |
228 "error": "DataError: The imported EC key is invalid" | |
229 }, | |
230 | |
231 // The private key is exactly equal to the order + 11, and the public key is | |
232 // private key * order. | |
233 { | |
234 "crv": "P-521", | |
235 "key_format": "pkcs8", | |
236 "key": "3081EE020100301006072A8648CE3D020106052B810400230481D63081D302010104
4201FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA51868783BF
2F966B7FCC0148F709A5D03BB5C9B8899C47AEBB6FB71E91386414A181890381860004008A758412
59FDEDFF546F1A39573B4315CFED5DC7ED7C17849543EF2C54F2991652F3DBC5332663DA1BD19B1A
EBE3191085015C024FA4C9A902ECC0E02DDA0CDB9A0096FB303FCBBA2129849D0CA877054FB2293A
DD566210BD0493ED2E95D4E0B9B82B1BC8A90E8B42A4AB3892331914A95336DCAC80E3F4819B5D58
874F92CE48C808", | |
237 "error": "DataError: The imported EC key is invalid" | |
238 }, | |
239 | |
240 // The private key is exactly equal to the order + 11, and the public key is | |
241 // omitted. | |
242 { | |
243 "crv": "P-521", | |
244 "key_format": "pkcs8", | |
245 "key": "3060020100301006072A8648CE3D020106052B8104002304493047020101044201FF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA51868783BF2F966B
7FCC0148F709A5D03BB5C9B8899C47AEBB6FB71E91386414", | |
246 "error": "DataError: The imported EC key is invalid" | |
247 } | |
248 ] | |
OLD | NEW |