blob: c40d3769745ef46e58f87f052ff15457c7e18044 [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"""
22Test translate_ciphers.py by running every MBedTLS ciphersuite name
23combination through the translate functions and comparing them to their
24correct GNUTLS or OpenSSL counterpart.
25"""
26
27from 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))
39
40def test_all_common():
Joe Subbianif849a932021-07-28 16:50:30 +010041 """
42 Translate the MBedTLS ciphersuite names to the common OpenSSL and
43 GnuTLS ciphersite names, and compare them with the true, expected
44 corresponding OpenSSL and GnuTLS ciphersuite names
45 """
Joe Subbiani3ad58322021-07-21 16:48:54 +010046 m_ciphers = [
47 "TLS-ECDHE-ECDSA-WITH-NULL-SHA",
48 "TLS-ECDHE-ECDSA-WITH-3DES-EDE-CBC-SHA",
49 "TLS-ECDHE-ECDSA-WITH-AES-128-CBC-SHA",
50 "TLS-ECDHE-ECDSA-WITH-AES-256-CBC-SHA",
51
52 "TLS-ECDHE-ECDSA-WITH-AES-128-CBC-SHA256",
53 "TLS-ECDHE-ECDSA-WITH-AES-256-CBC-SHA384",
54 "TLS-ECDHE-ECDSA-WITH-AES-128-GCM-SHA256",
55 "TLS-ECDHE-ECDSA-WITH-AES-256-GCM-SHA384",
56
57 "TLS-DHE-RSA-WITH-AES-128-CBC-SHA",
58 "TLS-DHE-RSA-WITH-AES-256-CBC-SHA",
59 "TLS-DHE-RSA-WITH-CAMELLIA-128-CBC-SHA",
60 "TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA",
61 "TLS-DHE-RSA-WITH-3DES-EDE-CBC-SHA",
62 "TLS-RSA-WITH-AES-256-CBC-SHA",
63 "TLS-RSA-WITH-CAMELLIA-256-CBC-SHA",
64 "TLS-RSA-WITH-AES-128-CBC-SHA",
65 "TLS-RSA-WITH-CAMELLIA-128-CBC-SHA",
66 "TLS-RSA-WITH-3DES-EDE-CBC-SHA",
67 "TLS-RSA-WITH-NULL-MD5",
68 "TLS-RSA-WITH-NULL-SHA",
69
70 "TLS-ECDHE-RSA-WITH-AES-128-CBC-SHA",
71 "TLS-ECDHE-RSA-WITH-AES-256-CBC-SHA",
72 "TLS-ECDHE-RSA-WITH-3DES-EDE-CBC-SHA",
73 "TLS-ECDHE-RSA-WITH-NULL-SHA",
74
75 "TLS-RSA-WITH-AES-128-CBC-SHA256",
76 "TLS-DHE-RSA-WITH-AES-128-CBC-SHA256",
77 "TLS-RSA-WITH-AES-256-CBC-SHA256",
78 "TLS-DHE-RSA-WITH-AES-256-CBC-SHA256",
79 "TLS-ECDHE-RSA-WITH-AES-128-CBC-SHA256",
80 "TLS-ECDHE-RSA-WITH-AES-256-CBC-SHA384",
81 "TLS-RSA-WITH-AES-128-GCM-SHA256",
82 "TLS-RSA-WITH-AES-256-GCM-SHA384",
83 "TLS-DHE-RSA-WITH-AES-128-GCM-SHA256",
84 "TLS-DHE-RSA-WITH-AES-256-GCM-SHA384",
85 "TLS-ECDHE-RSA-WITH-AES-128-GCM-SHA256",
86 "TLS-ECDHE-RSA-WITH-AES-256-GCM-SHA384",
87
88 "TLS-PSK-WITH-3DES-EDE-CBC-SHA",
89 "TLS-PSK-WITH-AES-128-CBC-SHA",
90 "TLS-PSK-WITH-AES-256-CBC-SHA",
91 ]
92 g_ciphers = [
93 "+ECDHE-ECDSA:+NULL:+SHA1",
94 "+ECDHE-ECDSA:+3DES-CBC:+SHA1",
95 "+ECDHE-ECDSA:+AES-128-CBC:+SHA1",
96 "+ECDHE-ECDSA:+AES-256-CBC:+SHA1",
97
98 "+ECDHE-ECDSA:+AES-128-CBC:+SHA256",
99 "+ECDHE-ECDSA:+AES-256-CBC:+SHA384",
100 "+ECDHE-ECDSA:+AES-128-GCM:+AEAD",
101 "+ECDHE-ECDSA:+AES-256-GCM:+AEAD",
102
103 "+DHE-RSA:+AES-128-CBC:+SHA1",
104 "+DHE-RSA:+AES-256-CBC:+SHA1",
105 "+DHE-RSA:+CAMELLIA-128-CBC:+SHA1",
106 "+DHE-RSA:+CAMELLIA-256-CBC:+SHA1",
107 "+DHE-RSA:+3DES-CBC:+SHA1",
108 "+RSA:+AES-256-CBC:+SHA1",
109 "+RSA:+CAMELLIA-256-CBC:+SHA1",
110 "+RSA:+AES-128-CBC:+SHA1",
111 "+RSA:+CAMELLIA-128-CBC:+SHA1",
112 "+RSA:+3DES-CBC:+SHA1",
113 "+RSA:+NULL:+MD5",
114 "+RSA:+NULL:+SHA1",
115
116 "+ECDHE-RSA:+AES-128-CBC:+SHA1",
117 "+ECDHE-RSA:+AES-256-CBC:+SHA1",
118 "+ECDHE-RSA:+3DES-CBC:+SHA1",
119 "+ECDHE-RSA:+NULL:+SHA1",
120
121 "+RSA:+AES-128-CBC:+SHA256",
122 "+DHE-RSA:+AES-128-CBC:+SHA256",
123 "+RSA:+AES-256-CBC:+SHA256",
124 "+DHE-RSA:+AES-256-CBC:+SHA256",
125 "+ECDHE-RSA:+AES-128-CBC:+SHA256",
126 "+ECDHE-RSA:+AES-256-CBC:+SHA384",
127 "+RSA:+AES-128-GCM:+AEAD",
128 "+RSA:+AES-256-GCM:+AEAD",
129 "+DHE-RSA:+AES-128-GCM:+AEAD",
130 "+DHE-RSA:+AES-256-GCM:+AEAD",
131 "+ECDHE-RSA:+AES-128-GCM:+AEAD",
132 "+ECDHE-RSA:+AES-256-GCM:+AEAD",
133
134 "+PSK:+3DES-CBC:+SHA1",
135 "+PSK:+AES-128-CBC:+SHA1",
136 "+PSK:+AES-256-CBC:+SHA1",
137 ]
138 o_ciphers = [
139 "ECDHE-ECDSA-NULL-SHA",
140 "ECDHE-ECDSA-DES-CBC3-SHA",
141 "ECDHE-ECDSA-AES128-SHA",
142 "ECDHE-ECDSA-AES256-SHA",
143
144 "ECDHE-ECDSA-AES128-SHA256",
145 "ECDHE-ECDSA-AES256-SHA384",
146 "ECDHE-ECDSA-AES128-GCM-SHA256",
147 "ECDHE-ECDSA-AES256-GCM-SHA384",
148
149 "DHE-RSA-AES128-SHA",
150 "DHE-RSA-AES256-SHA",
151 "DHE-RSA-CAMELLIA128-SHA",
152 "DHE-RSA-CAMELLIA256-SHA",
153 "EDH-RSA-DES-CBC3-SHA",
154 "AES256-SHA",
155 "CAMELLIA256-SHA",
156 "AES128-SHA",
157 "CAMELLIA128-SHA",
158 "DES-CBC3-SHA",
159 "NULL-MD5",
160 "NULL-SHA",
161
162 "ECDHE-RSA-AES128-SHA",
163 "ECDHE-RSA-AES256-SHA",
164 "ECDHE-RSA-DES-CBC3-SHA",
165 "ECDHE-RSA-NULL-SHA",
166
167 #"NULL-SHA256",
168 "AES128-SHA256",
169 "DHE-RSA-AES128-SHA256",
170 "AES256-SHA256",
171 "DHE-RSA-AES256-SHA256",
172 "ECDHE-RSA-AES128-SHA256",
173 "ECDHE-RSA-AES256-SHA384",
174 "AES128-GCM-SHA256",
175 "AES256-GCM-SHA384",
176 "DHE-RSA-AES128-GCM-SHA256",
177 "DHE-RSA-AES256-GCM-SHA384",
178 "ECDHE-RSA-AES128-GCM-SHA256",
179 "ECDHE-RSA-AES256-GCM-SHA384",
180
181 "PSK-3DES-EDE-CBC-SHA",
182 "PSK-AES128-CBC-SHA",
183 "PSK-AES256-CBC-SHA",
Joe Subbiani3ad58322021-07-21 16:48:54 +0100184 ]
185
Joe Subbianif849a932021-07-28 16:50:30 +0100186 for i, m_cipher in enumerate(m_ciphers):
Joe Subbiani3ad58322021-07-21 16:48:54 +0100187
Joe Subbianif849a932021-07-28 16:50:30 +0100188 g = translate_gnutls(m_cipher)
Joe Subbiani3ad58322021-07-21 16:48:54 +0100189 assert_equal(g, g_ciphers[i])
190
Joe Subbianif849a932021-07-28 16:50:30 +0100191 o = translate_ossl(m_cipher)
Joe Subbiani3ad58322021-07-21 16:48:54 +0100192 assert_equal(o, o_ciphers[i])
193
Joe Subbiani0fadf8e2021-07-27 15:22:26 +0100194def test_mbedtls_ossl_common():
Joe Subbianif849a932021-07-28 16:50:30 +0100195 """
196 Translate the MBedTLS ciphersuite names to the common OpenSSL
197 ciphersite names, and compare them with the true, expected
198 corresponding OpenSSL ciphersuite name
199 """
Joe Subbiani3ad58322021-07-21 16:48:54 +0100200 m_ciphers = [
201 "TLS-ECDH-ECDSA-WITH-NULL-SHA",
202 "TLS-ECDH-ECDSA-WITH-3DES-EDE-CBC-SHA",
203 "TLS-ECDH-ECDSA-WITH-AES-128-CBC-SHA",
204 "TLS-ECDH-ECDSA-WITH-AES-256-CBC-SHA",
205
206 "TLS-ECDH-ECDSA-WITH-AES-128-CBC-SHA256",
207 "TLS-ECDH-ECDSA-WITH-AES-256-CBC-SHA384",
208 "TLS-ECDH-ECDSA-WITH-AES-128-GCM-SHA256",
209 "TLS-ECDH-ECDSA-WITH-AES-256-GCM-SHA384",
210 "TLS-ECDHE-ECDSA-WITH-ARIA-256-GCM-SHA384",
211 "TLS-ECDHE-ECDSA-WITH-ARIA-128-GCM-SHA256",
212 "TLS-ECDHE-ECDSA-WITH-CHACHA20-POLY1305-SHA256",
213
214 "TLS-RSA-WITH-DES-CBC-SHA",
215 "TLS-DHE-RSA-WITH-DES-CBC-SHA",
216
217 "TLS-ECDHE-RSA-WITH-ARIA-256-GCM-SHA384",
218 "TLS-DHE-RSA-WITH-ARIA-256-GCM-SHA384",
219 "TLS-RSA-WITH-ARIA-256-GCM-SHA384",
220 "TLS-ECDHE-RSA-WITH-ARIA-128-GCM-SHA256",
221 "TLS-DHE-RSA-WITH-ARIA-128-GCM-SHA256",
222 "TLS-RSA-WITH-ARIA-128-GCM-SHA256",
223 "TLS-DHE-RSA-WITH-CHACHA20-POLY1305-SHA256",
224 "TLS-ECDHE-RSA-WITH-CHACHA20-POLY1305-SHA256",
225
226 "TLS-DHE-PSK-WITH-ARIA-256-GCM-SHA384",
227 "TLS-DHE-PSK-WITH-ARIA-128-GCM-SHA256",
228 "TLS-PSK-WITH-ARIA-256-GCM-SHA384",
229 "TLS-PSK-WITH-ARIA-128-GCM-SHA256",
230 "TLS-PSK-WITH-CHACHA20-POLY1305-SHA256",
231 "TLS-ECDHE-PSK-WITH-CHACHA20-POLY1305-SHA256",
232 "TLS-DHE-PSK-WITH-CHACHA20-POLY1305-SHA256",
233 ]
234 o_ciphers = [
235 "ECDH-ECDSA-NULL-SHA",
236 "ECDH-ECDSA-DES-CBC3-SHA",
237 "ECDH-ECDSA-AES128-SHA",
238 "ECDH-ECDSA-AES256-SHA",
239
240 "ECDH-ECDSA-AES128-SHA256",
241 "ECDH-ECDSA-AES256-SHA384",
242 "ECDH-ECDSA-AES128-GCM-SHA256",
243 "ECDH-ECDSA-AES256-GCM-SHA384",
244 "ECDHE-ECDSA-ARIA256-GCM-SHA384",
245 "ECDHE-ECDSA-ARIA128-GCM-SHA256",
246 "ECDHE-ECDSA-CHACHA20-POLY1305",
247
248 "DES-CBC-SHA",
249 "EDH-RSA-DES-CBC-SHA",
Joe Subbiani3ad58322021-07-21 16:48:54 +0100250
251 "ECDHE-ARIA256-GCM-SHA384",
252 "DHE-RSA-ARIA256-GCM-SHA384",
253 "ARIA256-GCM-SHA384",
254 "ECDHE-ARIA128-GCM-SHA256",
255 "DHE-RSA-ARIA128-GCM-SHA256",
256 "ARIA128-GCM-SHA256",
257 "DHE-RSA-CHACHA20-POLY1305",
258 "ECDHE-RSA-CHACHA20-POLY1305",
259
260 "DHE-PSK-ARIA256-GCM-SHA384",
261 "DHE-PSK-ARIA128-GCM-SHA256",
262 "PSK-ARIA256-GCM-SHA384",
263 "PSK-ARIA128-GCM-SHA256",
264 "PSK-CHACHA20-POLY1305",
265 "ECDHE-PSK-CHACHA20-POLY1305",
266 "DHE-PSK-CHACHA20-POLY1305",
267 ]
268
Joe Subbianif849a932021-07-28 16:50:30 +0100269 for i, m_cipher in enumerate(m_ciphers):
Joe Subbiani3ad58322021-07-21 16:48:54 +0100270
Joe Subbianif849a932021-07-28 16:50:30 +0100271 o = translate_ossl(m_cipher)
Joe Subbiani3ad58322021-07-21 16:48:54 +0100272 assert_equal(o, o_ciphers[i])
273
Joe Subbiani0fadf8e2021-07-27 15:22:26 +0100274def test_mbedtls_gnutls_common():
Joe Subbianif849a932021-07-28 16:50:30 +0100275 """
276 Translate the MBedTLS ciphersuite names to the common GnuTLS
277 ciphersite names, and compare them with the true, expected
278 corresponding GnuTLS ciphersuite names
279 """
Joe Subbiani3ad58322021-07-21 16:48:54 +0100280 m_ciphers = [
281 "TLS-ECDHE-ECDSA-WITH-CAMELLIA-128-CBC-SHA256",
282 "TLS-ECDHE-ECDSA-WITH-CAMELLIA-256-CBC-SHA384",
283 "TLS-ECDHE-ECDSA-WITH-CAMELLIA-128-GCM-SHA256",
284 "TLS-ECDHE-ECDSA-WITH-CAMELLIA-256-GCM-SHA384",
285 "TLS-ECDHE-ECDSA-WITH-AES-128-CCM",
286 "TLS-ECDHE-ECDSA-WITH-AES-256-CCM",
287 "TLS-ECDHE-ECDSA-WITH-AES-128-CCM-8",
288 "TLS-ECDHE-ECDSA-WITH-AES-256-CCM-8",
289
290 "TLS-RSA-WITH-NULL-SHA256",
291
292 "TLS-ECDHE-RSA-WITH-CAMELLIA-128-CBC-SHA256",
293 "TLS-ECDHE-RSA-WITH-CAMELLIA-256-CBC-SHA384",
294 "TLS-RSA-WITH-CAMELLIA-128-CBC-SHA256",
295 "TLS-RSA-WITH-CAMELLIA-256-CBC-SHA256",
296 "TLS-DHE-RSA-WITH-CAMELLIA-128-CBC-SHA256",
297 "TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA256",
298 "TLS-ECDHE-RSA-WITH-CAMELLIA-128-GCM-SHA256",
299 "TLS-ECDHE-RSA-WITH-CAMELLIA-256-GCM-SHA384",
300 "TLS-DHE-RSA-WITH-CAMELLIA-128-GCM-SHA256",
301 "TLS-DHE-RSA-WITH-CAMELLIA-256-GCM-SHA384",
302 "TLS-RSA-WITH-CAMELLIA-128-GCM-SHA256",
303 "TLS-RSA-WITH-CAMELLIA-256-GCM-SHA384",
304 "TLS-RSA-WITH-AES-128-CCM",
305 "TLS-RSA-WITH-AES-256-CCM",
306 "TLS-DHE-RSA-WITH-AES-128-CCM",
307 "TLS-DHE-RSA-WITH-AES-256-CCM",
308 "TLS-RSA-WITH-AES-128-CCM-8",
309 "TLS-RSA-WITH-AES-256-CCM-8",
310 "TLS-DHE-RSA-WITH-AES-128-CCM-8",
311 "TLS-DHE-RSA-WITH-AES-256-CCM-8",
312
313 "TLS-DHE-PSK-WITH-3DES-EDE-CBC-SHA",
314 "TLS-DHE-PSK-WITH-AES-128-CBC-SHA",
315 "TLS-DHE-PSK-WITH-AES-256-CBC-SHA",
316
317 "TLS-ECDHE-PSK-WITH-AES-256-CBC-SHA",
318 "TLS-ECDHE-PSK-WITH-AES-128-CBC-SHA",
319 "TLS-ECDHE-PSK-WITH-3DES-EDE-CBC-SHA",
320 "TLS-RSA-PSK-WITH-3DES-EDE-CBC-SHA",
321 "TLS-RSA-PSK-WITH-AES-256-CBC-SHA",
322 "TLS-RSA-PSK-WITH-AES-128-CBC-SHA",
323
324 "TLS-ECDHE-PSK-WITH-AES-256-CBC-SHA384",
325 "TLS-ECDHE-PSK-WITH-CAMELLIA-256-CBC-SHA384",
326 "TLS-ECDHE-PSK-WITH-AES-128-CBC-SHA256",
327 "TLS-ECDHE-PSK-WITH-CAMELLIA-128-CBC-SHA256",
328 "TLS-ECDHE-PSK-WITH-NULL-SHA384",
329 "TLS-ECDHE-PSK-WITH-NULL-SHA256",
330 "TLS-PSK-WITH-AES-128-CBC-SHA256",
331 "TLS-PSK-WITH-AES-256-CBC-SHA384",
332 "TLS-DHE-PSK-WITH-AES-128-CBC-SHA256",
333 "TLS-DHE-PSK-WITH-AES-256-CBC-SHA384",
334 "TLS-PSK-WITH-NULL-SHA256",
335 "TLS-PSK-WITH-NULL-SHA384",
336 "TLS-DHE-PSK-WITH-NULL-SHA256",
337 "TLS-DHE-PSK-WITH-NULL-SHA384",
338 "TLS-RSA-PSK-WITH-AES-256-CBC-SHA384",
339 "TLS-RSA-PSK-WITH-AES-128-CBC-SHA256",
340 "TLS-RSA-PSK-WITH-NULL-SHA256",
341 "TLS-RSA-PSK-WITH-NULL-SHA384",
342 "TLS-DHE-PSK-WITH-CAMELLIA-128-CBC-SHA256",
343 "TLS-DHE-PSK-WITH-CAMELLIA-256-CBC-SHA384",
344 "TLS-PSK-WITH-CAMELLIA-128-CBC-SHA256",
345 "TLS-PSK-WITH-CAMELLIA-256-CBC-SHA384",
346 "TLS-RSA-PSK-WITH-CAMELLIA-256-CBC-SHA384",
347 "TLS-RSA-PSK-WITH-CAMELLIA-128-CBC-SHA256",
348 "TLS-PSK-WITH-AES-128-GCM-SHA256",
349 "TLS-PSK-WITH-AES-256-GCM-SHA384",
350 "TLS-DHE-PSK-WITH-AES-128-GCM-SHA256",
351 "TLS-DHE-PSK-WITH-AES-256-GCM-SHA384",
352 "TLS-PSK-WITH-AES-128-CCM",
353 "TLS-PSK-WITH-AES-256-CCM",
354 "TLS-DHE-PSK-WITH-AES-128-CCM",
355 "TLS-DHE-PSK-WITH-AES-256-CCM",
356 "TLS-PSK-WITH-AES-128-CCM-8",
357 "TLS-PSK-WITH-AES-256-CCM-8",
358 "TLS-DHE-PSK-WITH-AES-128-CCM-8",
359 "TLS-DHE-PSK-WITH-AES-256-CCM-8",
360 "TLS-RSA-PSK-WITH-CAMELLIA-128-GCM-SHA256",
361 "TLS-RSA-PSK-WITH-CAMELLIA-256-GCM-SHA384",
362 "TLS-PSK-WITH-CAMELLIA-128-GCM-SHA256",
363 "TLS-PSK-WITH-CAMELLIA-256-GCM-SHA384",
364 "TLS-DHE-PSK-WITH-CAMELLIA-128-GCM-SHA256",
365 "TLS-DHE-PSK-WITH-CAMELLIA-256-GCM-SHA384",
366 "TLS-RSA-PSK-WITH-AES-256-GCM-SHA384",
367 "TLS-RSA-PSK-WITH-AES-128-GCM-SHA256",
368 ]
369 g_ciphers = [
370 "+ECDHE-ECDSA:+CAMELLIA-128-CBC:+SHA256",
371 "+ECDHE-ECDSA:+CAMELLIA-256-CBC:+SHA384",
372 "+ECDHE-ECDSA:+CAMELLIA-128-GCM:+AEAD",
373 "+ECDHE-ECDSA:+CAMELLIA-256-GCM:+AEAD",
374 "+ECDHE-ECDSA:+AES-128-CCM:+AEAD",
375 "+ECDHE-ECDSA:+AES-256-CCM:+AEAD",
376 "+ECDHE-ECDSA:+AES-128-CCM-8:+AEAD",
377 "+ECDHE-ECDSA:+AES-256-CCM-8:+AEAD",
378
379 "+RSA:+NULL:+SHA256",
380
381 "+ECDHE-RSA:+CAMELLIA-128-CBC:+SHA256",
382 "+ECDHE-RSA:+CAMELLIA-256-CBC:+SHA384",
383 "+RSA:+CAMELLIA-128-CBC:+SHA256",
384 "+RSA:+CAMELLIA-256-CBC:+SHA256",
385 "+DHE-RSA:+CAMELLIA-128-CBC:+SHA256",
386 "+DHE-RSA:+CAMELLIA-256-CBC:+SHA256",
387 "+ECDHE-RSA:+CAMELLIA-128-GCM:+AEAD",
388 "+ECDHE-RSA:+CAMELLIA-256-GCM:+AEAD",
389 "+DHE-RSA:+CAMELLIA-128-GCM:+AEAD",
390 "+DHE-RSA:+CAMELLIA-256-GCM:+AEAD",
391 "+RSA:+CAMELLIA-128-GCM:+AEAD",
392 "+RSA:+CAMELLIA-256-GCM:+AEAD",
393 "+RSA:+AES-128-CCM:+AEAD",
394 "+RSA:+AES-256-CCM:+AEAD",
395 "+DHE-RSA:+AES-128-CCM:+AEAD",
396 "+DHE-RSA:+AES-256-CCM:+AEAD",
397 "+RSA:+AES-128-CCM-8:+AEAD",
398 "+RSA:+AES-256-CCM-8:+AEAD",
399 "+DHE-RSA:+AES-128-CCM-8:+AEAD",
400 "+DHE-RSA:+AES-256-CCM-8:+AEAD",
401
402 "+DHE-PSK:+3DES-CBC:+SHA1",
403 "+DHE-PSK:+AES-128-CBC:+SHA1",
404 "+DHE-PSK:+AES-256-CBC:+SHA1",
405
406 "+ECDHE-PSK:+AES-256-CBC:+SHA1",
407 "+ECDHE-PSK:+AES-128-CBC:+SHA1",
408 "+ECDHE-PSK:+3DES-CBC:+SHA1",
409 "+RSA-PSK:+3DES-CBC:+SHA1",
410 "+RSA-PSK:+AES-256-CBC:+SHA1",
411 "+RSA-PSK:+AES-128-CBC:+SHA1",
412
413 "+ECDHE-PSK:+AES-256-CBC:+SHA384",
414 "+ECDHE-PSK:+CAMELLIA-256-CBC:+SHA384",
415 "+ECDHE-PSK:+AES-128-CBC:+SHA256",
416 "+ECDHE-PSK:+CAMELLIA-128-CBC:+SHA256",
417 "+ECDHE-PSK:+NULL:+SHA384",
418 "+ECDHE-PSK:+NULL:+SHA256",
419 "+PSK:+AES-128-CBC:+SHA256",
420 "+PSK:+AES-256-CBC:+SHA384",
421 "+DHE-PSK:+AES-128-CBC:+SHA256",
422 "+DHE-PSK:+AES-256-CBC:+SHA384",
423 "+PSK:+NULL:+SHA256",
424 "+PSK:+NULL:+SHA384",
425 "+DHE-PSK:+NULL:+SHA256",
426 "+DHE-PSK:+NULL:+SHA384",
427 "+RSA-PSK:+AES-256-CBC:+SHA384",
428 "+RSA-PSK:+AES-128-CBC:+SHA256",
429 "+RSA-PSK:+NULL:+SHA256",
430 "+RSA-PSK:+NULL:+SHA384",
431 "+DHE-PSK:+CAMELLIA-128-CBC:+SHA256",
432 "+DHE-PSK:+CAMELLIA-256-CBC:+SHA384",
433 "+PSK:+CAMELLIA-128-CBC:+SHA256",
434 "+PSK:+CAMELLIA-256-CBC:+SHA384",
435 "+RSA-PSK:+CAMELLIA-256-CBC:+SHA384",
436 "+RSA-PSK:+CAMELLIA-128-CBC:+SHA256",
437 "+PSK:+AES-128-GCM:+AEAD",
438 "+PSK:+AES-256-GCM:+AEAD",
439 "+DHE-PSK:+AES-128-GCM:+AEAD",
440 "+DHE-PSK:+AES-256-GCM:+AEAD",
441 "+PSK:+AES-128-CCM:+AEAD",
442 "+PSK:+AES-256-CCM:+AEAD",
443 "+DHE-PSK:+AES-128-CCM:+AEAD",
444 "+DHE-PSK:+AES-256-CCM:+AEAD",
445 "+PSK:+AES-128-CCM-8:+AEAD",
446 "+PSK:+AES-256-CCM-8:+AEAD",
447 "+DHE-PSK:+AES-128-CCM-8:+AEAD",
448 "+DHE-PSK:+AES-256-CCM-8:+AEAD",
449 "+RSA-PSK:+CAMELLIA-128-GCM:+AEAD",
450 "+RSA-PSK:+CAMELLIA-256-GCM:+AEAD",
451 "+PSK:+CAMELLIA-128-GCM:+AEAD",
452 "+PSK:+CAMELLIA-256-GCM:+AEAD",
453 "+DHE-PSK:+CAMELLIA-128-GCM:+AEAD",
454 "+DHE-PSK:+CAMELLIA-256-GCM:+AEAD",
455 "+RSA-PSK:+AES-256-GCM:+AEAD",
456 "+RSA-PSK:+AES-128-GCM:+AEAD",
457 ]
458
Joe Subbianif849a932021-07-28 16:50:30 +0100459 for i, m_ciphers in enumerate(m_ciphers):
Joe Subbiani3ad58322021-07-21 16:48:54 +0100460
Joe Subbianif849a932021-07-28 16:50:30 +0100461 g = translate_gnutls(m_ciphers)
Joe Subbiani3ad58322021-07-21 16:48:54 +0100462 assert_equal(g, g_ciphers[i])
Joe Subbiani3ad58322021-07-21 16:48:54 +0100463
464test_all_common()
Joe Subbiani0fadf8e2021-07-27 15:22:26 +0100465test_mbedtls_ossl_common()
466test_mbedtls_gnutls_common()