added cipher suite name appendix
authorcm <cm@coretec.at>
Mon, 16 Dec 2013 23:07:22 +0000 (00:07 +0100)
committercm <cm@coretec.at>
Mon, 16 Dec 2013 23:07:49 +0000 (00:07 +0100)
src/applied-crypto-hardening.tex
src/cipher_suite_names.tex [new file with mode: 0644]
src/suite_names.tex [new file with mode: 0644]
tools/suitenames/Makefile [new file with mode: 0644]
tools/suitenames/README [new file with mode: 0644]
tools/suitenames/buildsuites.pl [new file with mode: 0644]
tools/suitenames/template.tex [new file with mode: 0644]

index d5206d9..5346fdb 100644 (file)
@@ -236,6 +236,7 @@ morekeywords={__global__, __device__},  %
 \input{further_research}
 \input{links}
 \input{suggested_reading}
+\input{cipher_suite_names}
 \input{acknowledgements}
 \input{reviewers}
 \input{bib}
diff --git a/src/cipher_suite_names.tex b/src/cipher_suite_names.tex
new file mode 100644 (file)
index 0000000..a4898b2
--- /dev/null
@@ -0,0 +1,9 @@
+\section{Cipher Suite Name Cross-Reference}
+\label{section:cipher_suite_names}
+
+This table shows the cipher suite names as IANA defined them, the
+names OpenSSL uses, and the respective codes.
+
+%% include auto-generated file
+\input{suite_names}
+
diff --git a/src/suite_names.tex b/src/suite_names.tex
new file mode 100644 (file)
index 0000000..39720fa
--- /dev/null
@@ -0,0 +1,650 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% AUTOMATICALLY GENERATED
+%% DO NOT EDIT
+%%
+%% This was generated by .../tools/suitenames
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+The list of IANA cipher suite names was retrieved from
+\url{https://www.iana.org/assignments/tls-parameters/tls-parameters-4.csv}
+on Tue Dec 17 00:04:42 2013.
+
+The list of OpenSSL Ciphers was generated with OpenSSL 1.0.1e 11 Feb 2013.
+
+\begin{tabular}{lll}
+  \toprule
+  Code & IANA Name & OpenSSL Name \\
+  \midrule
+  
+  \verb|0x00,0x00| & \verb|TLS_NULL_WITH_NULL_NULL| & \verb|| \\
+  
+  \verb|0x00,0x01| & \verb|TLS_RSA_WITH_NULL_MD5| & \verb|NULL-MD5| \\
+  
+  \verb|0x00,0x02| & \verb|TLS_RSA_WITH_NULL_SHA| & \verb|NULL-SHA| \\
+  
+  \verb|0x00,0x03| & \verb|TLS_RSA_EXPORT_WITH_RC4_40_MD5| & \verb|EXP-RC4-MD5| \\
+  
+  \verb|0x00,0x04| & \verb|TLS_RSA_WITH_RC4_128_MD5| & \verb|RC4-MD5| \\
+  
+  \verb|0x00,0x05| & \verb|TLS_RSA_WITH_RC4_128_SHA| & \verb|RC4-SHA| \\
+  
+  \verb|0x00,0x06| & \verb|TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5| & \verb|EXP-RC2-CBC-MD5| \\
+  
+  \verb|0x00,0x07| & \verb|TLS_RSA_WITH_IDEA_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x08| & \verb|TLS_RSA_EXPORT_WITH_DES40_CBC_SHA| & \verb|EXP-DES-CBC-SHA| \\
+  
+  \verb|0x00,0x09| & \verb|TLS_RSA_WITH_DES_CBC_SHA| & \verb|DES-CBC-SHA| \\
+  
+  \verb|0x00,0x0A| & \verb|TLS_RSA_WITH_3DES_EDE_CBC_SHA| & \verb|DES-CBC3-SHA| \\
+  
+  \verb|0x00,0x0B| & \verb|TLS_DH_DSS_EXPORT_WITH_DES40_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x0C| & \verb|TLS_DH_DSS_WITH_DES_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x0D| & \verb|TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x0E| & \verb|TLS_DH_RSA_EXPORT_WITH_DES40_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x0F| & \verb|TLS_DH_RSA_WITH_DES_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x10| & \verb|TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x11| & \verb|TLS_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA| & \verb|EXP-EDH-DSS-DES-CBC-SHA| \\
+  
+  \verb|0x00,0x12| & \verb|TLS_DHE_DSS_WITH_DES_CBC_SHA| & \verb|EDH-DSS-DES-CBC-SHA| \\
+  
+  \verb|0x00,0x13| & \verb|TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA| & \verb|EDH-DSS-DES-CBC3-SHA| \\
+  
+  \verb|0x00,0x14| & \verb|TLS_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA| & \verb|EXP-EDH-RSA-DES-CBC-SHA| \\
+  
+  \verb|0x00,0x15| & \verb|TLS_DHE_RSA_WITH_DES_CBC_SHA| & \verb|EDH-RSA-DES-CBC-SHA| \\
+  
+  \verb|0x00,0x16| & \verb|TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA| & \verb|EDH-RSA-DES-CBC3-SHA| \\
+  
+  \verb|0x00,0x17| & \verb|TLS_DH_anon_EXPORT_WITH_RC4_40_MD5| & \verb|EXP-ADH-RC4-MD5| \\
+  
+  \verb|0x00,0x18| & \verb|TLS_DH_anon_WITH_RC4_128_MD5| & \verb|ADH-RC4-MD5| \\
+  
+  \verb|0x00,0x19| & \verb|TLS_DH_anon_EXPORT_WITH_DES40_CBC_SHA| & \verb|EXP-ADH-DES-CBC-SHA| \\
+  
+  \verb|0x00,0x1A| & \verb|TLS_DH_anon_WITH_DES_CBC_SHA| & \verb|ADH-DES-CBC-SHA| \\
+  
+  \verb|0x00,0x1B| & \verb|TLS_DH_anon_WITH_3DES_EDE_CBC_SHA| & \verb|ADH-DES-CBC3-SHA| \\
+  
+  \verb|0x00,0x1E| & \verb|TLS_KRB5_WITH_DES_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x1F| & \verb|TLS_KRB5_WITH_3DES_EDE_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x20| & \verb|TLS_KRB5_WITH_RC4_128_SHA| & \verb|| \\
+  
+  \verb|0x00,0x21| & \verb|TLS_KRB5_WITH_IDEA_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x22| & \verb|TLS_KRB5_WITH_DES_CBC_MD5| & \verb|| \\
+  
+  \verb|0x00,0x23| & \verb|TLS_KRB5_WITH_3DES_EDE_CBC_MD5| & \verb|| \\
+  
+  \verb|0x00,0x24| & \verb|TLS_KRB5_WITH_RC4_128_MD5| & \verb|| \\
+  
+  \verb|0x00,0x25| & \verb|TLS_KRB5_WITH_IDEA_CBC_MD5| & \verb|| \\
+  
+  \verb|0x00,0x26| & \verb|TLS_KRB5_EXPORT_WITH_DES_CBC_40_SHA| & \verb|| \\
+  
+  \verb|0x00,0x27| & \verb|TLS_KRB5_EXPORT_WITH_RC2_CBC_40_SHA| & \verb|| \\
+  
+  \verb|0x00,0x28| & \verb|TLS_KRB5_EXPORT_WITH_RC4_40_SHA| & \verb|| \\
+  
+  \verb|0x00,0x29| & \verb|TLS_KRB5_EXPORT_WITH_DES_CBC_40_MD5| & \verb|| \\
+  
+  \verb|0x00,0x2A| & \verb|TLS_KRB5_EXPORT_WITH_RC2_CBC_40_MD5| & \verb|| \\
+  
+  \verb|0x00,0x2B| & \verb|TLS_KRB5_EXPORT_WITH_RC4_40_MD5| & \verb|| \\
+  
+  \verb|0x00,0x2C| & \verb|TLS_PSK_WITH_NULL_SHA| & \verb|| \\
+  
+  \verb|0x00,0x2D| & \verb|TLS_DHE_PSK_WITH_NULL_SHA| & \verb|| \\
+  
+  \verb|0x00,0x2E| & \verb|TLS_RSA_PSK_WITH_NULL_SHA| & \verb|| \\
+  
+  \verb|0x00,0x2F| & \verb|TLS_RSA_WITH_AES_128_CBC_SHA| & \verb|AES128-SHA| \\
+  
+  \verb|0x00,0x30| & \verb|TLS_DH_DSS_WITH_AES_128_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x31| & \verb|TLS_DH_RSA_WITH_AES_128_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x32| & \verb|TLS_DHE_DSS_WITH_AES_128_CBC_SHA| & \verb|DHE-DSS-AES128-SHA| \\
+  
+  \verb|0x00,0x33| & \verb|TLS_DHE_RSA_WITH_AES_128_CBC_SHA| & \verb|DHE-RSA-AES128-SHA| \\
+  
+  \verb|0x00,0x34| & \verb|TLS_DH_anon_WITH_AES_128_CBC_SHA| & \verb|ADH-AES128-SHA| \\
+  
+  \verb|0x00,0x35| & \verb|TLS_RSA_WITH_AES_256_CBC_SHA| & \verb|AES256-SHA| \\
+  
+  \verb|0x00,0x36| & \verb|TLS_DH_DSS_WITH_AES_256_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x37| & \verb|TLS_DH_RSA_WITH_AES_256_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x38| & \verb|TLS_DHE_DSS_WITH_AES_256_CBC_SHA| & \verb|DHE-DSS-AES256-SHA| \\
+  
+  \verb|0x00,0x39| & \verb|TLS_DHE_RSA_WITH_AES_256_CBC_SHA| & \verb|DHE-RSA-AES256-SHA| \\
+  
+  \verb|0x00,0x3A| & \verb|TLS_DH_anon_WITH_AES_256_CBC_SHA| & \verb|ADH-AES256-SHA| \\
+  
+  \verb|0x00,0x3B| & \verb|TLS_RSA_WITH_NULL_SHA256| & \verb|NULL-SHA256| \\
+  
+  \verb|0x00,0x3C| & \verb|TLS_RSA_WITH_AES_128_CBC_SHA256| & \verb|AES128-SHA256| \\
+  
+  \verb|0x00,0x3D| & \verb|TLS_RSA_WITH_AES_256_CBC_SHA256| & \verb|AES256-SHA256| \\
+  
+  \verb|0x00,0x3E| & \verb|TLS_DH_DSS_WITH_AES_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0x3F| & \verb|TLS_DH_RSA_WITH_AES_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0x40| & \verb|TLS_DHE_DSS_WITH_AES_128_CBC_SHA256| & \verb|DHE-DSS-AES128-SHA256| \\
+  
+  \verb|0x00,0x41| & \verb|TLS_RSA_WITH_CAMELLIA_128_CBC_SHA| & \verb|CAMELLIA128-SHA| \\
+  
+  \verb|0x00,0x42| & \verb|TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x43| & \verb|TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x44| & \verb|TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA| & \verb|DHE-DSS-CAMELLIA128-SHA| \\
+  
+  \verb|0x00,0x45| & \verb|TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA| & \verb|DHE-RSA-CAMELLIA128-SHA| \\
+  
+  \verb|0x00,0x46| & \verb|TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA| & \verb|ADH-CAMELLIA128-SHA| \\
+  
+  \verb|0x00,0x67| & \verb|TLS_DHE_RSA_WITH_AES_128_CBC_SHA256| & \verb|DHE-RSA-AES128-SHA256| \\
+  
+  \verb|0x00,0x68| & \verb|TLS_DH_DSS_WITH_AES_256_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0x69| & \verb|TLS_DH_RSA_WITH_AES_256_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0x6A| & \verb|TLS_DHE_DSS_WITH_AES_256_CBC_SHA256| & \verb|DHE-DSS-AES256-SHA256| \\
+  
+  \verb|0x00,0x6B| & \verb|TLS_DHE_RSA_WITH_AES_256_CBC_SHA256| & \verb|DHE-RSA-AES256-SHA256| \\
+  
+  \verb|0x00,0x6C| & \verb|TLS_DH_anon_WITH_AES_128_CBC_SHA256| & \verb|ADH-AES128-SHA256| \\
+  
+  \verb|0x00,0x6D| & \verb|TLS_DH_anon_WITH_AES_256_CBC_SHA256| & \verb|ADH-AES256-SHA256| \\
+  
+  \verb|0x00,0x84| & \verb|TLS_RSA_WITH_CAMELLIA_256_CBC_SHA| & \verb|CAMELLIA256-SHA| \\
+  
+  \verb|0x00,0x85| & \verb|TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x86| & \verb|TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x87| & \verb|TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA| & \verb|DHE-DSS-CAMELLIA256-SHA| \\
+  
+  \verb|0x00,0x88| & \verb|TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA| & \verb|DHE-RSA-CAMELLIA256-SHA| \\
+  
+  \verb|0x00,0x89| & \verb|TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA| & \verb|ADH-CAMELLIA256-SHA| \\
+  
+  \verb|0x00,0x8A| & \verb|TLS_PSK_WITH_RC4_128_SHA| & \verb|PSK-RC4-SHA| \\
+  
+  \verb|0x00,0x8B| & \verb|TLS_PSK_WITH_3DES_EDE_CBC_SHA| & \verb|PSK-3DES-EDE-CBC-SHA| \\
+  
+  \verb|0x00,0x8C| & \verb|TLS_PSK_WITH_AES_128_CBC_SHA| & \verb|PSK-AES128-CBC-SHA| \\
+  
+  \verb|0x00,0x8D| & \verb|TLS_PSK_WITH_AES_256_CBC_SHA| & \verb|PSK-AES256-CBC-SHA| \\
+  
+  \verb|0x00,0x8E| & \verb|TLS_DHE_PSK_WITH_RC4_128_SHA| & \verb|| \\
+  
+  \verb|0x00,0x8F| & \verb|TLS_DHE_PSK_WITH_3DES_EDE_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x90| & \verb|TLS_DHE_PSK_WITH_AES_128_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x91| & \verb|TLS_DHE_PSK_WITH_AES_256_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x92| & \verb|TLS_RSA_PSK_WITH_RC4_128_SHA| & \verb|| \\
+  
+  \verb|0x00,0x93| & \verb|TLS_RSA_PSK_WITH_3DES_EDE_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x94| & \verb|TLS_RSA_PSK_WITH_AES_128_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x95| & \verb|TLS_RSA_PSK_WITH_AES_256_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x96| & \verb|TLS_RSA_WITH_SEED_CBC_SHA| & \verb|SEED-SHA| \\
+  
+  \verb|0x00,0x97| & \verb|TLS_DH_DSS_WITH_SEED_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x98| & \verb|TLS_DH_RSA_WITH_SEED_CBC_SHA| & \verb|| \\
+  
+  \verb|0x00,0x99| & \verb|TLS_DHE_DSS_WITH_SEED_CBC_SHA| & \verb|DHE-DSS-SEED-SHA| \\
+  
+  \verb|0x00,0x9A| & \verb|TLS_DHE_RSA_WITH_SEED_CBC_SHA| & \verb|DHE-RSA-SEED-SHA| \\
+  
+  \verb|0x00,0x9B| & \verb|TLS_DH_anon_WITH_SEED_CBC_SHA| & \verb|ADH-SEED-SHA| \\
+  
+  \verb|0x00,0x9C| & \verb|TLS_RSA_WITH_AES_128_GCM_SHA256| & \verb|AES128-GCM-SHA256| \\
+  
+  \verb|0x00,0x9D| & \verb|TLS_RSA_WITH_AES_256_GCM_SHA384| & \verb|AES256-GCM-SHA384| \\
+  
+  \verb|0x00,0x9E| & \verb|TLS_DHE_RSA_WITH_AES_128_GCM_SHA256| & \verb|DHE-RSA-AES128-GCM-SHA256| \\
+  
+  \verb|0x00,0x9F| & \verb|TLS_DHE_RSA_WITH_AES_256_GCM_SHA384| & \verb|DHE-RSA-AES256-GCM-SHA384| \\
+  
+  \verb|0x00,0xA0| & \verb|TLS_DH_RSA_WITH_AES_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xA1| & \verb|TLS_DH_RSA_WITH_AES_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0x00,0xA2| & \verb|TLS_DHE_DSS_WITH_AES_128_GCM_SHA256| & \verb|DHE-DSS-AES128-GCM-SHA256| \\
+  
+  \verb|0x00,0xA3| & \verb|TLS_DHE_DSS_WITH_AES_256_GCM_SHA384| & \verb|DHE-DSS-AES256-GCM-SHA384| \\
+  
+  \verb|0x00,0xA4| & \verb|TLS_DH_DSS_WITH_AES_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xA5| & \verb|TLS_DH_DSS_WITH_AES_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0x00,0xA6| & \verb|TLS_DH_anon_WITH_AES_128_GCM_SHA256| & \verb|ADH-AES128-GCM-SHA256| \\
+  
+  \verb|0x00,0xA7| & \verb|TLS_DH_anon_WITH_AES_256_GCM_SHA384| & \verb|ADH-AES256-GCM-SHA384| \\
+  
+  \verb|0x00,0xA8| & \verb|TLS_PSK_WITH_AES_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xA9| & \verb|TLS_PSK_WITH_AES_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0x00,0xAA| & \verb|TLS_DHE_PSK_WITH_AES_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xAB| & \verb|TLS_DHE_PSK_WITH_AES_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0x00,0xAC| & \verb|TLS_RSA_PSK_WITH_AES_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xAD| & \verb|TLS_RSA_PSK_WITH_AES_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0x00,0xAE| & \verb|TLS_PSK_WITH_AES_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xAF| & \verb|TLS_PSK_WITH_AES_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0x00,0xB0| & \verb|TLS_PSK_WITH_NULL_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xB1| & \verb|TLS_PSK_WITH_NULL_SHA384| & \verb|| \\
+  
+  \verb|0x00,0xB2| & \verb|TLS_DHE_PSK_WITH_AES_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xB3| & \verb|TLS_DHE_PSK_WITH_AES_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0x00,0xB4| & \verb|TLS_DHE_PSK_WITH_NULL_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xB5| & \verb|TLS_DHE_PSK_WITH_NULL_SHA384| & \verb|| \\
+  
+  \verb|0x00,0xB6| & \verb|TLS_RSA_PSK_WITH_AES_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xB7| & \verb|TLS_RSA_PSK_WITH_AES_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0x00,0xB8| & \verb|TLS_RSA_PSK_WITH_NULL_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xB9| & \verb|TLS_RSA_PSK_WITH_NULL_SHA384| & \verb|| \\
+  
+  \verb|0x00,0xBA| & \verb|TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xBB| & \verb|TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xBC| & \verb|TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xBD| & \verb|TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xBE| & \verb|TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xBF| & \verb|TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xC0| & \verb|TLS_RSA_WITH_CAMELLIA_256_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xC1| & \verb|TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xC2| & \verb|TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xC3| & \verb|TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xC4| & \verb|TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xC5| & \verb|TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA256| & \verb|| \\
+  
+  \verb|0x00,0xFF| & \verb|TLS_EMPTY_RENEGOTIATION_INFO_SCSV| & \verb|| \\
+  
+  \verb|0xC0,0x01| & \verb|TLS_ECDH_ECDSA_WITH_NULL_SHA| & \verb|ECDH-ECDSA-NULL-SHA| \\
+  
+  \verb|0xC0,0x02| & \verb|TLS_ECDH_ECDSA_WITH_RC4_128_SHA| & \verb|ECDH-ECDSA-RC4-SHA| \\
+  
+  \verb|0xC0,0x03| & \verb|TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA| & \verb|ECDH-ECDSA-DES-CBC3-SHA| \\
+  
+  \verb|0xC0,0x04| & \verb|TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA| & \verb|ECDH-ECDSA-AES128-SHA| \\
+  
+  \verb|0xC0,0x05| & \verb|TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA| & \verb|ECDH-ECDSA-AES256-SHA| \\
+  
+  \verb|0xC0,0x06| & \verb|TLS_ECDHE_ECDSA_WITH_NULL_SHA| & \verb|ECDHE-ECDSA-NULL-SHA| \\
+  
+  \verb|0xC0,0x07| & \verb|TLS_ECDHE_ECDSA_WITH_RC4_128_SHA| & \verb|ECDHE-ECDSA-RC4-SHA| \\
+  
+  \verb|0xC0,0x08| & \verb|TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA| & \verb|ECDHE-ECDSA-DES-CBC3-SHA| \\
+  
+  \verb|0xC0,0x09| & \verb|TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA| & \verb|ECDHE-ECDSA-AES128-SHA| \\
+  
+  \verb|0xC0,0x0A| & \verb|TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA| & \verb|ECDHE-ECDSA-AES256-SHA| \\
+  
+  \verb|0xC0,0x0B| & \verb|TLS_ECDH_RSA_WITH_NULL_SHA| & \verb|ECDH-RSA-NULL-SHA| \\
+  
+  \verb|0xC0,0x0C| & \verb|TLS_ECDH_RSA_WITH_RC4_128_SHA| & \verb|ECDH-RSA-RC4-SHA| \\
+  
+  \verb|0xC0,0x0D| & \verb|TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA| & \verb|ECDH-RSA-DES-CBC3-SHA| \\
+  
+  \verb|0xC0,0x0E| & \verb|TLS_ECDH_RSA_WITH_AES_128_CBC_SHA| & \verb|ECDH-RSA-AES128-SHA| \\
+  
+  \verb|0xC0,0x0F| & \verb|TLS_ECDH_RSA_WITH_AES_256_CBC_SHA| & \verb|ECDH-RSA-AES256-SHA| \\
+  
+  \verb|0xC0,0x10| & \verb|TLS_ECDHE_RSA_WITH_NULL_SHA| & \verb|ECDHE-RSA-NULL-SHA| \\
+  
+  \verb|0xC0,0x11| & \verb|TLS_ECDHE_RSA_WITH_RC4_128_SHA| & \verb|ECDHE-RSA-RC4-SHA| \\
+  
+  \verb|0xC0,0x12| & \verb|TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA| & \verb|ECDHE-RSA-DES-CBC3-SHA| \\
+  
+  \verb|0xC0,0x13| & \verb|TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA| & \verb|ECDHE-RSA-AES128-SHA| \\
+  
+  \verb|0xC0,0x14| & \verb|TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA| & \verb|ECDHE-RSA-AES256-SHA| \\
+  
+  \verb|0xC0,0x15| & \verb|TLS_ECDH_anon_WITH_NULL_SHA| & \verb|AECDH-NULL-SHA| \\
+  
+  \verb|0xC0,0x16| & \verb|TLS_ECDH_anon_WITH_RC4_128_SHA| & \verb|AECDH-RC4-SHA| \\
+  
+  \verb|0xC0,0x17| & \verb|TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA| & \verb|AECDH-DES-CBC3-SHA| \\
+  
+  \verb|0xC0,0x18| & \verb|TLS_ECDH_anon_WITH_AES_128_CBC_SHA| & \verb|AECDH-AES128-SHA| \\
+  
+  \verb|0xC0,0x19| & \verb|TLS_ECDH_anon_WITH_AES_256_CBC_SHA| & \verb|AECDH-AES256-SHA| \\
+  
+  \verb|0xC0,0x1A| & \verb|TLS_SRP_SHA_WITH_3DES_EDE_CBC_SHA| & \verb|SRP-3DES-EDE-CBC-SHA| \\
+  
+  \verb|0xC0,0x1B| & \verb|TLS_SRP_SHA_RSA_WITH_3DES_EDE_CBC_SHA| & \verb|SRP-RSA-3DES-EDE-CBC-SHA| \\
+  
+  \verb|0xC0,0x1C| & \verb|TLS_SRP_SHA_DSS_WITH_3DES_EDE_CBC_SHA| & \verb|SRP-DSS-3DES-EDE-CBC-SHA| \\
+  
+  \verb|0xC0,0x1D| & \verb|TLS_SRP_SHA_WITH_AES_128_CBC_SHA| & \verb|SRP-AES-128-CBC-SHA| \\
+  
+  \verb|0xC0,0x1E| & \verb|TLS_SRP_SHA_RSA_WITH_AES_128_CBC_SHA| & \verb|SRP-RSA-AES-128-CBC-SHA| \\
+  
+  \verb|0xC0,0x1F| & \verb|TLS_SRP_SHA_DSS_WITH_AES_128_CBC_SHA| & \verb|SRP-DSS-AES-128-CBC-SHA| \\
+  
+  \verb|0xC0,0x20| & \verb|TLS_SRP_SHA_WITH_AES_256_CBC_SHA| & \verb|SRP-AES-256-CBC-SHA| \\
+  
+  \verb|0xC0,0x21| & \verb|TLS_SRP_SHA_RSA_WITH_AES_256_CBC_SHA| & \verb|SRP-RSA-AES-256-CBC-SHA| \\
+  
+  \verb|0xC0,0x22| & \verb|TLS_SRP_SHA_DSS_WITH_AES_256_CBC_SHA| & \verb|SRP-DSS-AES-256-CBC-SHA| \\
+  
+  \verb|0xC0,0x23| & \verb|TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256| & \verb|ECDHE-ECDSA-AES128-SHA256| \\
+  
+  \verb|0xC0,0x24| & \verb|TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384| & \verb|ECDHE-ECDSA-AES256-SHA384| \\
+  
+  \verb|0xC0,0x25| & \verb|TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256| & \verb|ECDH-ECDSA-AES128-SHA256| \\
+  
+  \verb|0xC0,0x26| & \verb|TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384| & \verb|ECDH-ECDSA-AES256-SHA384| \\
+  
+  \verb|0xC0,0x27| & \verb|TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256| & \verb|ECDHE-RSA-AES128-SHA256| \\
+  
+  \verb|0xC0,0x28| & \verb|TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384| & \verb|ECDHE-RSA-AES256-SHA384| \\
+  
+  \verb|0xC0,0x29| & \verb|TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256| & \verb|ECDH-RSA-AES128-SHA256| \\
+  
+  \verb|0xC0,0x2A| & \verb|TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384| & \verb|ECDH-RSA-AES256-SHA384| \\
+  
+  \verb|0xC0,0x2B| & \verb|TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256| & \verb|ECDHE-ECDSA-AES128-GCM-SHA256| \\
+  
+  \verb|0xC0,0x2C| & \verb|TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384| & \verb|ECDHE-ECDSA-AES256-GCM-SHA384| \\
+  
+  \verb|0xC0,0x2D| & \verb|TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256| & \verb|ECDH-ECDSA-AES128-GCM-SHA256| \\
+  
+  \verb|0xC0,0x2E| & \verb|TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384| & \verb|ECDH-ECDSA-AES256-GCM-SHA384| \\
+  
+  \verb|0xC0,0x2F| & \verb|TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256| & \verb|ECDHE-RSA-AES128-GCM-SHA256| \\
+  
+  \verb|0xC0,0x30| & \verb|TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384| & \verb|ECDHE-RSA-AES256-GCM-SHA384| \\
+  
+  \verb|0xC0,0x31| & \verb|TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256| & \verb|ECDH-RSA-AES128-GCM-SHA256| \\
+  
+  \verb|0xC0,0x32| & \verb|TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384| & \verb|ECDH-RSA-AES256-GCM-SHA384| \\
+  
+  \verb|0xC0,0x33| & \verb|TLS_ECDHE_PSK_WITH_RC4_128_SHA| & \verb|| \\
+  
+  \verb|0xC0,0x34| & \verb|TLS_ECDHE_PSK_WITH_3DES_EDE_CBC_SHA| & \verb|| \\
+  
+  \verb|0xC0,0x35| & \verb|TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA| & \verb|| \\
+  
+  \verb|0xC0,0x36| & \verb|TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA| & \verb|| \\
+  
+  \verb|0xC0,0x37| & \verb|TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x38| & \verb|TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x39| & \verb|TLS_ECDHE_PSK_WITH_NULL_SHA| & \verb|| \\
+  
+  \verb|0xC0,0x3A| & \verb|TLS_ECDHE_PSK_WITH_NULL_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x3B| & \verb|TLS_ECDHE_PSK_WITH_NULL_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x3C| & \verb|TLS_RSA_WITH_ARIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x3D| & \verb|TLS_RSA_WITH_ARIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x3E| & \verb|TLS_DH_DSS_WITH_ARIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x3F| & \verb|TLS_DH_DSS_WITH_ARIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x40| & \verb|TLS_DH_RSA_WITH_ARIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x41| & \verb|TLS_DH_RSA_WITH_ARIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x42| & \verb|TLS_DHE_DSS_WITH_ARIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x43| & \verb|TLS_DHE_DSS_WITH_ARIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x44| & \verb|TLS_DHE_RSA_WITH_ARIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x45| & \verb|TLS_DHE_RSA_WITH_ARIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x46| & \verb|TLS_DH_anon_WITH_ARIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x47| & \verb|TLS_DH_anon_WITH_ARIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x48| & \verb|TLS_ECDHE_ECDSA_WITH_ARIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x49| & \verb|TLS_ECDHE_ECDSA_WITH_ARIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x4A| & \verb|TLS_ECDH_ECDSA_WITH_ARIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x4B| & \verb|TLS_ECDH_ECDSA_WITH_ARIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x4C| & \verb|TLS_ECDHE_RSA_WITH_ARIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x4D| & \verb|TLS_ECDHE_RSA_WITH_ARIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x4E| & \verb|TLS_ECDH_RSA_WITH_ARIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x4F| & \verb|TLS_ECDH_RSA_WITH_ARIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x50| & \verb|TLS_RSA_WITH_ARIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x51| & \verb|TLS_RSA_WITH_ARIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x52| & \verb|TLS_DHE_RSA_WITH_ARIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x53| & \verb|TLS_DHE_RSA_WITH_ARIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x54| & \verb|TLS_DH_RSA_WITH_ARIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x55| & \verb|TLS_DH_RSA_WITH_ARIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x56| & \verb|TLS_DHE_DSS_WITH_ARIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x57| & \verb|TLS_DHE_DSS_WITH_ARIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x58| & \verb|TLS_DH_DSS_WITH_ARIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x59| & \verb|TLS_DH_DSS_WITH_ARIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x5A| & \verb|TLS_DH_anon_WITH_ARIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x5B| & \verb|TLS_DH_anon_WITH_ARIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x5C| & \verb|TLS_ECDHE_ECDSA_WITH_ARIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x5D| & \verb|TLS_ECDHE_ECDSA_WITH_ARIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x5E| & \verb|TLS_ECDH_ECDSA_WITH_ARIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x5F| & \verb|TLS_ECDH_ECDSA_WITH_ARIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x60| & \verb|TLS_ECDHE_RSA_WITH_ARIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x61| & \verb|TLS_ECDHE_RSA_WITH_ARIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x62| & \verb|TLS_ECDH_RSA_WITH_ARIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x63| & \verb|TLS_ECDH_RSA_WITH_ARIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x64| & \verb|TLS_PSK_WITH_ARIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x65| & \verb|TLS_PSK_WITH_ARIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x66| & \verb|TLS_DHE_PSK_WITH_ARIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x67| & \verb|TLS_DHE_PSK_WITH_ARIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x68| & \verb|TLS_RSA_PSK_WITH_ARIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x69| & \verb|TLS_RSA_PSK_WITH_ARIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x6A| & \verb|TLS_PSK_WITH_ARIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x6B| & \verb|TLS_PSK_WITH_ARIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x6C| & \verb|TLS_DHE_PSK_WITH_ARIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x6D| & \verb|TLS_DHE_PSK_WITH_ARIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x6E| & \verb|TLS_RSA_PSK_WITH_ARIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x6F| & \verb|TLS_RSA_PSK_WITH_ARIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x70| & \verb|TLS_ECDHE_PSK_WITH_ARIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x71| & \verb|TLS_ECDHE_PSK_WITH_ARIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x72| & \verb|TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x73| & \verb|TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x74| & \verb|TLS_ECDH_ECDSA_WITH_CAMELLIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x75| & \verb|TLS_ECDH_ECDSA_WITH_CAMELLIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x76| & \verb|TLS_ECDHE_RSA_WITH_CAMELLIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x77| & \verb|TLS_ECDHE_RSA_WITH_CAMELLIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x78| & \verb|TLS_ECDH_RSA_WITH_CAMELLIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x79| & \verb|TLS_ECDH_RSA_WITH_CAMELLIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x7A| & \verb|TLS_RSA_WITH_CAMELLIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x7B| & \verb|TLS_RSA_WITH_CAMELLIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x7C| & \verb|TLS_DHE_RSA_WITH_CAMELLIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x7D| & \verb|TLS_DHE_RSA_WITH_CAMELLIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x7E| & \verb|TLS_DH_RSA_WITH_CAMELLIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x7F| & \verb|TLS_DH_RSA_WITH_CAMELLIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x80| & \verb|TLS_DHE_DSS_WITH_CAMELLIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x81| & \verb|TLS_DHE_DSS_WITH_CAMELLIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x82| & \verb|TLS_DH_DSS_WITH_CAMELLIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x83| & \verb|TLS_DH_DSS_WITH_CAMELLIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x84| & \verb|TLS_DH_anon_WITH_CAMELLIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x85| & \verb|TLS_DH_anon_WITH_CAMELLIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x86| & \verb|TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x87| & \verb|TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x88| & \verb|TLS_ECDH_ECDSA_WITH_CAMELLIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x89| & \verb|TLS_ECDH_ECDSA_WITH_CAMELLIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x8A| & \verb|TLS_ECDHE_RSA_WITH_CAMELLIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x8B| & \verb|TLS_ECDHE_RSA_WITH_CAMELLIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x8C| & \verb|TLS_ECDH_RSA_WITH_CAMELLIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x8D| & \verb|TLS_ECDH_RSA_WITH_CAMELLIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x8E| & \verb|TLS_PSK_WITH_CAMELLIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x8F| & \verb|TLS_PSK_WITH_CAMELLIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x90| & \verb|TLS_DHE_PSK_WITH_CAMELLIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x91| & \verb|TLS_DHE_PSK_WITH_CAMELLIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x92| & \verb|TLS_RSA_PSK_WITH_CAMELLIA_128_GCM_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x93| & \verb|TLS_RSA_PSK_WITH_CAMELLIA_256_GCM_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x94| & \verb|TLS_PSK_WITH_CAMELLIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x95| & \verb|TLS_PSK_WITH_CAMELLIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x96| & \verb|TLS_DHE_PSK_WITH_CAMELLIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x97| & \verb|TLS_DHE_PSK_WITH_CAMELLIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x98| & \verb|TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x99| & \verb|TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x9A| & \verb|TLS_ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256| & \verb|| \\
+  
+  \verb|0xC0,0x9B| & \verb|TLS_ECDHE_PSK_WITH_CAMELLIA_256_CBC_SHA384| & \verb|| \\
+  
+  \verb|0xC0,0x9C| & \verb|TLS_RSA_WITH_AES_128_CCM| & \verb|| \\
+  
+  \verb|0xC0,0x9D| & \verb|TLS_RSA_WITH_AES_256_CCM| & \verb|| \\
+  
+  \verb|0xC0,0x9E| & \verb|TLS_DHE_RSA_WITH_AES_128_CCM| & \verb|| \\
+  
+  \verb|0xC0,0x9F| & \verb|TLS_DHE_RSA_WITH_AES_256_CCM| & \verb|| \\
+  
+  \verb|0xC0,0xA0| & \verb|TLS_RSA_WITH_AES_128_CCM_8| & \verb|| \\
+  
+  \verb|0xC0,0xA1| & \verb|TLS_RSA_WITH_AES_256_CCM_8| & \verb|| \\
+  
+  \verb|0xC0,0xA2| & \verb|TLS_DHE_RSA_WITH_AES_128_CCM_8| & \verb|| \\
+  
+  \verb|0xC0,0xA3| & \verb|TLS_DHE_RSA_WITH_AES_256_CCM_8| & \verb|| \\
+  
+  \verb|0xC0,0xA4| & \verb|TLS_PSK_WITH_AES_128_CCM| & \verb|| \\
+  
+  \verb|0xC0,0xA5| & \verb|TLS_PSK_WITH_AES_256_CCM| & \verb|| \\
+  
+  \verb|0xC0,0xA6| & \verb|TLS_DHE_PSK_WITH_AES_128_CCM| & \verb|| \\
+  
+  \verb|0xC0,0xA7| & \verb|TLS_DHE_PSK_WITH_AES_256_CCM| & \verb|| \\
+  
+  \verb|0xC0,0xA8| & \verb|TLS_PSK_WITH_AES_128_CCM_8| & \verb|| \\
+  
+  \verb|0xC0,0xA9| & \verb|TLS_PSK_WITH_AES_256_CCM_8| & \verb|| \\
+  
+  \verb|0xC0,0xAA| & \verb|TLS_PSK_DHE_WITH_AES_128_CCM_8| & \verb|| \\
+  
+  \verb|0xC0,0xAB| & \verb|TLS_PSK_DHE_WITH_AES_256_CCM_8| & \verb|| \\
+  
+  \bottomrule
+\end{tabular}
diff --git a/tools/suitenames/Makefile b/tools/suitenames/Makefile
new file mode 100644 (file)
index 0000000..078e6df
--- /dev/null
@@ -0,0 +1,13 @@
+all: suite_names.tex
+
+.DELETE_ON_ERROR:
+
+suite_names.tex: tls-parameters-4.csv openssl-ciphers.txt template.tex buildsuites.pl
+       perl buildsuites.pl template.tex tls-parameters-4.csv openssl-ciphers.txt > $@
+
+tls-parameters-4.csv:
+       wget https://www.iana.org/assignments/tls-parameters/tls-parameters-4.csv
+
+openssl-ciphers.txt:
+       (openssl ciphers -V 'ALL:COMPLEMENTOFALL'; openssl version) > $@
+
diff --git a/tools/suitenames/README b/tools/suitenames/README
new file mode 100644 (file)
index 0000000..4665955
--- /dev/null
@@ -0,0 +1,2 @@
+This Makefile builds a comparison table of IANA and OpenSSL
+ciphersuite names.
diff --git a/tools/suitenames/buildsuites.pl b/tools/suitenames/buildsuites.pl
new file mode 100644 (file)
index 0000000..26448ac
--- /dev/null
@@ -0,0 +1,62 @@
+#!/usr/bin/perl -w
+use strict;
+use autodie;
+use Text::CSV;
+use Template;
+
+my $usage = "usage: $0 template csv-file openssl-file\n";
+
+my $template = shift;
+my $iana_csv = shift;
+my $openssl_txt = shift;
+
+my $ossl_version;
+
+
+my $iana = parse_csv($iana_csv);
+#print Dumper($iana);
+my $ossl = parse_openssl($openssl_txt);
+#print Dumper($ossl);
+
+my @merged;
+for my $id (sort keys {map { $_ => 1 } (keys %$iana, keys %$ossl)}) {
+  push(@merged, [$id, $iana->{$id}, $ossl->{$id}]);
+}
+
+my $tt = Template->new();
+$tt->process($template, {table => \@merged,
+                        openssl_version => $ossl_version,
+                        timestamp => scalar localtime time,
+                       });
+
+sub parse_csv {
+  my $fn = shift;
+
+  my $d = {};
+
+  my $csv = Text::CSV->new({binary => 1})
+    or die "CSV open error: " . Text::CSV->error_diag();
+  open my $fh, "<:encoding(utf8)", $fn or die "$fn: $!";
+  while(my $row = $csv->getline($fh)) {
+    $row->[1] =~ /^TLS_/ or next;
+    $d->{$row->[0]} = $row->[1];
+  }
+  $d;
+}
+sub parse_openssl {
+  my $fn = shift;
+
+  my $d = {};
+  open(F, "<$fn");
+  while(<F>) {
+    chomp;
+    if(/^OpenSSL/) {
+      $ossl_version = $_;
+      next;
+    }
+    /^\s*([\da-fx,]+)\s*-\s*(\S+)\s/i || next;
+    $d->{$1} = $2;
+  }
+  close(F);
+  $d;
+}
diff --git a/tools/suitenames/template.tex b/tools/suitenames/template.tex
new file mode 100644 (file)
index 0000000..eb567bc
--- /dev/null
@@ -0,0 +1,24 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% AUTOMATICALLY GENERATED
+%% DO NOT EDIT
+%%
+%% This was generated by .../tools/suitenames
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+The list of IANA cipher suite names was retrieved from
+\url{https://www.iana.org/assignments/tls-parameters/tls-parameters-4.csv}
+on [% timestamp %].
+
+The list of OpenSSL Ciphers was generated with [% openssl_version %].
+
+\begin{tabular}{lll}
+  \toprule
+  Code & IANA Name & OpenSSL Name \\
+  \midrule
+  [% FOREACH row IN table %]
+  \verb|[% row.0 %]| & \verb|[% row.1 %]| & \verb|[% row.2 %]| \\
+  [% END %]
+  \bottomrule
+\end{tabular}