12c593315Sopenharmony_ci#!/usr/bin/env python3 22c593315Sopenharmony_ci# -*- coding: utf-8 -*- 32c593315Sopenharmony_ci 42c593315Sopenharmony_ci# This script read cipher suite list csv file [1] and prints out id 52c593315Sopenharmony_ci# and name of black listed cipher suites. The output is used by 62c593315Sopenharmony_ci# src/ssl.cc. 72c593315Sopenharmony_ci# 82c593315Sopenharmony_ci# [1] http://www.iana.org/assignments/tls-parameters/tls-parameters-4.csv 92c593315Sopenharmony_ci# [2] http://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml 102c593315Sopenharmony_ci 112c593315Sopenharmony_ciimport re 122c593315Sopenharmony_ciimport sys 132c593315Sopenharmony_ciimport csv 142c593315Sopenharmony_ci 152c593315Sopenharmony_ci# From RFC 7540 162c593315Sopenharmony_ciblacklist = [ 172c593315Sopenharmony_ci 'TLS_NULL_WITH_NULL_NULL', 182c593315Sopenharmony_ci 'TLS_RSA_WITH_NULL_MD5', 192c593315Sopenharmony_ci 'TLS_RSA_WITH_NULL_SHA', 202c593315Sopenharmony_ci 'TLS_RSA_EXPORT_WITH_RC4_40_MD5', 212c593315Sopenharmony_ci 'TLS_RSA_WITH_RC4_128_MD5', 222c593315Sopenharmony_ci 'TLS_RSA_WITH_RC4_128_SHA', 232c593315Sopenharmony_ci 'TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5', 242c593315Sopenharmony_ci 'TLS_RSA_WITH_IDEA_CBC_SHA', 252c593315Sopenharmony_ci 'TLS_RSA_EXPORT_WITH_DES40_CBC_SHA', 262c593315Sopenharmony_ci 'TLS_RSA_WITH_DES_CBC_SHA', 272c593315Sopenharmony_ci 'TLS_RSA_WITH_3DES_EDE_CBC_SHA', 282c593315Sopenharmony_ci 'TLS_DH_DSS_EXPORT_WITH_DES40_CBC_SHA', 292c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_DES_CBC_SHA', 302c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA', 312c593315Sopenharmony_ci 'TLS_DH_RSA_EXPORT_WITH_DES40_CBC_SHA', 322c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_DES_CBC_SHA', 332c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA', 342c593315Sopenharmony_ci 'TLS_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA', 352c593315Sopenharmony_ci 'TLS_DHE_DSS_WITH_DES_CBC_SHA', 362c593315Sopenharmony_ci 'TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA', 372c593315Sopenharmony_ci 'TLS_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA', 382c593315Sopenharmony_ci 'TLS_DHE_RSA_WITH_DES_CBC_SHA', 392c593315Sopenharmony_ci 'TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA', 402c593315Sopenharmony_ci 'TLS_DH_anon_EXPORT_WITH_RC4_40_MD5', 412c593315Sopenharmony_ci 'TLS_DH_anon_WITH_RC4_128_MD5', 422c593315Sopenharmony_ci 'TLS_DH_anon_EXPORT_WITH_DES40_CBC_SHA', 432c593315Sopenharmony_ci 'TLS_DH_anon_WITH_DES_CBC_SHA', 442c593315Sopenharmony_ci 'TLS_DH_anon_WITH_3DES_EDE_CBC_SHA', 452c593315Sopenharmony_ci 'TLS_KRB5_WITH_DES_CBC_SHA', 462c593315Sopenharmony_ci 'TLS_KRB5_WITH_3DES_EDE_CBC_SHA', 472c593315Sopenharmony_ci 'TLS_KRB5_WITH_RC4_128_SHA', 482c593315Sopenharmony_ci 'TLS_KRB5_WITH_IDEA_CBC_SHA', 492c593315Sopenharmony_ci 'TLS_KRB5_WITH_DES_CBC_MD5', 502c593315Sopenharmony_ci 'TLS_KRB5_WITH_3DES_EDE_CBC_MD5', 512c593315Sopenharmony_ci 'TLS_KRB5_WITH_RC4_128_MD5', 522c593315Sopenharmony_ci 'TLS_KRB5_WITH_IDEA_CBC_MD5', 532c593315Sopenharmony_ci 'TLS_KRB5_EXPORT_WITH_DES_CBC_40_SHA', 542c593315Sopenharmony_ci 'TLS_KRB5_EXPORT_WITH_RC2_CBC_40_SHA', 552c593315Sopenharmony_ci 'TLS_KRB5_EXPORT_WITH_RC4_40_SHA', 562c593315Sopenharmony_ci 'TLS_KRB5_EXPORT_WITH_DES_CBC_40_MD5', 572c593315Sopenharmony_ci 'TLS_KRB5_EXPORT_WITH_RC2_CBC_40_MD5', 582c593315Sopenharmony_ci 'TLS_KRB5_EXPORT_WITH_RC4_40_MD5', 592c593315Sopenharmony_ci 'TLS_PSK_WITH_NULL_SHA', 602c593315Sopenharmony_ci 'TLS_DHE_PSK_WITH_NULL_SHA', 612c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_NULL_SHA', 622c593315Sopenharmony_ci 'TLS_RSA_WITH_AES_128_CBC_SHA', 632c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_AES_128_CBC_SHA', 642c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_AES_128_CBC_SHA', 652c593315Sopenharmony_ci 'TLS_DHE_DSS_WITH_AES_128_CBC_SHA', 662c593315Sopenharmony_ci 'TLS_DHE_RSA_WITH_AES_128_CBC_SHA', 672c593315Sopenharmony_ci 'TLS_DH_anon_WITH_AES_128_CBC_SHA', 682c593315Sopenharmony_ci 'TLS_RSA_WITH_AES_256_CBC_SHA', 692c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_AES_256_CBC_SHA', 702c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_AES_256_CBC_SHA', 712c593315Sopenharmony_ci 'TLS_DHE_DSS_WITH_AES_256_CBC_SHA', 722c593315Sopenharmony_ci 'TLS_DHE_RSA_WITH_AES_256_CBC_SHA', 732c593315Sopenharmony_ci 'TLS_DH_anon_WITH_AES_256_CBC_SHA', 742c593315Sopenharmony_ci 'TLS_RSA_WITH_NULL_SHA256', 752c593315Sopenharmony_ci 'TLS_RSA_WITH_AES_128_CBC_SHA256', 762c593315Sopenharmony_ci 'TLS_RSA_WITH_AES_256_CBC_SHA256', 772c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_AES_128_CBC_SHA256', 782c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_AES_128_CBC_SHA256', 792c593315Sopenharmony_ci 'TLS_DHE_DSS_WITH_AES_128_CBC_SHA256', 802c593315Sopenharmony_ci 'TLS_RSA_WITH_CAMELLIA_128_CBC_SHA', 812c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA', 822c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA', 832c593315Sopenharmony_ci 'TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA', 842c593315Sopenharmony_ci 'TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA', 852c593315Sopenharmony_ci 'TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA', 862c593315Sopenharmony_ci 'TLS_DHE_RSA_WITH_AES_128_CBC_SHA256', 872c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_AES_256_CBC_SHA256', 882c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_AES_256_CBC_SHA256', 892c593315Sopenharmony_ci 'TLS_DHE_DSS_WITH_AES_256_CBC_SHA256', 902c593315Sopenharmony_ci 'TLS_DHE_RSA_WITH_AES_256_CBC_SHA256', 912c593315Sopenharmony_ci 'TLS_DH_anon_WITH_AES_128_CBC_SHA256', 922c593315Sopenharmony_ci 'TLS_DH_anon_WITH_AES_256_CBC_SHA256', 932c593315Sopenharmony_ci 'TLS_RSA_WITH_CAMELLIA_256_CBC_SHA', 942c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA', 952c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA', 962c593315Sopenharmony_ci 'TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA', 972c593315Sopenharmony_ci 'TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA', 982c593315Sopenharmony_ci 'TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA', 992c593315Sopenharmony_ci 'TLS_PSK_WITH_RC4_128_SHA', 1002c593315Sopenharmony_ci 'TLS_PSK_WITH_3DES_EDE_CBC_SHA', 1012c593315Sopenharmony_ci 'TLS_PSK_WITH_AES_128_CBC_SHA', 1022c593315Sopenharmony_ci 'TLS_PSK_WITH_AES_256_CBC_SHA', 1032c593315Sopenharmony_ci 'TLS_DHE_PSK_WITH_RC4_128_SHA', 1042c593315Sopenharmony_ci 'TLS_DHE_PSK_WITH_3DES_EDE_CBC_SHA', 1052c593315Sopenharmony_ci 'TLS_DHE_PSK_WITH_AES_128_CBC_SHA', 1062c593315Sopenharmony_ci 'TLS_DHE_PSK_WITH_AES_256_CBC_SHA', 1072c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_RC4_128_SHA', 1082c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_3DES_EDE_CBC_SHA', 1092c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_AES_128_CBC_SHA', 1102c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_AES_256_CBC_SHA', 1112c593315Sopenharmony_ci 'TLS_RSA_WITH_SEED_CBC_SHA', 1122c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_SEED_CBC_SHA', 1132c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_SEED_CBC_SHA', 1142c593315Sopenharmony_ci 'TLS_DHE_DSS_WITH_SEED_CBC_SHA', 1152c593315Sopenharmony_ci 'TLS_DHE_RSA_WITH_SEED_CBC_SHA', 1162c593315Sopenharmony_ci 'TLS_DH_anon_WITH_SEED_CBC_SHA', 1172c593315Sopenharmony_ci 'TLS_RSA_WITH_AES_128_GCM_SHA256', 1182c593315Sopenharmony_ci 'TLS_RSA_WITH_AES_256_GCM_SHA384', 1192c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_AES_128_GCM_SHA256', 1202c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_AES_256_GCM_SHA384', 1212c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_AES_128_GCM_SHA256', 1222c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_AES_256_GCM_SHA384', 1232c593315Sopenharmony_ci 'TLS_DH_anon_WITH_AES_128_GCM_SHA256', 1242c593315Sopenharmony_ci 'TLS_DH_anon_WITH_AES_256_GCM_SHA384', 1252c593315Sopenharmony_ci 'TLS_PSK_WITH_AES_128_GCM_SHA256', 1262c593315Sopenharmony_ci 'TLS_PSK_WITH_AES_256_GCM_SHA384', 1272c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_AES_128_GCM_SHA256', 1282c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_AES_256_GCM_SHA384', 1292c593315Sopenharmony_ci 'TLS_PSK_WITH_AES_128_CBC_SHA256', 1302c593315Sopenharmony_ci 'TLS_PSK_WITH_AES_256_CBC_SHA384', 1312c593315Sopenharmony_ci 'TLS_PSK_WITH_NULL_SHA256', 1322c593315Sopenharmony_ci 'TLS_PSK_WITH_NULL_SHA384', 1332c593315Sopenharmony_ci 'TLS_DHE_PSK_WITH_AES_128_CBC_SHA256', 1342c593315Sopenharmony_ci 'TLS_DHE_PSK_WITH_AES_256_CBC_SHA384', 1352c593315Sopenharmony_ci 'TLS_DHE_PSK_WITH_NULL_SHA256', 1362c593315Sopenharmony_ci 'TLS_DHE_PSK_WITH_NULL_SHA384', 1372c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_AES_128_CBC_SHA256', 1382c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_AES_256_CBC_SHA384', 1392c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_NULL_SHA256', 1402c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_NULL_SHA384', 1412c593315Sopenharmony_ci 'TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256', 1422c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA256', 1432c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA256', 1442c593315Sopenharmony_ci 'TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA256', 1452c593315Sopenharmony_ci 'TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256', 1462c593315Sopenharmony_ci 'TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA256', 1472c593315Sopenharmony_ci 'TLS_RSA_WITH_CAMELLIA_256_CBC_SHA256', 1482c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA256', 1492c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA256', 1502c593315Sopenharmony_ci 'TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA256', 1512c593315Sopenharmony_ci 'TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA256', 1522c593315Sopenharmony_ci 'TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA256', 1532c593315Sopenharmony_ci 'TLS_EMPTY_RENEGOTIATION_INFO_SCSV', 1542c593315Sopenharmony_ci 'TLS_ECDH_ECDSA_WITH_NULL_SHA', 1552c593315Sopenharmony_ci 'TLS_ECDH_ECDSA_WITH_RC4_128_SHA', 1562c593315Sopenharmony_ci 'TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA', 1572c593315Sopenharmony_ci 'TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA', 1582c593315Sopenharmony_ci 'TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA', 1592c593315Sopenharmony_ci 'TLS_ECDHE_ECDSA_WITH_NULL_SHA', 1602c593315Sopenharmony_ci 'TLS_ECDHE_ECDSA_WITH_RC4_128_SHA', 1612c593315Sopenharmony_ci 'TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA', 1622c593315Sopenharmony_ci 'TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA', 1632c593315Sopenharmony_ci 'TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA', 1642c593315Sopenharmony_ci 'TLS_ECDH_RSA_WITH_NULL_SHA', 1652c593315Sopenharmony_ci 'TLS_ECDH_RSA_WITH_RC4_128_SHA', 1662c593315Sopenharmony_ci 'TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA', 1672c593315Sopenharmony_ci 'TLS_ECDH_RSA_WITH_AES_128_CBC_SHA', 1682c593315Sopenharmony_ci 'TLS_ECDH_RSA_WITH_AES_256_CBC_SHA', 1692c593315Sopenharmony_ci 'TLS_ECDHE_RSA_WITH_NULL_SHA', 1702c593315Sopenharmony_ci 'TLS_ECDHE_RSA_WITH_RC4_128_SHA', 1712c593315Sopenharmony_ci 'TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA', 1722c593315Sopenharmony_ci 'TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA', 1732c593315Sopenharmony_ci 'TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA', 1742c593315Sopenharmony_ci 'TLS_ECDH_anon_WITH_NULL_SHA', 1752c593315Sopenharmony_ci 'TLS_ECDH_anon_WITH_RC4_128_SHA', 1762c593315Sopenharmony_ci 'TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA', 1772c593315Sopenharmony_ci 'TLS_ECDH_anon_WITH_AES_128_CBC_SHA', 1782c593315Sopenharmony_ci 'TLS_ECDH_anon_WITH_AES_256_CBC_SHA', 1792c593315Sopenharmony_ci 'TLS_SRP_SHA_WITH_3DES_EDE_CBC_SHA', 1802c593315Sopenharmony_ci 'TLS_SRP_SHA_RSA_WITH_3DES_EDE_CBC_SHA', 1812c593315Sopenharmony_ci 'TLS_SRP_SHA_DSS_WITH_3DES_EDE_CBC_SHA', 1822c593315Sopenharmony_ci 'TLS_SRP_SHA_WITH_AES_128_CBC_SHA', 1832c593315Sopenharmony_ci 'TLS_SRP_SHA_RSA_WITH_AES_128_CBC_SHA', 1842c593315Sopenharmony_ci 'TLS_SRP_SHA_DSS_WITH_AES_128_CBC_SHA', 1852c593315Sopenharmony_ci 'TLS_SRP_SHA_WITH_AES_256_CBC_SHA', 1862c593315Sopenharmony_ci 'TLS_SRP_SHA_RSA_WITH_AES_256_CBC_SHA', 1872c593315Sopenharmony_ci 'TLS_SRP_SHA_DSS_WITH_AES_256_CBC_SHA', 1882c593315Sopenharmony_ci 'TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256', 1892c593315Sopenharmony_ci 'TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384', 1902c593315Sopenharmony_ci 'TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256', 1912c593315Sopenharmony_ci 'TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384', 1922c593315Sopenharmony_ci 'TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256', 1932c593315Sopenharmony_ci 'TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384', 1942c593315Sopenharmony_ci 'TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256', 1952c593315Sopenharmony_ci 'TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384', 1962c593315Sopenharmony_ci 'TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256', 1972c593315Sopenharmony_ci 'TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384', 1982c593315Sopenharmony_ci 'TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256', 1992c593315Sopenharmony_ci 'TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384', 2002c593315Sopenharmony_ci 'TLS_ECDHE_PSK_WITH_RC4_128_SHA', 2012c593315Sopenharmony_ci 'TLS_ECDHE_PSK_WITH_3DES_EDE_CBC_SHA', 2022c593315Sopenharmony_ci 'TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA', 2032c593315Sopenharmony_ci 'TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA', 2042c593315Sopenharmony_ci 'TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA256', 2052c593315Sopenharmony_ci 'TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA384', 2062c593315Sopenharmony_ci 'TLS_ECDHE_PSK_WITH_NULL_SHA', 2072c593315Sopenharmony_ci 'TLS_ECDHE_PSK_WITH_NULL_SHA256', 2082c593315Sopenharmony_ci 'TLS_ECDHE_PSK_WITH_NULL_SHA384', 2092c593315Sopenharmony_ci 'TLS_RSA_WITH_ARIA_128_CBC_SHA256', 2102c593315Sopenharmony_ci 'TLS_RSA_WITH_ARIA_256_CBC_SHA384', 2112c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_ARIA_128_CBC_SHA256', 2122c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_ARIA_256_CBC_SHA384', 2132c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_ARIA_128_CBC_SHA256', 2142c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_ARIA_256_CBC_SHA384', 2152c593315Sopenharmony_ci 'TLS_DHE_DSS_WITH_ARIA_128_CBC_SHA256', 2162c593315Sopenharmony_ci 'TLS_DHE_DSS_WITH_ARIA_256_CBC_SHA384', 2172c593315Sopenharmony_ci 'TLS_DHE_RSA_WITH_ARIA_128_CBC_SHA256', 2182c593315Sopenharmony_ci 'TLS_DHE_RSA_WITH_ARIA_256_CBC_SHA384', 2192c593315Sopenharmony_ci 'TLS_DH_anon_WITH_ARIA_128_CBC_SHA256', 2202c593315Sopenharmony_ci 'TLS_DH_anon_WITH_ARIA_256_CBC_SHA384', 2212c593315Sopenharmony_ci 'TLS_ECDHE_ECDSA_WITH_ARIA_128_CBC_SHA256', 2222c593315Sopenharmony_ci 'TLS_ECDHE_ECDSA_WITH_ARIA_256_CBC_SHA384', 2232c593315Sopenharmony_ci 'TLS_ECDH_ECDSA_WITH_ARIA_128_CBC_SHA256', 2242c593315Sopenharmony_ci 'TLS_ECDH_ECDSA_WITH_ARIA_256_CBC_SHA384', 2252c593315Sopenharmony_ci 'TLS_ECDHE_RSA_WITH_ARIA_128_CBC_SHA256', 2262c593315Sopenharmony_ci 'TLS_ECDHE_RSA_WITH_ARIA_256_CBC_SHA384', 2272c593315Sopenharmony_ci 'TLS_ECDH_RSA_WITH_ARIA_128_CBC_SHA256', 2282c593315Sopenharmony_ci 'TLS_ECDH_RSA_WITH_ARIA_256_CBC_SHA384', 2292c593315Sopenharmony_ci 'TLS_RSA_WITH_ARIA_128_GCM_SHA256', 2302c593315Sopenharmony_ci 'TLS_RSA_WITH_ARIA_256_GCM_SHA384', 2312c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_ARIA_128_GCM_SHA256', 2322c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_ARIA_256_GCM_SHA384', 2332c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_ARIA_128_GCM_SHA256', 2342c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_ARIA_256_GCM_SHA384', 2352c593315Sopenharmony_ci 'TLS_DH_anon_WITH_ARIA_128_GCM_SHA256', 2362c593315Sopenharmony_ci 'TLS_DH_anon_WITH_ARIA_256_GCM_SHA384', 2372c593315Sopenharmony_ci 'TLS_ECDH_ECDSA_WITH_ARIA_128_GCM_SHA256', 2382c593315Sopenharmony_ci 'TLS_ECDH_ECDSA_WITH_ARIA_256_GCM_SHA384', 2392c593315Sopenharmony_ci 'TLS_ECDH_RSA_WITH_ARIA_128_GCM_SHA256', 2402c593315Sopenharmony_ci 'TLS_ECDH_RSA_WITH_ARIA_256_GCM_SHA384', 2412c593315Sopenharmony_ci 'TLS_PSK_WITH_ARIA_128_CBC_SHA256', 2422c593315Sopenharmony_ci 'TLS_PSK_WITH_ARIA_256_CBC_SHA384', 2432c593315Sopenharmony_ci 'TLS_DHE_PSK_WITH_ARIA_128_CBC_SHA256', 2442c593315Sopenharmony_ci 'TLS_DHE_PSK_WITH_ARIA_256_CBC_SHA384', 2452c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_ARIA_128_CBC_SHA256', 2462c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_ARIA_256_CBC_SHA384', 2472c593315Sopenharmony_ci 'TLS_PSK_WITH_ARIA_128_GCM_SHA256', 2482c593315Sopenharmony_ci 'TLS_PSK_WITH_ARIA_256_GCM_SHA384', 2492c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_ARIA_128_GCM_SHA256', 2502c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_ARIA_256_GCM_SHA384', 2512c593315Sopenharmony_ci 'TLS_ECDHE_PSK_WITH_ARIA_128_CBC_SHA256', 2522c593315Sopenharmony_ci 'TLS_ECDHE_PSK_WITH_ARIA_256_CBC_SHA384', 2532c593315Sopenharmony_ci 'TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_CBC_SHA256', 2542c593315Sopenharmony_ci 'TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_CBC_SHA384', 2552c593315Sopenharmony_ci 'TLS_ECDH_ECDSA_WITH_CAMELLIA_128_CBC_SHA256', 2562c593315Sopenharmony_ci 'TLS_ECDH_ECDSA_WITH_CAMELLIA_256_CBC_SHA384', 2572c593315Sopenharmony_ci 'TLS_ECDHE_RSA_WITH_CAMELLIA_128_CBC_SHA256', 2582c593315Sopenharmony_ci 'TLS_ECDHE_RSA_WITH_CAMELLIA_256_CBC_SHA384', 2592c593315Sopenharmony_ci 'TLS_ECDH_RSA_WITH_CAMELLIA_128_CBC_SHA256', 2602c593315Sopenharmony_ci 'TLS_ECDH_RSA_WITH_CAMELLIA_256_CBC_SHA384', 2612c593315Sopenharmony_ci 'TLS_RSA_WITH_CAMELLIA_128_GCM_SHA256', 2622c593315Sopenharmony_ci 'TLS_RSA_WITH_CAMELLIA_256_GCM_SHA384', 2632c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_CAMELLIA_128_GCM_SHA256', 2642c593315Sopenharmony_ci 'TLS_DH_RSA_WITH_CAMELLIA_256_GCM_SHA384', 2652c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_CAMELLIA_128_GCM_SHA256', 2662c593315Sopenharmony_ci 'TLS_DH_DSS_WITH_CAMELLIA_256_GCM_SHA384', 2672c593315Sopenharmony_ci 'TLS_DH_anon_WITH_CAMELLIA_128_GCM_SHA256', 2682c593315Sopenharmony_ci 'TLS_DH_anon_WITH_CAMELLIA_256_GCM_SHA384', 2692c593315Sopenharmony_ci 'TLS_ECDH_ECDSA_WITH_CAMELLIA_128_GCM_SHA256', 2702c593315Sopenharmony_ci 'TLS_ECDH_ECDSA_WITH_CAMELLIA_256_GCM_SHA384', 2712c593315Sopenharmony_ci 'TLS_ECDH_RSA_WITH_CAMELLIA_128_GCM_SHA256', 2722c593315Sopenharmony_ci 'TLS_ECDH_RSA_WITH_CAMELLIA_256_GCM_SHA384', 2732c593315Sopenharmony_ci 'TLS_PSK_WITH_CAMELLIA_128_GCM_SHA256', 2742c593315Sopenharmony_ci 'TLS_PSK_WITH_CAMELLIA_256_GCM_SHA384', 2752c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_CAMELLIA_128_GCM_SHA256', 2762c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_CAMELLIA_256_GCM_SHA384', 2772c593315Sopenharmony_ci 'TLS_PSK_WITH_CAMELLIA_128_CBC_SHA256', 2782c593315Sopenharmony_ci 'TLS_PSK_WITH_CAMELLIA_256_CBC_SHA384', 2792c593315Sopenharmony_ci 'TLS_DHE_PSK_WITH_CAMELLIA_128_CBC_SHA256', 2802c593315Sopenharmony_ci 'TLS_DHE_PSK_WITH_CAMELLIA_256_CBC_SHA384', 2812c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256', 2822c593315Sopenharmony_ci 'TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384', 2832c593315Sopenharmony_ci 'TLS_ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256', 2842c593315Sopenharmony_ci 'TLS_ECDHE_PSK_WITH_CAMELLIA_256_CBC_SHA384', 2852c593315Sopenharmony_ci 'TLS_RSA_WITH_AES_128_CCM', 2862c593315Sopenharmony_ci 'TLS_RSA_WITH_AES_256_CCM', 2872c593315Sopenharmony_ci 'TLS_RSA_WITH_AES_128_CCM_8', 2882c593315Sopenharmony_ci 'TLS_RSA_WITH_AES_256_CCM_8', 2892c593315Sopenharmony_ci 'TLS_PSK_WITH_AES_128_CCM', 2902c593315Sopenharmony_ci 'TLS_PSK_WITH_AES_256_CCM', 2912c593315Sopenharmony_ci 'TLS_PSK_WITH_AES_128_CCM_8', 2922c593315Sopenharmony_ci 'TLS_PSK_WITH_AES_256_CCM_8', 2932c593315Sopenharmony_ci] 2942c593315Sopenharmony_ci 2952c593315Sopenharmony_ciciphers = [] 2962c593315Sopenharmony_cifound = set() 2972c593315Sopenharmony_cifor hl, name, _, _, _ in csv.reader(sys.stdin): 2982c593315Sopenharmony_ci if name not in blacklist: 2992c593315Sopenharmony_ci continue 3002c593315Sopenharmony_ci 3012c593315Sopenharmony_ci found.add(name) 3022c593315Sopenharmony_ci 3032c593315Sopenharmony_ci high, low = hl.split(',') 3042c593315Sopenharmony_ci 3052c593315Sopenharmony_ci id = high + low[2:] + 'u' 3062c593315Sopenharmony_ci ciphers.append((id, name)) 3072c593315Sopenharmony_ci 3082c593315Sopenharmony_ciprint('''\ 3092c593315Sopenharmony_cienum {''') 3102c593315Sopenharmony_ci 3112c593315Sopenharmony_cifor id, name in ciphers: 3122c593315Sopenharmony_ci print('{} = {},'.format(name, id)) 3132c593315Sopenharmony_ci 3142c593315Sopenharmony_ciprint('''\ 3152c593315Sopenharmony_ci}; 3162c593315Sopenharmony_ci''') 3172c593315Sopenharmony_ci 3182c593315Sopenharmony_cifor id, name in ciphers: 3192c593315Sopenharmony_ci print('''\ 3202c593315Sopenharmony_cicase {}:'''.format(name)) 3212c593315Sopenharmony_ci 3222c593315Sopenharmony_ciif len(found) != len(blacklist): 3232c593315Sopenharmony_ci print('{} found out of {}; not all cipher was found: {}'.format( 3242c593315Sopenharmony_ci len(found), len(blacklist), 3252c593315Sopenharmony_ci found.symmetric_difference(blacklist))) 326