Botan  1.11.15
src/lib/tls/tls_suite_info.cpp
Go to the documentation of this file.
00001 /*
00002 * TLS cipher suite information
00003 *
00004 * This file was automatically generated from the IANA assignments
00005 * (tls-parameters.txt hash 4bc98b6f75ad5b63952b5f457fa7adbfef60f095)
00006 * by ./src/scripts/tls_suite_info.py on 2015-01-30
00007 *
00008 * Botan is released under the Simplified BSD License (see license.txt)
00009 */
00010 
00011 #include <botan/tls_ciphersuite.h>
00012 
00013 namespace Botan {
00014 
00015 namespace TLS {
00016 
00017 Ciphersuite Ciphersuite::by_id(u16bit suite)
00018    {
00019    switch(suite)
00020       {
00021       case 0x0013: // DHE_DSS_WITH_3DES_EDE_CBC_SHA
00022          return Ciphersuite(0x0013, "DSA", "DH", "3DES", 24, 8, 0, "SHA-1", 20);
00023 
00024       case 0x0032: // DHE_DSS_WITH_AES_128_CBC_SHA
00025          return Ciphersuite(0x0032, "DSA", "DH", "AES-128", 16, 16, 0, "SHA-1", 20);
00026 
00027       case 0x0040: // DHE_DSS_WITH_AES_128_CBC_SHA256
00028          return Ciphersuite(0x0040, "DSA", "DH", "AES-128", 16, 16, 0, "SHA-256", 32);
00029 
00030       case 0x00A2: // DHE_DSS_WITH_AES_128_GCM_SHA256
00031          return Ciphersuite(0x00A2, "DSA", "DH", "AES-128/GCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00032 
00033       case 0x0038: // DHE_DSS_WITH_AES_256_CBC_SHA
00034          return Ciphersuite(0x0038, "DSA", "DH", "AES-256", 32, 16, 0, "SHA-1", 20);
00035 
00036       case 0x006A: // DHE_DSS_WITH_AES_256_CBC_SHA256
00037          return Ciphersuite(0x006A, "DSA", "DH", "AES-256", 32, 16, 0, "SHA-256", 32);
00038 
00039       case 0x00A3: // DHE_DSS_WITH_AES_256_GCM_SHA384
00040          return Ciphersuite(0x00A3, "DSA", "DH", "AES-256/GCM", 32, 4, 8, "AEAD", 0, "SHA-384");
00041 
00042       case 0x0044: // DHE_DSS_WITH_CAMELLIA_128_CBC_SHA
00043          return Ciphersuite(0x0044, "DSA", "DH", "Camellia-128", 16, 16, 0, "SHA-1", 20);
00044 
00045       case 0x00BD: // DHE_DSS_WITH_CAMELLIA_128_CBC_SHA256
00046          return Ciphersuite(0x00BD, "DSA", "DH", "Camellia-128", 16, 16, 0, "SHA-256", 32);
00047 
00048       case 0xC080: // DHE_DSS_WITH_CAMELLIA_128_GCM_SHA256
00049          return Ciphersuite(0xC080, "DSA", "DH", "Camellia-128/GCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00050 
00051       case 0x0087: // DHE_DSS_WITH_CAMELLIA_256_CBC_SHA
00052          return Ciphersuite(0x0087, "DSA", "DH", "Camellia-256", 32, 16, 0, "SHA-1", 20);
00053 
00054       case 0x00C3: // DHE_DSS_WITH_CAMELLIA_256_CBC_SHA256
00055          return Ciphersuite(0x00C3, "DSA", "DH", "Camellia-256", 32, 16, 0, "SHA-256", 32);
00056 
00057       case 0xC081: // DHE_DSS_WITH_CAMELLIA_256_GCM_SHA384
00058          return Ciphersuite(0xC081, "DSA", "DH", "Camellia-256/GCM", 32, 4, 8, "AEAD", 0, "SHA-384");
00059 
00060       case 0x0066: // DHE_DSS_WITH_RC4_128_SHA
00061          return Ciphersuite(0x0066, "DSA", "DH", "RC4", 16, 0, 0, "SHA-1", 20);
00062 
00063       case 0x0099: // DHE_DSS_WITH_SEED_CBC_SHA
00064          return Ciphersuite(0x0099, "DSA", "DH", "SEED", 16, 16, 0, "SHA-1", 20);
00065 
00066       case 0x008F: // DHE_PSK_WITH_3DES_EDE_CBC_SHA
00067          return Ciphersuite(0x008F, "", "DHE_PSK", "3DES", 24, 8, 0, "SHA-1", 20);
00068 
00069       case 0x0090: // DHE_PSK_WITH_AES_128_CBC_SHA
00070          return Ciphersuite(0x0090, "", "DHE_PSK", "AES-128", 16, 16, 0, "SHA-1", 20);
00071 
00072       case 0x00B2: // DHE_PSK_WITH_AES_128_CBC_SHA256
00073          return Ciphersuite(0x00B2, "", "DHE_PSK", "AES-128", 16, 16, 0, "SHA-256", 32);
00074 
00075       case 0xC0A6: // DHE_PSK_WITH_AES_128_CCM
00076          return Ciphersuite(0xC0A6, "", "DHE_PSK", "AES-128/CCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00077 
00078       case 0x00AA: // DHE_PSK_WITH_AES_128_GCM_SHA256
00079          return Ciphersuite(0x00AA, "", "DHE_PSK", "AES-128/GCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00080 
00081       case 0xFFFA: // DHE_PSK_WITH_AES_128_OCB_SHA256
00082          return Ciphersuite(0xFFFA, "", "DHE_PSK", "AES-128/OCB(12)", 16, 4, 0, "AEAD", 0, "SHA-256");
00083 
00084       case 0x0091: // DHE_PSK_WITH_AES_256_CBC_SHA
00085          return Ciphersuite(0x0091, "", "DHE_PSK", "AES-256", 32, 16, 0, "SHA-1", 20);
00086 
00087       case 0x00B3: // DHE_PSK_WITH_AES_256_CBC_SHA384
00088          return Ciphersuite(0x00B3, "", "DHE_PSK", "AES-256", 32, 16, 0, "SHA-384", 48);
00089 
00090       case 0xC0A7: // DHE_PSK_WITH_AES_256_CCM
00091          return Ciphersuite(0xC0A7, "", "DHE_PSK", "AES-256/CCM", 32, 4, 8, "AEAD", 0, "SHA-256");
00092 
00093       case 0x00AB: // DHE_PSK_WITH_AES_256_GCM_SHA384
00094          return Ciphersuite(0x00AB, "", "DHE_PSK", "AES-256/GCM", 32, 4, 8, "AEAD", 0, "SHA-384");
00095 
00096       case 0xFFFB: // DHE_PSK_WITH_AES_256_OCB_SHA256
00097          return Ciphersuite(0xFFFB, "", "DHE_PSK", "AES-256/OCB(12)", 32, 4, 0, "AEAD", 0, "SHA-256");
00098 
00099       case 0xC096: // DHE_PSK_WITH_CAMELLIA_128_CBC_SHA256
00100          return Ciphersuite(0xC096, "", "DHE_PSK", "Camellia-128", 16, 16, 0, "SHA-256", 32);
00101 
00102       case 0xC090: // DHE_PSK_WITH_CAMELLIA_128_GCM_SHA256
00103          return Ciphersuite(0xC090, "", "DHE_PSK", "Camellia-128/GCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00104 
00105       case 0xC097: // DHE_PSK_WITH_CAMELLIA_256_CBC_SHA384
00106          return Ciphersuite(0xC097, "", "DHE_PSK", "Camellia-256", 32, 16, 0, "SHA-384", 48);
00107 
00108       case 0xC091: // DHE_PSK_WITH_CAMELLIA_256_GCM_SHA384
00109          return Ciphersuite(0xC091, "", "DHE_PSK", "Camellia-256/GCM", 32, 4, 8, "AEAD", 0, "SHA-384");
00110 
00111       case 0x008E: // DHE_PSK_WITH_RC4_128_SHA
00112          return Ciphersuite(0x008E, "", "DHE_PSK", "RC4", 16, 0, 0, "SHA-1", 20);
00113 
00114       case 0x0016: // DHE_RSA_WITH_3DES_EDE_CBC_SHA
00115          return Ciphersuite(0x0016, "RSA", "DH", "3DES", 24, 8, 0, "SHA-1", 20);
00116 
00117       case 0x0033: // DHE_RSA_WITH_AES_128_CBC_SHA
00118          return Ciphersuite(0x0033, "RSA", "DH", "AES-128", 16, 16, 0, "SHA-1", 20);
00119 
00120       case 0x0067: // DHE_RSA_WITH_AES_128_CBC_SHA256
00121          return Ciphersuite(0x0067, "RSA", "DH", "AES-128", 16, 16, 0, "SHA-256", 32);
00122 
00123       case 0xC09E: // DHE_RSA_WITH_AES_128_CCM
00124          return Ciphersuite(0xC09E, "RSA", "DH", "AES-128/CCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00125 
00126       case 0xC0A2: // DHE_RSA_WITH_AES_128_CCM_8
00127          return Ciphersuite(0xC0A2, "RSA", "DH", "AES-128/CCM(8)", 16, 4, 8, "AEAD", 0, "SHA-256");
00128 
00129       case 0x009E: // DHE_RSA_WITH_AES_128_GCM_SHA256
00130          return Ciphersuite(0x009E, "RSA", "DH", "AES-128/GCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00131 
00132       case 0xFFF4: // DHE_RSA_WITH_AES_128_OCB_SHA256
00133          return Ciphersuite(0xFFF4, "RSA", "DH", "AES-128/OCB(12)", 16, 4, 0, "AEAD", 0, "SHA-256");
00134 
00135       case 0x0039: // DHE_RSA_WITH_AES_256_CBC_SHA
00136          return Ciphersuite(0x0039, "RSA", "DH", "AES-256", 32, 16, 0, "SHA-1", 20);
00137 
00138       case 0x006B: // DHE_RSA_WITH_AES_256_CBC_SHA256
00139          return Ciphersuite(0x006B, "RSA", "DH", "AES-256", 32, 16, 0, "SHA-256", 32);
00140 
00141       case 0xC09F: // DHE_RSA_WITH_AES_256_CCM
00142          return Ciphersuite(0xC09F, "RSA", "DH", "AES-256/CCM", 32, 4, 8, "AEAD", 0, "SHA-256");
00143 
00144       case 0xC0A3: // DHE_RSA_WITH_AES_256_CCM_8
00145          return Ciphersuite(0xC0A3, "RSA", "DH", "AES-256/CCM(8)", 32, 4, 8, "AEAD", 0, "SHA-256");
00146 
00147       case 0x009F: // DHE_RSA_WITH_AES_256_GCM_SHA384
00148          return Ciphersuite(0x009F, "RSA", "DH", "AES-256/GCM", 32, 4, 8, "AEAD", 0, "SHA-384");
00149 
00150       case 0xFFF5: // DHE_RSA_WITH_AES_256_OCB_SHA256
00151          return Ciphersuite(0xFFF5, "RSA", "DH", "AES-256/OCB(12)", 32, 4, 0, "AEAD", 0, "SHA-256");
00152 
00153       case 0x0045: // DHE_RSA_WITH_CAMELLIA_128_CBC_SHA
00154          return Ciphersuite(0x0045, "RSA", "DH", "Camellia-128", 16, 16, 0, "SHA-1", 20);
00155 
00156       case 0x00BE: // DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256
00157          return Ciphersuite(0x00BE, "RSA", "DH", "Camellia-128", 16, 16, 0, "SHA-256", 32);
00158 
00159       case 0xC07C: // DHE_RSA_WITH_CAMELLIA_128_GCM_SHA256
00160          return Ciphersuite(0xC07C, "RSA", "DH", "Camellia-128/GCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00161 
00162       case 0x0088: // DHE_RSA_WITH_CAMELLIA_256_CBC_SHA
00163          return Ciphersuite(0x0088, "RSA", "DH", "Camellia-256", 32, 16, 0, "SHA-1", 20);
00164 
00165       case 0x00C4: // DHE_RSA_WITH_CAMELLIA_256_CBC_SHA256
00166          return Ciphersuite(0x00C4, "RSA", "DH", "Camellia-256", 32, 16, 0, "SHA-256", 32);
00167 
00168       case 0xC07D: // DHE_RSA_WITH_CAMELLIA_256_GCM_SHA384
00169          return Ciphersuite(0xC07D, "RSA", "DH", "Camellia-256/GCM", 32, 4, 8, "AEAD", 0, "SHA-384");
00170 
00171       case 0xCC15: // DHE_RSA_WITH_CHACHA20_POLY1305_SHA256
00172          return Ciphersuite(0xCC15, "RSA", "DH", "ChaCha20Poly1305", 32, 0, 0, "AEAD", 0, "SHA-256");
00173 
00174       case 0x009A: // DHE_RSA_WITH_SEED_CBC_SHA
00175          return Ciphersuite(0x009A, "RSA", "DH", "SEED", 16, 16, 0, "SHA-1", 20);
00176 
00177       case 0x001B: // DH_anon_WITH_3DES_EDE_CBC_SHA
00178          return Ciphersuite(0x001B, "", "DH", "3DES", 24, 8, 0, "SHA-1", 20);
00179 
00180       case 0x0034: // DH_anon_WITH_AES_128_CBC_SHA
00181          return Ciphersuite(0x0034, "", "DH", "AES-128", 16, 16, 0, "SHA-1", 20);
00182 
00183       case 0x006C: // DH_anon_WITH_AES_128_CBC_SHA256
00184          return Ciphersuite(0x006C, "", "DH", "AES-128", 16, 16, 0, "SHA-256", 32);
00185 
00186       case 0x00A6: // DH_anon_WITH_AES_128_GCM_SHA256
00187          return Ciphersuite(0x00A6, "", "DH", "AES-128/GCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00188 
00189       case 0x003A: // DH_anon_WITH_AES_256_CBC_SHA
00190          return Ciphersuite(0x003A, "", "DH", "AES-256", 32, 16, 0, "SHA-1", 20);
00191 
00192       case 0x006D: // DH_anon_WITH_AES_256_CBC_SHA256
00193          return Ciphersuite(0x006D, "", "DH", "AES-256", 32, 16, 0, "SHA-256", 32);
00194 
00195       case 0x00A7: // DH_anon_WITH_AES_256_GCM_SHA384
00196          return Ciphersuite(0x00A7, "", "DH", "AES-256/GCM", 32, 4, 8, "AEAD", 0, "SHA-384");
00197 
00198       case 0x0046: // DH_anon_WITH_CAMELLIA_128_CBC_SHA
00199          return Ciphersuite(0x0046, "", "DH", "Camellia-128", 16, 16, 0, "SHA-1", 20);
00200 
00201       case 0x00BF: // DH_anon_WITH_CAMELLIA_128_CBC_SHA256
00202          return Ciphersuite(0x00BF, "", "DH", "Camellia-128", 16, 16, 0, "SHA-256", 32);
00203 
00204       case 0xC084: // DH_anon_WITH_CAMELLIA_128_GCM_SHA256
00205          return Ciphersuite(0xC084, "", "DH", "Camellia-128/GCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00206 
00207       case 0x0089: // DH_anon_WITH_CAMELLIA_256_CBC_SHA
00208          return Ciphersuite(0x0089, "", "DH", "Camellia-256", 32, 16, 0, "SHA-1", 20);
00209 
00210       case 0x00C5: // DH_anon_WITH_CAMELLIA_256_CBC_SHA256
00211          return Ciphersuite(0x00C5, "", "DH", "Camellia-256", 32, 16, 0, "SHA-256", 32);
00212 
00213       case 0xC085: // DH_anon_WITH_CAMELLIA_256_GCM_SHA384
00214          return Ciphersuite(0xC085, "", "DH", "Camellia-256/GCM", 32, 4, 8, "AEAD", 0, "SHA-384");
00215 
00216       case 0x0018: // DH_anon_WITH_RC4_128_MD5
00217          return Ciphersuite(0x0018, "", "DH", "RC4", 16, 0, 0, "MD5", 16);
00218 
00219       case 0x009B: // DH_anon_WITH_SEED_CBC_SHA
00220          return Ciphersuite(0x009B, "", "DH", "SEED", 16, 16, 0, "SHA-1", 20);
00221 
00222       case 0xC008: // ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA
00223          return Ciphersuite(0xC008, "ECDSA", "ECDH", "3DES", 24, 8, 0, "SHA-1", 20);
00224 
00225       case 0xC009: // ECDHE_ECDSA_WITH_AES_128_CBC_SHA
00226          return Ciphersuite(0xC009, "ECDSA", "ECDH", "AES-128", 16, 16, 0, "SHA-1", 20);
00227 
00228       case 0xC023: // ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
00229          return Ciphersuite(0xC023, "ECDSA", "ECDH", "AES-128", 16, 16, 0, "SHA-256", 32);
00230 
00231       case 0xC0AC: // ECDHE_ECDSA_WITH_AES_128_CCM
00232          return Ciphersuite(0xC0AC, "ECDSA", "ECDH", "AES-128/CCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00233 
00234       case 0xC0AE: // ECDHE_ECDSA_WITH_AES_128_CCM_8
00235          return Ciphersuite(0xC0AE, "ECDSA", "ECDH", "AES-128/CCM(8)", 16, 4, 8, "AEAD", 0, "SHA-256");
00236 
00237       case 0xC02B: // ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
00238          return Ciphersuite(0xC02B, "ECDSA", "ECDH", "AES-128/GCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00239 
00240       case 0xFFF2: // ECDHE_ECDSA_WITH_AES_128_OCB_SHA256
00241          return Ciphersuite(0xFFF2, "ECDSA", "ECDH", "AES-128/OCB(12)", 16, 4, 0, "AEAD", 0, "SHA-256");
00242 
00243       case 0xC00A: // ECDHE_ECDSA_WITH_AES_256_CBC_SHA
00244          return Ciphersuite(0xC00A, "ECDSA", "ECDH", "AES-256", 32, 16, 0, "SHA-1", 20);
00245 
00246       case 0xC024: // ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
00247          return Ciphersuite(0xC024, "ECDSA", "ECDH", "AES-256", 32, 16, 0, "SHA-384", 48);
00248 
00249       case 0xC0AD: // ECDHE_ECDSA_WITH_AES_256_CCM
00250          return Ciphersuite(0xC0AD, "ECDSA", "ECDH", "AES-256/CCM", 32, 4, 8, "AEAD", 0, "SHA-256");
00251 
00252       case 0xC0AF: // ECDHE_ECDSA_WITH_AES_256_CCM_8
00253          return Ciphersuite(0xC0AF, "ECDSA", "ECDH", "AES-256/CCM(8)", 32, 4, 8, "AEAD", 0, "SHA-256");
00254 
00255       case 0xC02C: // ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
00256          return Ciphersuite(0xC02C, "ECDSA", "ECDH", "AES-256/GCM", 32, 4, 8, "AEAD", 0, "SHA-384");
00257 
00258       case 0xFFF3: // ECDHE_ECDSA_WITH_AES_256_OCB_SHA256
00259          return Ciphersuite(0xFFF3, "ECDSA", "ECDH", "AES-256/OCB(12)", 32, 4, 0, "AEAD", 0, "SHA-256");
00260 
00261       case 0xC072: // ECDHE_ECDSA_WITH_CAMELLIA_128_CBC_SHA256
00262          return Ciphersuite(0xC072, "ECDSA", "ECDH", "Camellia-128", 16, 16, 0, "SHA-256", 32);
00263 
00264       case 0xC086: // ECDHE_ECDSA_WITH_CAMELLIA_128_GCM_SHA256
00265          return Ciphersuite(0xC086, "ECDSA", "ECDH", "Camellia-128/GCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00266 
00267       case 0xC073: // ECDHE_ECDSA_WITH_CAMELLIA_256_CBC_SHA384
00268          return Ciphersuite(0xC073, "ECDSA", "ECDH", "Camellia-256", 32, 16, 0, "SHA-384", 48);
00269 
00270       case 0xC087: // ECDHE_ECDSA_WITH_CAMELLIA_256_GCM_SHA384
00271          return Ciphersuite(0xC087, "ECDSA", "ECDH", "Camellia-256/GCM", 32, 4, 8, "AEAD", 0, "SHA-384");
00272 
00273       case 0xCC14: // ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
00274          return Ciphersuite(0xCC14, "ECDSA", "ECDH", "ChaCha20Poly1305", 32, 0, 0, "AEAD", 0, "SHA-256");
00275 
00276       case 0xC007: // ECDHE_ECDSA_WITH_RC4_128_SHA
00277          return Ciphersuite(0xC007, "ECDSA", "ECDH", "RC4", 16, 0, 0, "SHA-1", 20);
00278 
00279       case 0xC034: // ECDHE_PSK_WITH_3DES_EDE_CBC_SHA
00280          return Ciphersuite(0xC034, "", "ECDHE_PSK", "3DES", 24, 8, 0, "SHA-1", 20);
00281 
00282       case 0xC035: // ECDHE_PSK_WITH_AES_128_CBC_SHA
00283          return Ciphersuite(0xC035, "", "ECDHE_PSK", "AES-128", 16, 16, 0, "SHA-1", 20);
00284 
00285       case 0xC037: // ECDHE_PSK_WITH_AES_128_CBC_SHA256
00286          return Ciphersuite(0xC037, "", "ECDHE_PSK", "AES-128", 16, 16, 0, "SHA-256", 32);
00287 
00288       case 0xFFF8: // ECDHE_PSK_WITH_AES_128_OCB_SHA256
00289          return Ciphersuite(0xFFF8, "", "ECDHE_PSK", "AES-128/OCB(12)", 16, 4, 0, "AEAD", 0, "SHA-256");
00290 
00291       case 0xC036: // ECDHE_PSK_WITH_AES_256_CBC_SHA
00292          return Ciphersuite(0xC036, "", "ECDHE_PSK", "AES-256", 32, 16, 0, "SHA-1", 20);
00293 
00294       case 0xC038: // ECDHE_PSK_WITH_AES_256_CBC_SHA384
00295          return Ciphersuite(0xC038, "", "ECDHE_PSK", "AES-256", 32, 16, 0, "SHA-384", 48);
00296 
00297       case 0xFFF9: // ECDHE_PSK_WITH_AES_256_OCB_SHA256
00298          return Ciphersuite(0xFFF9, "", "ECDHE_PSK", "AES-256/OCB(12)", 32, 4, 0, "AEAD", 0, "SHA-256");
00299 
00300       case 0xC09A: // ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256
00301          return Ciphersuite(0xC09A, "", "ECDHE_PSK", "Camellia-128", 16, 16, 0, "SHA-256", 32);
00302 
00303       case 0xC09B: // ECDHE_PSK_WITH_CAMELLIA_256_CBC_SHA384
00304          return Ciphersuite(0xC09B, "", "ECDHE_PSK", "Camellia-256", 32, 16, 0, "SHA-384", 48);
00305 
00306       case 0xC033: // ECDHE_PSK_WITH_RC4_128_SHA
00307          return Ciphersuite(0xC033, "", "ECDHE_PSK", "RC4", 16, 0, 0, "SHA-1", 20);
00308 
00309       case 0xC012: // ECDHE_RSA_WITH_3DES_EDE_CBC_SHA
00310          return Ciphersuite(0xC012, "RSA", "ECDH", "3DES", 24, 8, 0, "SHA-1", 20);
00311 
00312       case 0xC013: // ECDHE_RSA_WITH_AES_128_CBC_SHA
00313          return Ciphersuite(0xC013, "RSA", "ECDH", "AES-128", 16, 16, 0, "SHA-1", 20);
00314 
00315       case 0xC027: // ECDHE_RSA_WITH_AES_128_CBC_SHA256
00316          return Ciphersuite(0xC027, "RSA", "ECDH", "AES-128", 16, 16, 0, "SHA-256", 32);
00317 
00318       case 0xC02F: // ECDHE_RSA_WITH_AES_128_GCM_SHA256
00319          return Ciphersuite(0xC02F, "RSA", "ECDH", "AES-128/GCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00320 
00321       case 0xFFF0: // ECDHE_RSA_WITH_AES_128_OCB_SHA256
00322          return Ciphersuite(0xFFF0, "RSA", "ECDH", "AES-128/OCB(12)", 16, 4, 0, "AEAD", 0, "SHA-256");
00323 
00324       case 0xC014: // ECDHE_RSA_WITH_AES_256_CBC_SHA
00325          return Ciphersuite(0xC014, "RSA", "ECDH", "AES-256", 32, 16, 0, "SHA-1", 20);
00326 
00327       case 0xC028: // ECDHE_RSA_WITH_AES_256_CBC_SHA384
00328          return Ciphersuite(0xC028, "RSA", "ECDH", "AES-256", 32, 16, 0, "SHA-384", 48);
00329 
00330       case 0xC030: // ECDHE_RSA_WITH_AES_256_GCM_SHA384
00331          return Ciphersuite(0xC030, "RSA", "ECDH", "AES-256/GCM", 32, 4, 8, "AEAD", 0, "SHA-384");
00332 
00333       case 0xFFF1: // ECDHE_RSA_WITH_AES_256_OCB_SHA256
00334          return Ciphersuite(0xFFF1, "RSA", "ECDH", "AES-256/OCB(12)", 32, 4, 0, "AEAD", 0, "SHA-256");
00335 
00336       case 0xC076: // ECDHE_RSA_WITH_CAMELLIA_128_CBC_SHA256
00337          return Ciphersuite(0xC076, "RSA", "ECDH", "Camellia-128", 16, 16, 0, "SHA-256", 32);
00338 
00339       case 0xC08A: // ECDHE_RSA_WITH_CAMELLIA_128_GCM_SHA256
00340          return Ciphersuite(0xC08A, "RSA", "ECDH", "Camellia-128/GCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00341 
00342       case 0xC077: // ECDHE_RSA_WITH_CAMELLIA_256_CBC_SHA384
00343          return Ciphersuite(0xC077, "RSA", "ECDH", "Camellia-256", 32, 16, 0, "SHA-384", 48);
00344 
00345       case 0xC08B: // ECDHE_RSA_WITH_CAMELLIA_256_GCM_SHA384
00346          return Ciphersuite(0xC08B, "RSA", "ECDH", "Camellia-256/GCM", 32, 4, 8, "AEAD", 0, "SHA-384");
00347 
00348       case 0xCC13: // ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
00349          return Ciphersuite(0xCC13, "RSA", "ECDH", "ChaCha20Poly1305", 32, 0, 0, "AEAD", 0, "SHA-256");
00350 
00351       case 0xC011: // ECDHE_RSA_WITH_RC4_128_SHA
00352          return Ciphersuite(0xC011, "RSA", "ECDH", "RC4", 16, 0, 0, "SHA-1", 20);
00353 
00354       case 0xC017: // ECDH_anon_WITH_3DES_EDE_CBC_SHA
00355          return Ciphersuite(0xC017, "", "ECDH", "3DES", 24, 8, 0, "SHA-1", 20);
00356 
00357       case 0xC018: // ECDH_anon_WITH_AES_128_CBC_SHA
00358          return Ciphersuite(0xC018, "", "ECDH", "AES-128", 16, 16, 0, "SHA-1", 20);
00359 
00360       case 0xC019: // ECDH_anon_WITH_AES_256_CBC_SHA
00361          return Ciphersuite(0xC019, "", "ECDH", "AES-256", 32, 16, 0, "SHA-1", 20);
00362 
00363       case 0xC016: // ECDH_anon_WITH_RC4_128_SHA
00364          return Ciphersuite(0xC016, "", "ECDH", "RC4", 16, 0, 0, "SHA-1", 20);
00365 
00366       case 0xC0AA: // PSK_DHE_WITH_AES_128_CCM_8
00367          return Ciphersuite(0xC0AA, "", "DHE_PSK", "AES-128/CCM(8)", 16, 4, 8, "AEAD", 0, "SHA-256");
00368 
00369       case 0xC0AB: // PSK_DHE_WITH_AES_256_CCM_8
00370          return Ciphersuite(0xC0AB, "", "DHE_PSK", "AES-256/CCM(8)", 32, 4, 8, "AEAD", 0, "SHA-256");
00371 
00372       case 0x008B: // PSK_WITH_3DES_EDE_CBC_SHA
00373          return Ciphersuite(0x008B, "", "PSK", "3DES", 24, 8, 0, "SHA-1", 20);
00374 
00375       case 0x008C: // PSK_WITH_AES_128_CBC_SHA
00376          return Ciphersuite(0x008C, "", "PSK", "AES-128", 16, 16, 0, "SHA-1", 20);
00377 
00378       case 0x00AE: // PSK_WITH_AES_128_CBC_SHA256
00379          return Ciphersuite(0x00AE, "", "PSK", "AES-128", 16, 16, 0, "SHA-256", 32);
00380 
00381       case 0xC0A4: // PSK_WITH_AES_128_CCM
00382          return Ciphersuite(0xC0A4, "", "PSK", "AES-128/CCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00383 
00384       case 0xC0A8: // PSK_WITH_AES_128_CCM_8
00385          return Ciphersuite(0xC0A8, "", "PSK", "AES-128/CCM(8)", 16, 4, 8, "AEAD", 0, "SHA-256");
00386 
00387       case 0x00A8: // PSK_WITH_AES_128_GCM_SHA256
00388          return Ciphersuite(0x00A8, "", "PSK", "AES-128/GCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00389 
00390       case 0xFFF6: // PSK_WITH_AES_128_OCB_SHA256
00391          return Ciphersuite(0xFFF6, "", "PSK", "AES-128/OCB(12)", 16, 4, 0, "AEAD", 0, "SHA-256");
00392 
00393       case 0x008D: // PSK_WITH_AES_256_CBC_SHA
00394          return Ciphersuite(0x008D, "", "PSK", "AES-256", 32, 16, 0, "SHA-1", 20);
00395 
00396       case 0x00AF: // PSK_WITH_AES_256_CBC_SHA384
00397          return Ciphersuite(0x00AF, "", "PSK", "AES-256", 32, 16, 0, "SHA-384", 48);
00398 
00399       case 0xC0A5: // PSK_WITH_AES_256_CCM
00400          return Ciphersuite(0xC0A5, "", "PSK", "AES-256/CCM", 32, 4, 8, "AEAD", 0, "SHA-256");
00401 
00402       case 0xC0A9: // PSK_WITH_AES_256_CCM_8
00403          return Ciphersuite(0xC0A9, "", "PSK", "AES-256/CCM(8)", 32, 4, 8, "AEAD", 0, "SHA-256");
00404 
00405       case 0x00A9: // PSK_WITH_AES_256_GCM_SHA384
00406          return Ciphersuite(0x00A9, "", "PSK", "AES-256/GCM", 32, 4, 8, "AEAD", 0, "SHA-384");
00407 
00408       case 0xFFF7: // PSK_WITH_AES_256_OCB_SHA256
00409          return Ciphersuite(0xFFF7, "", "PSK", "AES-256/OCB(12)", 32, 4, 0, "AEAD", 0, "SHA-256");
00410 
00411       case 0xC094: // PSK_WITH_CAMELLIA_128_CBC_SHA256
00412          return Ciphersuite(0xC094, "", "PSK", "Camellia-128", 16, 16, 0, "SHA-256", 32);
00413 
00414       case 0xC08E: // PSK_WITH_CAMELLIA_128_GCM_SHA256
00415          return Ciphersuite(0xC08E, "", "PSK", "Camellia-128/GCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00416 
00417       case 0xC095: // PSK_WITH_CAMELLIA_256_CBC_SHA384
00418          return Ciphersuite(0xC095, "", "PSK", "Camellia-256", 32, 16, 0, "SHA-384", 48);
00419 
00420       case 0xC08F: // PSK_WITH_CAMELLIA_256_GCM_SHA384
00421          return Ciphersuite(0xC08F, "", "PSK", "Camellia-256/GCM", 32, 4, 8, "AEAD", 0, "SHA-384");
00422 
00423       case 0x008A: // PSK_WITH_RC4_128_SHA
00424          return Ciphersuite(0x008A, "", "PSK", "RC4", 16, 0, 0, "SHA-1", 20);
00425 
00426       case 0x000A: // RSA_WITH_3DES_EDE_CBC_SHA
00427          return Ciphersuite(0x000A, "RSA", "RSA", "3DES", 24, 8, 0, "SHA-1", 20);
00428 
00429       case 0x002F: // RSA_WITH_AES_128_CBC_SHA
00430          return Ciphersuite(0x002F, "RSA", "RSA", "AES-128", 16, 16, 0, "SHA-1", 20);
00431 
00432       case 0x003C: // RSA_WITH_AES_128_CBC_SHA256
00433          return Ciphersuite(0x003C, "RSA", "RSA", "AES-128", 16, 16, 0, "SHA-256", 32);
00434 
00435       case 0xC09C: // RSA_WITH_AES_128_CCM
00436          return Ciphersuite(0xC09C, "RSA", "RSA", "AES-128/CCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00437 
00438       case 0xC0A0: // RSA_WITH_AES_128_CCM_8
00439          return Ciphersuite(0xC0A0, "RSA", "RSA", "AES-128/CCM(8)", 16, 4, 8, "AEAD", 0, "SHA-256");
00440 
00441       case 0x009C: // RSA_WITH_AES_128_GCM_SHA256
00442          return Ciphersuite(0x009C, "RSA", "RSA", "AES-128/GCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00443 
00444       case 0x0035: // RSA_WITH_AES_256_CBC_SHA
00445          return Ciphersuite(0x0035, "RSA", "RSA", "AES-256", 32, 16, 0, "SHA-1", 20);
00446 
00447       case 0x003D: // RSA_WITH_AES_256_CBC_SHA256
00448          return Ciphersuite(0x003D, "RSA", "RSA", "AES-256", 32, 16, 0, "SHA-256", 32);
00449 
00450       case 0xC09D: // RSA_WITH_AES_256_CCM
00451          return Ciphersuite(0xC09D, "RSA", "RSA", "AES-256/CCM", 32, 4, 8, "AEAD", 0, "SHA-256");
00452 
00453       case 0xC0A1: // RSA_WITH_AES_256_CCM_8
00454          return Ciphersuite(0xC0A1, "RSA", "RSA", "AES-256/CCM(8)", 32, 4, 8, "AEAD", 0, "SHA-256");
00455 
00456       case 0x009D: // RSA_WITH_AES_256_GCM_SHA384
00457          return Ciphersuite(0x009D, "RSA", "RSA", "AES-256/GCM", 32, 4, 8, "AEAD", 0, "SHA-384");
00458 
00459       case 0x0041: // RSA_WITH_CAMELLIA_128_CBC_SHA
00460          return Ciphersuite(0x0041, "RSA", "RSA", "Camellia-128", 16, 16, 0, "SHA-1", 20);
00461 
00462       case 0x00BA: // RSA_WITH_CAMELLIA_128_CBC_SHA256
00463          return Ciphersuite(0x00BA, "RSA", "RSA", "Camellia-128", 16, 16, 0, "SHA-256", 32);
00464 
00465       case 0xC07A: // RSA_WITH_CAMELLIA_128_GCM_SHA256
00466          return Ciphersuite(0xC07A, "RSA", "RSA", "Camellia-128/GCM", 16, 4, 8, "AEAD", 0, "SHA-256");
00467 
00468       case 0x0084: // RSA_WITH_CAMELLIA_256_CBC_SHA
00469          return Ciphersuite(0x0084, "RSA", "RSA", "Camellia-256", 32, 16, 0, "SHA-1", 20);
00470 
00471       case 0x00C0: // RSA_WITH_CAMELLIA_256_CBC_SHA256
00472          return Ciphersuite(0x00C0, "RSA", "RSA", "Camellia-256", 32, 16, 0, "SHA-256", 32);
00473 
00474       case 0xC07B: // RSA_WITH_CAMELLIA_256_GCM_SHA384
00475          return Ciphersuite(0xC07B, "RSA", "RSA", "Camellia-256/GCM", 32, 4, 8, "AEAD", 0, "SHA-384");
00476 
00477       case 0x0004: // RSA_WITH_RC4_128_MD5
00478          return Ciphersuite(0x0004, "RSA", "RSA", "RC4", 16, 0, 0, "MD5", 16);
00479 
00480       case 0x0005: // RSA_WITH_RC4_128_SHA
00481          return Ciphersuite(0x0005, "RSA", "RSA", "RC4", 16, 0, 0, "SHA-1", 20);
00482 
00483       case 0x0096: // RSA_WITH_SEED_CBC_SHA
00484          return Ciphersuite(0x0096, "RSA", "RSA", "SEED", 16, 16, 0, "SHA-1", 20);
00485 
00486       case 0xC01C: // SRP_SHA_DSS_WITH_3DES_EDE_CBC_SHA
00487          return Ciphersuite(0xC01C, "DSA", "SRP_SHA", "3DES", 24, 8, 0, "SHA-1", 20);
00488 
00489       case 0xC01F: // SRP_SHA_DSS_WITH_AES_128_CBC_SHA
00490          return Ciphersuite(0xC01F, "DSA", "SRP_SHA", "AES-128", 16, 16, 0, "SHA-1", 20);
00491 
00492       case 0xC022: // SRP_SHA_DSS_WITH_AES_256_CBC_SHA
00493          return Ciphersuite(0xC022, "DSA", "SRP_SHA", "AES-256", 32, 16, 0, "SHA-1", 20);
00494 
00495       case 0xC01B: // SRP_SHA_RSA_WITH_3DES_EDE_CBC_SHA
00496          return Ciphersuite(0xC01B, "RSA", "SRP_SHA", "3DES", 24, 8, 0, "SHA-1", 20);
00497 
00498       case 0xC01E: // SRP_SHA_RSA_WITH_AES_128_CBC_SHA
00499          return Ciphersuite(0xC01E, "RSA", "SRP_SHA", "AES-128", 16, 16, 0, "SHA-1", 20);
00500 
00501       case 0xC021: // SRP_SHA_RSA_WITH_AES_256_CBC_SHA
00502          return Ciphersuite(0xC021, "RSA", "SRP_SHA", "AES-256", 32, 16, 0, "SHA-1", 20);
00503 
00504       case 0xC01A: // SRP_SHA_WITH_3DES_EDE_CBC_SHA
00505          return Ciphersuite(0xC01A, "", "SRP_SHA", "3DES", 24, 8, 0, "SHA-1", 20);
00506 
00507       case 0xC01D: // SRP_SHA_WITH_AES_128_CBC_SHA
00508          return Ciphersuite(0xC01D, "", "SRP_SHA", "AES-128", 16, 16, 0, "SHA-1", 20);
00509 
00510       case 0xC020: // SRP_SHA_WITH_AES_256_CBC_SHA
00511          return Ciphersuite(0xC020, "", "SRP_SHA", "AES-256", 32, 16, 0, "SHA-1", 20);
00512 
00513       }
00514 
00515    return Ciphersuite(); // some unknown ciphersuite
00516    }
00517 
00518 }
00519 
00520 }