blob: 33ad4e3db7b31eae4d2373bcb00ca765251b876e [file] [log] [blame]
Joe Subbiania16ccac2021-07-22 18:52:17 +01001#!/usr/bin/env python3
2
Joe Subbiani6452f1e2021-07-27 15:28:07 +01003# test_translate_ciphers_names.py
Joe Subbiania16ccac2021-07-22 18:52:17 +01004#
5# Copyright The Mbed TLS Contributors
6# SPDX-License-Identifier: Apache-2.0
7#
8# Licensed under the Apache License, Version 2.0 (the "License"); you may
9# not use this file except in compliance with the License.
10# You may obtain a copy of the License at
11#
12# http://www.apache.org/licenses/LICENSE-2.0
13#
14# Unless required by applicable law or agreed to in writing, software
15# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
16# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17# See the License for the specific language governing permissions and
18# limitations under the License.
19#
Joe Subbiania16ccac2021-07-22 18:52:17 +010020
Joe Subbianif849a932021-07-28 16:50:30 +010021"""
Joe Subbiani918ee792021-07-30 16:57:04 +010022Test translate_ciphers.py by running every Mbed TLS ciphersuite name
Joe Subbianif849a932021-07-28 16:50:30 +010023combination through the translate functions and comparing them to their
24correct GNUTLS or OpenSSL counterpart.
25"""
Joe Subbiani918ee792021-07-30 16:57:04 +010026import sys
Joe Subbianif849a932021-07-28 16:50:30 +010027from translate_ciphers import translate_gnutls, translate_ossl
Joe Subbiani3ad58322021-07-21 16:48:54 +010028
29def assert_equal(translate, original):
Joe Subbianif849a932021-07-28 16:50:30 +010030 """
31 Compare the translated ciphersuite name against the original
32 On fail, print the mismatch on the screen to directly compare the
33 differences
34 """
Joe Subbiani3ad58322021-07-21 16:48:54 +010035 try:
Joe Subbianif849a932021-07-28 16:50:30 +010036 assert translate == original
Joe Subbiani3ad58322021-07-21 16:48:54 +010037 except AssertionError:
38 print("%s\n%s\n" %(translate, original))
Joe Subbiani918ee792021-07-30 16:57:04 +010039 sys.exit(1)
Joe Subbiani3ad58322021-07-21 16:48:54 +010040
41def test_all_common():
Joe Subbianif849a932021-07-28 16:50:30 +010042 """
Joe Subbiani918ee792021-07-30 16:57:04 +010043 Translate the Mbed TLS ciphersuite names to the common OpenSSL and
44 GnuTLS ciphersuite names, and compare them with the true, expected
Joe Subbianif849a932021-07-28 16:50:30 +010045 corresponding OpenSSL and GnuTLS ciphersuite names
46 """
Joe Subbiani918ee792021-07-30 16:57:04 +010047 ciphers = [
48 ("TLS-ECDHE-ECDSA-WITH-NULL-SHA",
49 "+ECDHE-ECDSA:+NULL:+SHA1",
50 "ECDHE-ECDSA-NULL-SHA"),
51 ("TLS-ECDHE-ECDSA-WITH-3DES-EDE-CBC-SHA",
52 "+ECDHE-ECDSA:+3DES-CBC:+SHA1",
53 "ECDHE-ECDSA-DES-CBC3-SHA"),
54 ("TLS-ECDHE-ECDSA-WITH-AES-128-CBC-SHA",
55 "+ECDHE-ECDSA:+AES-128-CBC:+SHA1",
56 "ECDHE-ECDSA-AES128-SHA"),
57 ("TLS-ECDHE-ECDSA-WITH-AES-256-CBC-SHA",
58 "+ECDHE-ECDSA:+AES-256-CBC:+SHA1",
59 "ECDHE-ECDSA-AES256-SHA"),
60 ("TLS-ECDHE-ECDSA-WITH-AES-128-CBC-SHA256",
61 "+ECDHE-ECDSA:+AES-128-CBC:+SHA256",
62 "ECDHE-ECDSA-AES128-SHA256"),
63 ("TLS-ECDHE-ECDSA-WITH-AES-256-CBC-SHA384",
64 "+ECDHE-ECDSA:+AES-256-CBC:+SHA384",
65 "ECDHE-ECDSA-AES256-SHA384"),
66 ("TLS-ECDHE-ECDSA-WITH-AES-128-GCM-SHA256",
67 "+ECDHE-ECDSA:+AES-128-GCM:+AEAD",
68 "ECDHE-ECDSA-AES128-GCM-SHA256"),
69 ("TLS-ECDHE-ECDSA-WITH-AES-256-GCM-SHA384",
70 "+ECDHE-ECDSA:+AES-256-GCM:+AEAD",
71 "ECDHE-ECDSA-AES256-GCM-SHA384"),
72 ("TLS-DHE-RSA-WITH-AES-128-CBC-SHA",
73 "+DHE-RSA:+AES-128-CBC:+SHA1",
74 "DHE-RSA-AES128-SHA"),
75 ("TLS-DHE-RSA-WITH-AES-256-CBC-SHA",
76 "+DHE-RSA:+AES-256-CBC:+SHA1",
77 "DHE-RSA-AES256-SHA"),
78 ("TLS-DHE-RSA-WITH-CAMELLIA-128-CBC-SHA",
79 "+DHE-RSA:+CAMELLIA-128-CBC:+SHA1",
80 "DHE-RSA-CAMELLIA128-SHA"),
81 ("TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA",
82 "+DHE-RSA:+CAMELLIA-256-CBC:+SHA1",
83 "DHE-RSA-CAMELLIA256-SHA"),
84 ("TLS-DHE-RSA-WITH-3DES-EDE-CBC-SHA",
85 "+DHE-RSA:+3DES-CBC:+SHA1",
86 "EDH-RSA-DES-CBC3-SHA"),
87 ("TLS-RSA-WITH-AES-256-CBC-SHA",
88 "+RSA:+AES-256-CBC:+SHA1",
89 "AES256-SHA"),
90 ("TLS-RSA-WITH-CAMELLIA-256-CBC-SHA",
91 "+RSA:+CAMELLIA-256-CBC:+SHA1",
92 "CAMELLIA256-SHA"),
93 ("TLS-RSA-WITH-AES-128-CBC-SHA",
94 "+RSA:+AES-128-CBC:+SHA1",
95 "AES128-SHA"),
96 ("TLS-RSA-WITH-CAMELLIA-128-CBC-SHA",
97 "+RSA:+CAMELLIA-128-CBC:+SHA1",
98 "CAMELLIA128-SHA"),
99 ("TLS-RSA-WITH-3DES-EDE-CBC-SHA",
100 "+RSA:+3DES-CBC:+SHA1",
101 "DES-CBC3-SHA"),
102 ("TLS-RSA-WITH-NULL-MD5",
103 "+RSA:+NULL:+MD5",
104 "NULL-MD5"),
105 ("TLS-RSA-WITH-NULL-SHA",
106 "+RSA:+NULL:+SHA1",
107 "NULL-SHA"),
108 ("TLS-ECDHE-RSA-WITH-AES-128-CBC-SHA",
109 "+ECDHE-RSA:+AES-128-CBC:+SHA1",
110 "ECDHE-RSA-AES128-SHA"),
111 ("TLS-ECDHE-RSA-WITH-AES-256-CBC-SHA",
112 "+ECDHE-RSA:+AES-256-CBC:+SHA1",
113 "ECDHE-RSA-AES256-SHA"),
114 ("TLS-ECDHE-RSA-WITH-3DES-EDE-CBC-SHA",
115 "+ECDHE-RSA:+3DES-CBC:+SHA1",
116 "ECDHE-RSA-DES-CBC3-SHA"),
117 ("TLS-ECDHE-RSA-WITH-NULL-SHA",
118 "+ECDHE-RSA:+NULL:+SHA1",
119 "ECDHE-RSA-NULL-SHA"),
120 ("TLS-RSA-WITH-AES-128-CBC-SHA256",
121 "+RSA:+AES-128-CBC:+SHA256",
122 "AES128-SHA256"),
123 ("TLS-DHE-RSA-WITH-AES-128-CBC-SHA256",
124 "+DHE-RSA:+AES-128-CBC:+SHA256",
125 "DHE-RSA-AES128-SHA256"),
126 ("TLS-RSA-WITH-AES-256-CBC-SHA256",
127 "+RSA:+AES-256-CBC:+SHA256",
128 "AES256-SHA256"),
129 ("TLS-DHE-RSA-WITH-AES-256-CBC-SHA256",
130 "+DHE-RSA:+AES-256-CBC:+SHA256",
131 "DHE-RSA-AES256-SHA256"),
132 ("TLS-ECDHE-RSA-WITH-AES-128-CBC-SHA256",
133 "+ECDHE-RSA:+AES-128-CBC:+SHA256",
134 "ECDHE-RSA-AES128-SHA256"),
135 ("TLS-ECDHE-RSA-WITH-AES-256-CBC-SHA384",
136 "+ECDHE-RSA:+AES-256-CBC:+SHA384",
137 "ECDHE-RSA-AES256-SHA384"),
138 ("TLS-RSA-WITH-AES-128-GCM-SHA256",
139 "+RSA:+AES-128-GCM:+AEAD",
140 "AES128-GCM-SHA256"),
141 ("TLS-RSA-WITH-AES-256-GCM-SHA384",
142 "+RSA:+AES-256-GCM:+AEAD",
143 "AES256-GCM-SHA384"),
144 ("TLS-DHE-RSA-WITH-AES-128-GCM-SHA256",
145 "+DHE-RSA:+AES-128-GCM:+AEAD",
146 "DHE-RSA-AES128-GCM-SHA256"),
147 ("TLS-DHE-RSA-WITH-AES-256-GCM-SHA384",
148 "+DHE-RSA:+AES-256-GCM:+AEAD",
149 "DHE-RSA-AES256-GCM-SHA384"),
150 ("TLS-ECDHE-RSA-WITH-AES-128-GCM-SHA256",
151 "+ECDHE-RSA:+AES-128-GCM:+AEAD",
152 "ECDHE-RSA-AES128-GCM-SHA256"),
153 ("TLS-ECDHE-RSA-WITH-AES-256-GCM-SHA384",
154 "+ECDHE-RSA:+AES-256-GCM:+AEAD",
155 "ECDHE-RSA-AES256-GCM-SHA384"),
156 ("TLS-PSK-WITH-3DES-EDE-CBC-SHA",
157 "+PSK:+3DES-CBC:+SHA1",
158 "PSK-3DES-EDE-CBC-SHA"),
159 ("TLS-PSK-WITH-AES-128-CBC-SHA",
160 "+PSK:+AES-128-CBC:+SHA1",
161 "PSK-AES128-CBC-SHA"),
162 ("TLS-PSK-WITH-AES-256-CBC-SHA",
163 "+PSK:+AES-256-CBC:+SHA1",
164 "PSK-AES256-CBC-SHA"),
Joe Subbiani3ad58322021-07-21 16:48:54 +0100165
Joe Subbiani918ee792021-07-30 16:57:04 +0100166 ("TLS-ECDH-ECDSA-WITH-NULL-SHA",
167 None,
168 "ECDH-ECDSA-NULL-SHA"),
169 ("TLS-ECDH-ECDSA-WITH-3DES-EDE-CBC-SHA",
170 None,
171 "ECDH-ECDSA-DES-CBC3-SHA"),
172 ("TLS-ECDH-ECDSA-WITH-AES-128-CBC-SHA",
173 None,
174 "ECDH-ECDSA-AES128-SHA"),
175 ("TLS-ECDH-ECDSA-WITH-AES-256-CBC-SHA",
176 None,
177 "ECDH-ECDSA-AES256-SHA"),
178 ("TLS-ECDH-ECDSA-WITH-AES-128-CBC-SHA256",
179 None,
180 "ECDH-ECDSA-AES128-SHA256"),
181 ("TLS-ECDH-ECDSA-WITH-AES-256-CBC-SHA384",
182 None,
183 "ECDH-ECDSA-AES256-SHA384"),
184 ("TLS-ECDH-ECDSA-WITH-AES-128-GCM-SHA256",
185 None,
186 "ECDH-ECDSA-AES128-GCM-SHA256"),
187 ("TLS-ECDH-ECDSA-WITH-AES-256-GCM-SHA384",
188 None,
189 "ECDH-ECDSA-AES256-GCM-SHA384"),
190 ("TLS-ECDHE-ECDSA-WITH-ARIA-256-GCM-SHA384",
191 None,
192 "ECDHE-ECDSA-ARIA256-GCM-SHA384"),
193 ("TLS-ECDHE-ECDSA-WITH-ARIA-128-GCM-SHA256",
194 None,
195 "ECDHE-ECDSA-ARIA128-GCM-SHA256"),
196 ("TLS-ECDHE-ECDSA-WITH-CHACHA20-POLY1305-SHA256",
197 None,
198 "ECDHE-ECDSA-CHACHA20-POLY1305"),
199 ("TLS-RSA-WITH-DES-CBC-SHA",
200 None,
201 "DES-CBC-SHA"),
202 ("TLS-DHE-RSA-WITH-DES-CBC-SHA",
203 None,
204 "EDH-RSA-DES-CBC-SHA"),
205 ("TLS-ECDHE-RSA-WITH-ARIA-256-GCM-SHA384",
206 None,
207 "ECDHE-ARIA256-GCM-SHA384"),
208 ("TLS-DHE-RSA-WITH-ARIA-256-GCM-SHA384",
209 None,
210 "DHE-RSA-ARIA256-GCM-SHA384"),
211 ("TLS-RSA-WITH-ARIA-256-GCM-SHA384",
212 None,
213 "ARIA256-GCM-SHA384"),
214 ("TLS-ECDHE-RSA-WITH-ARIA-128-GCM-SHA256",
215 None,
216 "ECDHE-ARIA128-GCM-SHA256"),
217 ("TLS-DHE-RSA-WITH-ARIA-128-GCM-SHA256",
218 None,
219 "DHE-RSA-ARIA128-GCM-SHA256"),
220 ("TLS-RSA-WITH-ARIA-128-GCM-SHA256",
221 None,
222 "ARIA128-GCM-SHA256"),
223 ("TLS-DHE-RSA-WITH-CHACHA20-POLY1305-SHA256",
224 None,
225 "DHE-RSA-CHACHA20-POLY1305"),
226 ("TLS-ECDHE-RSA-WITH-CHACHA20-POLY1305-SHA256",
227 None,
228 "ECDHE-RSA-CHACHA20-POLY1305"),
229 ("TLS-DHE-PSK-WITH-ARIA-256-GCM-SHA384",
230 None,
231 "DHE-PSK-ARIA256-GCM-SHA384"),
232 ("TLS-DHE-PSK-WITH-ARIA-128-GCM-SHA256",
233 None,
234 "DHE-PSK-ARIA128-GCM-SHA256"),
235 ("TLS-PSK-WITH-ARIA-256-GCM-SHA384",
236 None,
237 "PSK-ARIA256-GCM-SHA384"),
238 ("TLS-PSK-WITH-ARIA-128-GCM-SHA256",
239 None,
240 "PSK-ARIA128-GCM-SHA256"),
241 ("TLS-PSK-WITH-CHACHA20-POLY1305-SHA256",
242 None,
243 "PSK-CHACHA20-POLY1305"),
244 ("TLS-ECDHE-PSK-WITH-CHACHA20-POLY1305-SHA256",
245 None,
246 "ECDHE-PSK-CHACHA20-POLY1305"),
247 ("TLS-DHE-PSK-WITH-CHACHA20-POLY1305-SHA256",
248 None,
249 "DHE-PSK-CHACHA20-POLY1305"),
Joe Subbiani3ad58322021-07-21 16:48:54 +0100250
Joe Subbiani918ee792021-07-30 16:57:04 +0100251 ("TLS-ECDHE-ECDSA-WITH-CAMELLIA-128-CBC-SHA256",
252 "+ECDHE-ECDSA:+CAMELLIA-128-CBC:+SHA256",
253 None),
254 ("TLS-ECDHE-ECDSA-WITH-CAMELLIA-256-CBC-SHA384",
255 "+ECDHE-ECDSA:+CAMELLIA-256-CBC:+SHA384",
256 None),
257 ("TLS-ECDHE-ECDSA-WITH-CAMELLIA-128-GCM-SHA256",
258 "+ECDHE-ECDSA:+CAMELLIA-128-GCM:+AEAD",
259 None),
260 ("TLS-ECDHE-ECDSA-WITH-CAMELLIA-256-GCM-SHA384",
261 "+ECDHE-ECDSA:+CAMELLIA-256-GCM:+AEAD",
262 None),
263 ("TLS-ECDHE-ECDSA-WITH-AES-128-CCM",
264 "+ECDHE-ECDSA:+AES-128-CCM:+AEAD",
265 None),
266 ("TLS-ECDHE-ECDSA-WITH-AES-256-CCM",
267 "+ECDHE-ECDSA:+AES-256-CCM:+AEAD",
268 None),
269 ("TLS-ECDHE-ECDSA-WITH-AES-128-CCM-8",
270 "+ECDHE-ECDSA:+AES-128-CCM-8:+AEAD",
271 None),
272 ("TLS-ECDHE-ECDSA-WITH-AES-256-CCM-8",
273 "+ECDHE-ECDSA:+AES-256-CCM-8:+AEAD",
274 None),
275 ("TLS-RSA-WITH-NULL-SHA256",
276 "+RSA:+NULL:+SHA256",
277 None),
278 ("TLS-ECDHE-RSA-WITH-CAMELLIA-128-CBC-SHA256",
279 "+ECDHE-RSA:+CAMELLIA-128-CBC:+SHA256",
280 None),
281 ("TLS-ECDHE-RSA-WITH-CAMELLIA-256-CBC-SHA384",
282 "+ECDHE-RSA:+CAMELLIA-256-CBC:+SHA384",
283 None),
284 ("TLS-RSA-WITH-CAMELLIA-128-CBC-SHA256",
285 "+RSA:+CAMELLIA-128-CBC:+SHA256",
286 None),
287 ("TLS-RSA-WITH-CAMELLIA-256-CBC-SHA256",
288 "+RSA:+CAMELLIA-256-CBC:+SHA256",
289 None),
290 ("TLS-DHE-RSA-WITH-CAMELLIA-128-CBC-SHA256",
291 "+DHE-RSA:+CAMELLIA-128-CBC:+SHA256",
292 None),
293 ("TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA256",
294 "+DHE-RSA:+CAMELLIA-256-CBC:+SHA256",
295 None),
296 ("TLS-ECDHE-RSA-WITH-CAMELLIA-128-GCM-SHA256",
297 "+ECDHE-RSA:+CAMELLIA-128-GCM:+AEAD",
298 None),
299 ("TLS-ECDHE-RSA-WITH-CAMELLIA-256-GCM-SHA384",
300 "+ECDHE-RSA:+CAMELLIA-256-GCM:+AEAD",
301 None),
302 ("TLS-DHE-RSA-WITH-CAMELLIA-128-GCM-SHA256",
303 "+DHE-RSA:+CAMELLIA-128-GCM:+AEAD",
304 None),
305 ("TLS-DHE-RSA-WITH-CAMELLIA-256-GCM-SHA384",
306 "+DHE-RSA:+CAMELLIA-256-GCM:+AEAD",
307 None),
308 ("TLS-RSA-WITH-CAMELLIA-128-GCM-SHA256",
309 "+RSA:+CAMELLIA-128-GCM:+AEAD",
310 None),
311 ("TLS-RSA-WITH-CAMELLIA-256-GCM-SHA384",
312 "+RSA:+CAMELLIA-256-GCM:+AEAD",
313 None),
314 ("TLS-RSA-WITH-AES-128-CCM",
315 "+RSA:+AES-128-CCM:+AEAD",
316 None),
317 ("TLS-RSA-WITH-AES-256-CCM",
318 "+RSA:+AES-256-CCM:+AEAD",
319 None),
320 ("TLS-DHE-RSA-WITH-AES-128-CCM",
321 "+DHE-RSA:+AES-128-CCM:+AEAD",
322 None),
323 ("TLS-DHE-RSA-WITH-AES-256-CCM",
324 "+DHE-RSA:+AES-256-CCM:+AEAD",
325 None),
326 ("TLS-RSA-WITH-AES-128-CCM-8",
327 "+RSA:+AES-128-CCM-8:+AEAD",
328 None),
329 ("TLS-RSA-WITH-AES-256-CCM-8",
330 "+RSA:+AES-256-CCM-8:+AEAD",
331 None),
332 ("TLS-DHE-RSA-WITH-AES-128-CCM-8",
333 "+DHE-RSA:+AES-128-CCM-8:+AEAD",
334 None),
335 ("TLS-DHE-RSA-WITH-AES-256-CCM-8",
336 "+DHE-RSA:+AES-256-CCM-8:+AEAD",
337 None),
338 ("TLS-DHE-PSK-WITH-3DES-EDE-CBC-SHA",
339 "+DHE-PSK:+3DES-CBC:+SHA1",
340 None),
341 ("TLS-DHE-PSK-WITH-AES-128-CBC-SHA",
342 "+DHE-PSK:+AES-128-CBC:+SHA1",
343 None),
344 ("TLS-DHE-PSK-WITH-AES-256-CBC-SHA",
345 "+DHE-PSK:+AES-256-CBC:+SHA1",
346 None),
347 ("TLS-ECDHE-PSK-WITH-AES-256-CBC-SHA",
348 "+ECDHE-PSK:+AES-256-CBC:+SHA1",
349 None),
350 ("TLS-ECDHE-PSK-WITH-AES-128-CBC-SHA",
351 "+ECDHE-PSK:+AES-128-CBC:+SHA1",
352 None),
353 ("TLS-ECDHE-PSK-WITH-3DES-EDE-CBC-SHA",
354 "+ECDHE-PSK:+3DES-CBC:+SHA1",
355 None),
356 ("TLS-RSA-PSK-WITH-3DES-EDE-CBC-SHA",
357 "+RSA-PSK:+3DES-CBC:+SHA1",
358 None),
359 ("TLS-RSA-PSK-WITH-AES-256-CBC-SHA",
360 "+RSA-PSK:+AES-256-CBC:+SHA1",
361 None),
362 ("TLS-RSA-PSK-WITH-AES-128-CBC-SHA",
363 "+RSA-PSK:+AES-128-CBC:+SHA1",
364 None),
365 ("TLS-ECDHE-PSK-WITH-AES-256-CBC-SHA384",
366 "+ECDHE-PSK:+AES-256-CBC:+SHA384",
367 None),
368 ("TLS-ECDHE-PSK-WITH-CAMELLIA-256-CBC-SHA384",
369 "+ECDHE-PSK:+CAMELLIA-256-CBC:+SHA384",
370 None),
371 ("TLS-ECDHE-PSK-WITH-AES-128-CBC-SHA256",
372 "+ECDHE-PSK:+AES-128-CBC:+SHA256",
373 None),
374 ("TLS-ECDHE-PSK-WITH-CAMELLIA-128-CBC-SHA256",
375 "+ECDHE-PSK:+CAMELLIA-128-CBC:+SHA256",
376 None),
377 ("TLS-ECDHE-PSK-WITH-NULL-SHA384",
378 "+ECDHE-PSK:+NULL:+SHA384",
379 None),
380 ("TLS-ECDHE-PSK-WITH-NULL-SHA256",
381 "+ECDHE-PSK:+NULL:+SHA256",
382 None),
383 ("TLS-PSK-WITH-AES-128-CBC-SHA256",
384 "+PSK:+AES-128-CBC:+SHA256",
385 None),
386 ("TLS-PSK-WITH-AES-256-CBC-SHA384",
387 "+PSK:+AES-256-CBC:+SHA384",
388 None),
389 ("TLS-DHE-PSK-WITH-AES-128-CBC-SHA256",
390 "+DHE-PSK:+AES-128-CBC:+SHA256",
391 None),
392 ("TLS-DHE-PSK-WITH-AES-256-CBC-SHA384",
393 "+DHE-PSK:+AES-256-CBC:+SHA384",
394 None),
395 ("TLS-PSK-WITH-NULL-SHA256",
396 "+PSK:+NULL:+SHA256",
397 None),
398 ("TLS-PSK-WITH-NULL-SHA384",
399 "+PSK:+NULL:+SHA384",
400 None),
401 ("TLS-DHE-PSK-WITH-NULL-SHA256",
402 "+DHE-PSK:+NULL:+SHA256",
403 None),
404 ("TLS-DHE-PSK-WITH-NULL-SHA384",
405 "+DHE-PSK:+NULL:+SHA384",
406 None),
407 ("TLS-RSA-PSK-WITH-AES-256-CBC-SHA384",
408 "+RSA-PSK:+AES-256-CBC:+SHA384",
409 None),
410 ("TLS-RSA-PSK-WITH-AES-128-CBC-SHA256",
411 "+RSA-PSK:+AES-128-CBC:+SHA256",
412 None),
413 ("TLS-RSA-PSK-WITH-NULL-SHA256",
414 "+RSA-PSK:+NULL:+SHA256",
415 None),
416 ("TLS-RSA-PSK-WITH-NULL-SHA384",
417 "+RSA-PSK:+NULL:+SHA384",
418 None),
419 ("TLS-DHE-PSK-WITH-CAMELLIA-128-CBC-SHA256",
420 "+DHE-PSK:+CAMELLIA-128-CBC:+SHA256",
421 None),
422 ("TLS-DHE-PSK-WITH-CAMELLIA-256-CBC-SHA384",
423 "+DHE-PSK:+CAMELLIA-256-CBC:+SHA384",
424 None),
425 ("TLS-PSK-WITH-CAMELLIA-128-CBC-SHA256",
426 "+PSK:+CAMELLIA-128-CBC:+SHA256",
427 None),
428 ("TLS-PSK-WITH-CAMELLIA-256-CBC-SHA384",
429 "+PSK:+CAMELLIA-256-CBC:+SHA384",
430 None),
431 ("TLS-RSA-PSK-WITH-CAMELLIA-256-CBC-SHA384",
432 "+RSA-PSK:+CAMELLIA-256-CBC:+SHA384",
433 None),
434 ("TLS-RSA-PSK-WITH-CAMELLIA-128-CBC-SHA256",
435 "+RSA-PSK:+CAMELLIA-128-CBC:+SHA256",
436 None),
437 ("TLS-PSK-WITH-AES-128-GCM-SHA256",
438 "+PSK:+AES-128-GCM:+AEAD",
439 None),
440 ("TLS-PSK-WITH-AES-256-GCM-SHA384",
441 "+PSK:+AES-256-GCM:+AEAD",
442 None),
443 ("TLS-DHE-PSK-WITH-AES-128-GCM-SHA256",
444 "+DHE-PSK:+AES-128-GCM:+AEAD",
445 None),
446 ("TLS-DHE-PSK-WITH-AES-256-GCM-SHA384",
447 "+DHE-PSK:+AES-256-GCM:+AEAD",
448 None),
449 ("TLS-PSK-WITH-AES-128-CCM",
450 "+PSK:+AES-128-CCM:+AEAD",
451 None),
452 ("TLS-PSK-WITH-AES-256-CCM",
453 "+PSK:+AES-256-CCM:+AEAD",
454 None),
455 ("TLS-DHE-PSK-WITH-AES-128-CCM",
456 "+DHE-PSK:+AES-128-CCM:+AEAD",
457 None),
458 ("TLS-DHE-PSK-WITH-AES-256-CCM",
459 "+DHE-PSK:+AES-256-CCM:+AEAD",
460 None),
461 ("TLS-PSK-WITH-AES-128-CCM-8",
462 "+PSK:+AES-128-CCM-8:+AEAD",
463 None),
464 ("TLS-PSK-WITH-AES-256-CCM-8",
465 "+PSK:+AES-256-CCM-8:+AEAD",
466 None),
467 ("TLS-DHE-PSK-WITH-AES-128-CCM-8",
468 "+DHE-PSK:+AES-128-CCM-8:+AEAD",
469 None),
470 ("TLS-DHE-PSK-WITH-AES-256-CCM-8",
471 "+DHE-PSK:+AES-256-CCM-8:+AEAD",
472 None),
473 ("TLS-RSA-PSK-WITH-CAMELLIA-128-GCM-SHA256",
474 "+RSA-PSK:+CAMELLIA-128-GCM:+AEAD",
475 None),
476 ("TLS-RSA-PSK-WITH-CAMELLIA-256-GCM-SHA384",
477 "+RSA-PSK:+CAMELLIA-256-GCM:+AEAD",
478 None),
479 ("TLS-PSK-WITH-CAMELLIA-128-GCM-SHA256",
480 "+PSK:+CAMELLIA-128-GCM:+AEAD",
481 None),
482 ("TLS-PSK-WITH-CAMELLIA-256-GCM-SHA384",
483 "+PSK:+CAMELLIA-256-GCM:+AEAD",
484 None),
485 ("TLS-DHE-PSK-WITH-CAMELLIA-128-GCM-SHA256",
486 "+DHE-PSK:+CAMELLIA-128-GCM:+AEAD",
487 None),
488 ("TLS-DHE-PSK-WITH-CAMELLIA-256-GCM-SHA384",
489 "+DHE-PSK:+CAMELLIA-256-GCM:+AEAD",
490 None),
491 ("TLS-RSA-PSK-WITH-AES-256-GCM-SHA384",
492 "+RSA-PSK:+AES-256-GCM:+AEAD",
493 None),
494 ("TLS-RSA-PSK-WITH-AES-128-GCM-SHA256",
495 "+RSA-PSK:+AES-128-GCM:+AEAD",
496 None),
Joe Subbiani3ad58322021-07-21 16:48:54 +0100497 ]
498
Joe Subbiani918ee792021-07-30 16:57:04 +0100499 for m, g_exp, o_exp in ciphers:
Joe Subbiani3ad58322021-07-21 16:48:54 +0100500
Joe Subbiani918ee792021-07-30 16:57:04 +0100501 if g_exp != None:
502 g = translate_gnutls(m)
503 assert_equal(g, g_exp)
Joe Subbiani3ad58322021-07-21 16:48:54 +0100504
Joe Subbiani918ee792021-07-30 16:57:04 +0100505 if o_exp != None:
506 o = translate_ossl(m)
507 assert_equal(o, o_exp)
Joe Subbiani3ad58322021-07-21 16:48:54 +0100508
509test_all_common()