blob: c9a0cf3b422c698dd66f753813afc04c20a5dcd8 [file] [log] [blame]
Scott Bakereee8dd82019-09-24 12:52:34 -07001// Copyright 2017 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5package http2
6
7// A list of the possible cipher suite ids. Taken from
8// https://www.iana.org/assignments/tls-parameters/tls-parameters.txt
9
10const (
11 cipher_TLS_NULL_WITH_NULL_NULL uint16 = 0x0000
12 cipher_TLS_RSA_WITH_NULL_MD5 uint16 = 0x0001
13 cipher_TLS_RSA_WITH_NULL_SHA uint16 = 0x0002
14 cipher_TLS_RSA_EXPORT_WITH_RC4_40_MD5 uint16 = 0x0003
15 cipher_TLS_RSA_WITH_RC4_128_MD5 uint16 = 0x0004
16 cipher_TLS_RSA_WITH_RC4_128_SHA uint16 = 0x0005
17 cipher_TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5 uint16 = 0x0006
18 cipher_TLS_RSA_WITH_IDEA_CBC_SHA uint16 = 0x0007
19 cipher_TLS_RSA_EXPORT_WITH_DES40_CBC_SHA uint16 = 0x0008
20 cipher_TLS_RSA_WITH_DES_CBC_SHA uint16 = 0x0009
21 cipher_TLS_RSA_WITH_3DES_EDE_CBC_SHA uint16 = 0x000A
22 cipher_TLS_DH_DSS_EXPORT_WITH_DES40_CBC_SHA uint16 = 0x000B
23 cipher_TLS_DH_DSS_WITH_DES_CBC_SHA uint16 = 0x000C
24 cipher_TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA uint16 = 0x000D
25 cipher_TLS_DH_RSA_EXPORT_WITH_DES40_CBC_SHA uint16 = 0x000E
26 cipher_TLS_DH_RSA_WITH_DES_CBC_SHA uint16 = 0x000F
27 cipher_TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA uint16 = 0x0010
28 cipher_TLS_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA uint16 = 0x0011
29 cipher_TLS_DHE_DSS_WITH_DES_CBC_SHA uint16 = 0x0012
30 cipher_TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA uint16 = 0x0013
31 cipher_TLS_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA uint16 = 0x0014
32 cipher_TLS_DHE_RSA_WITH_DES_CBC_SHA uint16 = 0x0015
33 cipher_TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA uint16 = 0x0016
34 cipher_TLS_DH_anon_EXPORT_WITH_RC4_40_MD5 uint16 = 0x0017
35 cipher_TLS_DH_anon_WITH_RC4_128_MD5 uint16 = 0x0018
36 cipher_TLS_DH_anon_EXPORT_WITH_DES40_CBC_SHA uint16 = 0x0019
37 cipher_TLS_DH_anon_WITH_DES_CBC_SHA uint16 = 0x001A
38 cipher_TLS_DH_anon_WITH_3DES_EDE_CBC_SHA uint16 = 0x001B
39 // Reserved uint16 = 0x001C-1D
40 cipher_TLS_KRB5_WITH_DES_CBC_SHA uint16 = 0x001E
41 cipher_TLS_KRB5_WITH_3DES_EDE_CBC_SHA uint16 = 0x001F
42 cipher_TLS_KRB5_WITH_RC4_128_SHA uint16 = 0x0020
43 cipher_TLS_KRB5_WITH_IDEA_CBC_SHA uint16 = 0x0021
44 cipher_TLS_KRB5_WITH_DES_CBC_MD5 uint16 = 0x0022
45 cipher_TLS_KRB5_WITH_3DES_EDE_CBC_MD5 uint16 = 0x0023
46 cipher_TLS_KRB5_WITH_RC4_128_MD5 uint16 = 0x0024
47 cipher_TLS_KRB5_WITH_IDEA_CBC_MD5 uint16 = 0x0025
48 cipher_TLS_KRB5_EXPORT_WITH_DES_CBC_40_SHA uint16 = 0x0026
49 cipher_TLS_KRB5_EXPORT_WITH_RC2_CBC_40_SHA uint16 = 0x0027
50 cipher_TLS_KRB5_EXPORT_WITH_RC4_40_SHA uint16 = 0x0028
51 cipher_TLS_KRB5_EXPORT_WITH_DES_CBC_40_MD5 uint16 = 0x0029
52 cipher_TLS_KRB5_EXPORT_WITH_RC2_CBC_40_MD5 uint16 = 0x002A
53 cipher_TLS_KRB5_EXPORT_WITH_RC4_40_MD5 uint16 = 0x002B
54 cipher_TLS_PSK_WITH_NULL_SHA uint16 = 0x002C
55 cipher_TLS_DHE_PSK_WITH_NULL_SHA uint16 = 0x002D
56 cipher_TLS_RSA_PSK_WITH_NULL_SHA uint16 = 0x002E
57 cipher_TLS_RSA_WITH_AES_128_CBC_SHA uint16 = 0x002F
58 cipher_TLS_DH_DSS_WITH_AES_128_CBC_SHA uint16 = 0x0030
59 cipher_TLS_DH_RSA_WITH_AES_128_CBC_SHA uint16 = 0x0031
60 cipher_TLS_DHE_DSS_WITH_AES_128_CBC_SHA uint16 = 0x0032
61 cipher_TLS_DHE_RSA_WITH_AES_128_CBC_SHA uint16 = 0x0033
62 cipher_TLS_DH_anon_WITH_AES_128_CBC_SHA uint16 = 0x0034
63 cipher_TLS_RSA_WITH_AES_256_CBC_SHA uint16 = 0x0035
64 cipher_TLS_DH_DSS_WITH_AES_256_CBC_SHA uint16 = 0x0036
65 cipher_TLS_DH_RSA_WITH_AES_256_CBC_SHA uint16 = 0x0037
66 cipher_TLS_DHE_DSS_WITH_AES_256_CBC_SHA uint16 = 0x0038
67 cipher_TLS_DHE_RSA_WITH_AES_256_CBC_SHA uint16 = 0x0039
68 cipher_TLS_DH_anon_WITH_AES_256_CBC_SHA uint16 = 0x003A
69 cipher_TLS_RSA_WITH_NULL_SHA256 uint16 = 0x003B
70 cipher_TLS_RSA_WITH_AES_128_CBC_SHA256 uint16 = 0x003C
71 cipher_TLS_RSA_WITH_AES_256_CBC_SHA256 uint16 = 0x003D
72 cipher_TLS_DH_DSS_WITH_AES_128_CBC_SHA256 uint16 = 0x003E
73 cipher_TLS_DH_RSA_WITH_AES_128_CBC_SHA256 uint16 = 0x003F
74 cipher_TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 uint16 = 0x0040
75 cipher_TLS_RSA_WITH_CAMELLIA_128_CBC_SHA uint16 = 0x0041
76 cipher_TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA uint16 = 0x0042
77 cipher_TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA uint16 = 0x0043
78 cipher_TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA uint16 = 0x0044
79 cipher_TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA uint16 = 0x0045
80 cipher_TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA uint16 = 0x0046
81 // Reserved uint16 = 0x0047-4F
82 // Reserved uint16 = 0x0050-58
83 // Reserved uint16 = 0x0059-5C
84 // Unassigned uint16 = 0x005D-5F
85 // Reserved uint16 = 0x0060-66
86 cipher_TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 uint16 = 0x0067
87 cipher_TLS_DH_DSS_WITH_AES_256_CBC_SHA256 uint16 = 0x0068
88 cipher_TLS_DH_RSA_WITH_AES_256_CBC_SHA256 uint16 = 0x0069
89 cipher_TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 uint16 = 0x006A
90 cipher_TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 uint16 = 0x006B
91 cipher_TLS_DH_anon_WITH_AES_128_CBC_SHA256 uint16 = 0x006C
92 cipher_TLS_DH_anon_WITH_AES_256_CBC_SHA256 uint16 = 0x006D
93 // Unassigned uint16 = 0x006E-83
94 cipher_TLS_RSA_WITH_CAMELLIA_256_CBC_SHA uint16 = 0x0084
95 cipher_TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA uint16 = 0x0085
96 cipher_TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA uint16 = 0x0086
97 cipher_TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA uint16 = 0x0087
98 cipher_TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA uint16 = 0x0088
99 cipher_TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA uint16 = 0x0089
100 cipher_TLS_PSK_WITH_RC4_128_SHA uint16 = 0x008A
101 cipher_TLS_PSK_WITH_3DES_EDE_CBC_SHA uint16 = 0x008B
102 cipher_TLS_PSK_WITH_AES_128_CBC_SHA uint16 = 0x008C
103 cipher_TLS_PSK_WITH_AES_256_CBC_SHA uint16 = 0x008D
104 cipher_TLS_DHE_PSK_WITH_RC4_128_SHA uint16 = 0x008E
105 cipher_TLS_DHE_PSK_WITH_3DES_EDE_CBC_SHA uint16 = 0x008F
106 cipher_TLS_DHE_PSK_WITH_AES_128_CBC_SHA uint16 = 0x0090
107 cipher_TLS_DHE_PSK_WITH_AES_256_CBC_SHA uint16 = 0x0091
108 cipher_TLS_RSA_PSK_WITH_RC4_128_SHA uint16 = 0x0092
109 cipher_TLS_RSA_PSK_WITH_3DES_EDE_CBC_SHA uint16 = 0x0093
110 cipher_TLS_RSA_PSK_WITH_AES_128_CBC_SHA uint16 = 0x0094
111 cipher_TLS_RSA_PSK_WITH_AES_256_CBC_SHA uint16 = 0x0095
112 cipher_TLS_RSA_WITH_SEED_CBC_SHA uint16 = 0x0096
113 cipher_TLS_DH_DSS_WITH_SEED_CBC_SHA uint16 = 0x0097
114 cipher_TLS_DH_RSA_WITH_SEED_CBC_SHA uint16 = 0x0098
115 cipher_TLS_DHE_DSS_WITH_SEED_CBC_SHA uint16 = 0x0099
116 cipher_TLS_DHE_RSA_WITH_SEED_CBC_SHA uint16 = 0x009A
117 cipher_TLS_DH_anon_WITH_SEED_CBC_SHA uint16 = 0x009B
118 cipher_TLS_RSA_WITH_AES_128_GCM_SHA256 uint16 = 0x009C
119 cipher_TLS_RSA_WITH_AES_256_GCM_SHA384 uint16 = 0x009D
120 cipher_TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 uint16 = 0x009E
121 cipher_TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 uint16 = 0x009F
122 cipher_TLS_DH_RSA_WITH_AES_128_GCM_SHA256 uint16 = 0x00A0
123 cipher_TLS_DH_RSA_WITH_AES_256_GCM_SHA384 uint16 = 0x00A1
124 cipher_TLS_DHE_DSS_WITH_AES_128_GCM_SHA256 uint16 = 0x00A2
125 cipher_TLS_DHE_DSS_WITH_AES_256_GCM_SHA384 uint16 = 0x00A3
126 cipher_TLS_DH_DSS_WITH_AES_128_GCM_SHA256 uint16 = 0x00A4
127 cipher_TLS_DH_DSS_WITH_AES_256_GCM_SHA384 uint16 = 0x00A5
128 cipher_TLS_DH_anon_WITH_AES_128_GCM_SHA256 uint16 = 0x00A6
129 cipher_TLS_DH_anon_WITH_AES_256_GCM_SHA384 uint16 = 0x00A7
130 cipher_TLS_PSK_WITH_AES_128_GCM_SHA256 uint16 = 0x00A8
131 cipher_TLS_PSK_WITH_AES_256_GCM_SHA384 uint16 = 0x00A9
132 cipher_TLS_DHE_PSK_WITH_AES_128_GCM_SHA256 uint16 = 0x00AA
133 cipher_TLS_DHE_PSK_WITH_AES_256_GCM_SHA384 uint16 = 0x00AB
134 cipher_TLS_RSA_PSK_WITH_AES_128_GCM_SHA256 uint16 = 0x00AC
135 cipher_TLS_RSA_PSK_WITH_AES_256_GCM_SHA384 uint16 = 0x00AD
136 cipher_TLS_PSK_WITH_AES_128_CBC_SHA256 uint16 = 0x00AE
137 cipher_TLS_PSK_WITH_AES_256_CBC_SHA384 uint16 = 0x00AF
138 cipher_TLS_PSK_WITH_NULL_SHA256 uint16 = 0x00B0
139 cipher_TLS_PSK_WITH_NULL_SHA384 uint16 = 0x00B1
140 cipher_TLS_DHE_PSK_WITH_AES_128_CBC_SHA256 uint16 = 0x00B2
141 cipher_TLS_DHE_PSK_WITH_AES_256_CBC_SHA384 uint16 = 0x00B3
142 cipher_TLS_DHE_PSK_WITH_NULL_SHA256 uint16 = 0x00B4
143 cipher_TLS_DHE_PSK_WITH_NULL_SHA384 uint16 = 0x00B5
144 cipher_TLS_RSA_PSK_WITH_AES_128_CBC_SHA256 uint16 = 0x00B6
145 cipher_TLS_RSA_PSK_WITH_AES_256_CBC_SHA384 uint16 = 0x00B7
146 cipher_TLS_RSA_PSK_WITH_NULL_SHA256 uint16 = 0x00B8
147 cipher_TLS_RSA_PSK_WITH_NULL_SHA384 uint16 = 0x00B9
148 cipher_TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256 uint16 = 0x00BA
149 cipher_TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA256 uint16 = 0x00BB
150 cipher_TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA256 uint16 = 0x00BC
151 cipher_TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA256 uint16 = 0x00BD
152 cipher_TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256 uint16 = 0x00BE
153 cipher_TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA256 uint16 = 0x00BF
154 cipher_TLS_RSA_WITH_CAMELLIA_256_CBC_SHA256 uint16 = 0x00C0
155 cipher_TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA256 uint16 = 0x00C1
156 cipher_TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA256 uint16 = 0x00C2
157 cipher_TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA256 uint16 = 0x00C3
158 cipher_TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA256 uint16 = 0x00C4
159 cipher_TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA256 uint16 = 0x00C5
160 // Unassigned uint16 = 0x00C6-FE
161 cipher_TLS_EMPTY_RENEGOTIATION_INFO_SCSV uint16 = 0x00FF
162 // Unassigned uint16 = 0x01-55,*
163 cipher_TLS_FALLBACK_SCSV uint16 = 0x5600
164 // Unassigned uint16 = 0x5601 - 0xC000
165 cipher_TLS_ECDH_ECDSA_WITH_NULL_SHA uint16 = 0xC001
166 cipher_TLS_ECDH_ECDSA_WITH_RC4_128_SHA uint16 = 0xC002
167 cipher_TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA uint16 = 0xC003
168 cipher_TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA uint16 = 0xC004
169 cipher_TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA uint16 = 0xC005
170 cipher_TLS_ECDHE_ECDSA_WITH_NULL_SHA uint16 = 0xC006
171 cipher_TLS_ECDHE_ECDSA_WITH_RC4_128_SHA uint16 = 0xC007
172 cipher_TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA uint16 = 0xC008
173 cipher_TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA uint16 = 0xC009
174 cipher_TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA uint16 = 0xC00A
175 cipher_TLS_ECDH_RSA_WITH_NULL_SHA uint16 = 0xC00B
176 cipher_TLS_ECDH_RSA_WITH_RC4_128_SHA uint16 = 0xC00C
177 cipher_TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA uint16 = 0xC00D
178 cipher_TLS_ECDH_RSA_WITH_AES_128_CBC_SHA uint16 = 0xC00E
179 cipher_TLS_ECDH_RSA_WITH_AES_256_CBC_SHA uint16 = 0xC00F
180 cipher_TLS_ECDHE_RSA_WITH_NULL_SHA uint16 = 0xC010
181 cipher_TLS_ECDHE_RSA_WITH_RC4_128_SHA uint16 = 0xC011
182 cipher_TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA uint16 = 0xC012
183 cipher_TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA uint16 = 0xC013
184 cipher_TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA uint16 = 0xC014
185 cipher_TLS_ECDH_anon_WITH_NULL_SHA uint16 = 0xC015
186 cipher_TLS_ECDH_anon_WITH_RC4_128_SHA uint16 = 0xC016
187 cipher_TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA uint16 = 0xC017
188 cipher_TLS_ECDH_anon_WITH_AES_128_CBC_SHA uint16 = 0xC018
189 cipher_TLS_ECDH_anon_WITH_AES_256_CBC_SHA uint16 = 0xC019
190 cipher_TLS_SRP_SHA_WITH_3DES_EDE_CBC_SHA uint16 = 0xC01A
191 cipher_TLS_SRP_SHA_RSA_WITH_3DES_EDE_CBC_SHA uint16 = 0xC01B
192 cipher_TLS_SRP_SHA_DSS_WITH_3DES_EDE_CBC_SHA uint16 = 0xC01C
193 cipher_TLS_SRP_SHA_WITH_AES_128_CBC_SHA uint16 = 0xC01D
194 cipher_TLS_SRP_SHA_RSA_WITH_AES_128_CBC_SHA uint16 = 0xC01E
195 cipher_TLS_SRP_SHA_DSS_WITH_AES_128_CBC_SHA uint16 = 0xC01F
196 cipher_TLS_SRP_SHA_WITH_AES_256_CBC_SHA uint16 = 0xC020
197 cipher_TLS_SRP_SHA_RSA_WITH_AES_256_CBC_SHA uint16 = 0xC021
198 cipher_TLS_SRP_SHA_DSS_WITH_AES_256_CBC_SHA uint16 = 0xC022
199 cipher_TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 uint16 = 0xC023
200 cipher_TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 uint16 = 0xC024
201 cipher_TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256 uint16 = 0xC025
202 cipher_TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384 uint16 = 0xC026
203 cipher_TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 uint16 = 0xC027
204 cipher_TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 uint16 = 0xC028
205 cipher_TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256 uint16 = 0xC029
206 cipher_TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384 uint16 = 0xC02A
207 cipher_TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 uint16 = 0xC02B
208 cipher_TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 uint16 = 0xC02C
209 cipher_TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256 uint16 = 0xC02D
210 cipher_TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384 uint16 = 0xC02E
211 cipher_TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 uint16 = 0xC02F
212 cipher_TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 uint16 = 0xC030
213 cipher_TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256 uint16 = 0xC031
214 cipher_TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384 uint16 = 0xC032
215 cipher_TLS_ECDHE_PSK_WITH_RC4_128_SHA uint16 = 0xC033
216 cipher_TLS_ECDHE_PSK_WITH_3DES_EDE_CBC_SHA uint16 = 0xC034
217 cipher_TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA uint16 = 0xC035
218 cipher_TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA uint16 = 0xC036
219 cipher_TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA256 uint16 = 0xC037
220 cipher_TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA384 uint16 = 0xC038
221 cipher_TLS_ECDHE_PSK_WITH_NULL_SHA uint16 = 0xC039
222 cipher_TLS_ECDHE_PSK_WITH_NULL_SHA256 uint16 = 0xC03A
223 cipher_TLS_ECDHE_PSK_WITH_NULL_SHA384 uint16 = 0xC03B
224 cipher_TLS_RSA_WITH_ARIA_128_CBC_SHA256 uint16 = 0xC03C
225 cipher_TLS_RSA_WITH_ARIA_256_CBC_SHA384 uint16 = 0xC03D
226 cipher_TLS_DH_DSS_WITH_ARIA_128_CBC_SHA256 uint16 = 0xC03E
227 cipher_TLS_DH_DSS_WITH_ARIA_256_CBC_SHA384 uint16 = 0xC03F
228 cipher_TLS_DH_RSA_WITH_ARIA_128_CBC_SHA256 uint16 = 0xC040
229 cipher_TLS_DH_RSA_WITH_ARIA_256_CBC_SHA384 uint16 = 0xC041
230 cipher_TLS_DHE_DSS_WITH_ARIA_128_CBC_SHA256 uint16 = 0xC042
231 cipher_TLS_DHE_DSS_WITH_ARIA_256_CBC_SHA384 uint16 = 0xC043
232 cipher_TLS_DHE_RSA_WITH_ARIA_128_CBC_SHA256 uint16 = 0xC044
233 cipher_TLS_DHE_RSA_WITH_ARIA_256_CBC_SHA384 uint16 = 0xC045
234 cipher_TLS_DH_anon_WITH_ARIA_128_CBC_SHA256 uint16 = 0xC046
235 cipher_TLS_DH_anon_WITH_ARIA_256_CBC_SHA384 uint16 = 0xC047
236 cipher_TLS_ECDHE_ECDSA_WITH_ARIA_128_CBC_SHA256 uint16 = 0xC048
237 cipher_TLS_ECDHE_ECDSA_WITH_ARIA_256_CBC_SHA384 uint16 = 0xC049
238 cipher_TLS_ECDH_ECDSA_WITH_ARIA_128_CBC_SHA256 uint16 = 0xC04A
239 cipher_TLS_ECDH_ECDSA_WITH_ARIA_256_CBC_SHA384 uint16 = 0xC04B
240 cipher_TLS_ECDHE_RSA_WITH_ARIA_128_CBC_SHA256 uint16 = 0xC04C
241 cipher_TLS_ECDHE_RSA_WITH_ARIA_256_CBC_SHA384 uint16 = 0xC04D
242 cipher_TLS_ECDH_RSA_WITH_ARIA_128_CBC_SHA256 uint16 = 0xC04E
243 cipher_TLS_ECDH_RSA_WITH_ARIA_256_CBC_SHA384 uint16 = 0xC04F
244 cipher_TLS_RSA_WITH_ARIA_128_GCM_SHA256 uint16 = 0xC050
245 cipher_TLS_RSA_WITH_ARIA_256_GCM_SHA384 uint16 = 0xC051
246 cipher_TLS_DHE_RSA_WITH_ARIA_128_GCM_SHA256 uint16 = 0xC052
247 cipher_TLS_DHE_RSA_WITH_ARIA_256_GCM_SHA384 uint16 = 0xC053
248 cipher_TLS_DH_RSA_WITH_ARIA_128_GCM_SHA256 uint16 = 0xC054
249 cipher_TLS_DH_RSA_WITH_ARIA_256_GCM_SHA384 uint16 = 0xC055
250 cipher_TLS_DHE_DSS_WITH_ARIA_128_GCM_SHA256 uint16 = 0xC056
251 cipher_TLS_DHE_DSS_WITH_ARIA_256_GCM_SHA384 uint16 = 0xC057
252 cipher_TLS_DH_DSS_WITH_ARIA_128_GCM_SHA256 uint16 = 0xC058
253 cipher_TLS_DH_DSS_WITH_ARIA_256_GCM_SHA384 uint16 = 0xC059
254 cipher_TLS_DH_anon_WITH_ARIA_128_GCM_SHA256 uint16 = 0xC05A
255 cipher_TLS_DH_anon_WITH_ARIA_256_GCM_SHA384 uint16 = 0xC05B
256 cipher_TLS_ECDHE_ECDSA_WITH_ARIA_128_GCM_SHA256 uint16 = 0xC05C
257 cipher_TLS_ECDHE_ECDSA_WITH_ARIA_256_GCM_SHA384 uint16 = 0xC05D
258 cipher_TLS_ECDH_ECDSA_WITH_ARIA_128_GCM_SHA256 uint16 = 0xC05E
259 cipher_TLS_ECDH_ECDSA_WITH_ARIA_256_GCM_SHA384 uint16 = 0xC05F
260 cipher_TLS_ECDHE_RSA_WITH_ARIA_128_GCM_SHA256 uint16 = 0xC060
261 cipher_TLS_ECDHE_RSA_WITH_ARIA_256_GCM_SHA384 uint16 = 0xC061
262 cipher_TLS_ECDH_RSA_WITH_ARIA_128_GCM_SHA256 uint16 = 0xC062
263 cipher_TLS_ECDH_RSA_WITH_ARIA_256_GCM_SHA384 uint16 = 0xC063
264 cipher_TLS_PSK_WITH_ARIA_128_CBC_SHA256 uint16 = 0xC064
265 cipher_TLS_PSK_WITH_ARIA_256_CBC_SHA384 uint16 = 0xC065
266 cipher_TLS_DHE_PSK_WITH_ARIA_128_CBC_SHA256 uint16 = 0xC066
267 cipher_TLS_DHE_PSK_WITH_ARIA_256_CBC_SHA384 uint16 = 0xC067
268 cipher_TLS_RSA_PSK_WITH_ARIA_128_CBC_SHA256 uint16 = 0xC068
269 cipher_TLS_RSA_PSK_WITH_ARIA_256_CBC_SHA384 uint16 = 0xC069
270 cipher_TLS_PSK_WITH_ARIA_128_GCM_SHA256 uint16 = 0xC06A
271 cipher_TLS_PSK_WITH_ARIA_256_GCM_SHA384 uint16 = 0xC06B
272 cipher_TLS_DHE_PSK_WITH_ARIA_128_GCM_SHA256 uint16 = 0xC06C
273 cipher_TLS_DHE_PSK_WITH_ARIA_256_GCM_SHA384 uint16 = 0xC06D
274 cipher_TLS_RSA_PSK_WITH_ARIA_128_GCM_SHA256 uint16 = 0xC06E
275 cipher_TLS_RSA_PSK_WITH_ARIA_256_GCM_SHA384 uint16 = 0xC06F
276 cipher_TLS_ECDHE_PSK_WITH_ARIA_128_CBC_SHA256 uint16 = 0xC070
277 cipher_TLS_ECDHE_PSK_WITH_ARIA_256_CBC_SHA384 uint16 = 0xC071
278 cipher_TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_CBC_SHA256 uint16 = 0xC072
279 cipher_TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_CBC_SHA384 uint16 = 0xC073
280 cipher_TLS_ECDH_ECDSA_WITH_CAMELLIA_128_CBC_SHA256 uint16 = 0xC074
281 cipher_TLS_ECDH_ECDSA_WITH_CAMELLIA_256_CBC_SHA384 uint16 = 0xC075
282 cipher_TLS_ECDHE_RSA_WITH_CAMELLIA_128_CBC_SHA256 uint16 = 0xC076
283 cipher_TLS_ECDHE_RSA_WITH_CAMELLIA_256_CBC_SHA384 uint16 = 0xC077
284 cipher_TLS_ECDH_RSA_WITH_CAMELLIA_128_CBC_SHA256 uint16 = 0xC078
285 cipher_TLS_ECDH_RSA_WITH_CAMELLIA_256_CBC_SHA384 uint16 = 0xC079
286 cipher_TLS_RSA_WITH_CAMELLIA_128_GCM_SHA256 uint16 = 0xC07A
287 cipher_TLS_RSA_WITH_CAMELLIA_256_GCM_SHA384 uint16 = 0xC07B
288 cipher_TLS_DHE_RSA_WITH_CAMELLIA_128_GCM_SHA256 uint16 = 0xC07C
289 cipher_TLS_DHE_RSA_WITH_CAMELLIA_256_GCM_SHA384 uint16 = 0xC07D
290 cipher_TLS_DH_RSA_WITH_CAMELLIA_128_GCM_SHA256 uint16 = 0xC07E
291 cipher_TLS_DH_RSA_WITH_CAMELLIA_256_GCM_SHA384 uint16 = 0xC07F
292 cipher_TLS_DHE_DSS_WITH_CAMELLIA_128_GCM_SHA256 uint16 = 0xC080
293 cipher_TLS_DHE_DSS_WITH_CAMELLIA_256_GCM_SHA384 uint16 = 0xC081
294 cipher_TLS_DH_DSS_WITH_CAMELLIA_128_GCM_SHA256 uint16 = 0xC082
295 cipher_TLS_DH_DSS_WITH_CAMELLIA_256_GCM_SHA384 uint16 = 0xC083
296 cipher_TLS_DH_anon_WITH_CAMELLIA_128_GCM_SHA256 uint16 = 0xC084
297 cipher_TLS_DH_anon_WITH_CAMELLIA_256_GCM_SHA384 uint16 = 0xC085
298 cipher_TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_GCM_SHA256 uint16 = 0xC086
299 cipher_TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_GCM_SHA384 uint16 = 0xC087
300 cipher_TLS_ECDH_ECDSA_WITH_CAMELLIA_128_GCM_SHA256 uint16 = 0xC088
301 cipher_TLS_ECDH_ECDSA_WITH_CAMELLIA_256_GCM_SHA384 uint16 = 0xC089
302 cipher_TLS_ECDHE_RSA_WITH_CAMELLIA_128_GCM_SHA256 uint16 = 0xC08A
303 cipher_TLS_ECDHE_RSA_WITH_CAMELLIA_256_GCM_SHA384 uint16 = 0xC08B
304 cipher_TLS_ECDH_RSA_WITH_CAMELLIA_128_GCM_SHA256 uint16 = 0xC08C
305 cipher_TLS_ECDH_RSA_WITH_CAMELLIA_256_GCM_SHA384 uint16 = 0xC08D
306 cipher_TLS_PSK_WITH_CAMELLIA_128_GCM_SHA256 uint16 = 0xC08E
307 cipher_TLS_PSK_WITH_CAMELLIA_256_GCM_SHA384 uint16 = 0xC08F
308 cipher_TLS_DHE_PSK_WITH_CAMELLIA_128_GCM_SHA256 uint16 = 0xC090
309 cipher_TLS_DHE_PSK_WITH_CAMELLIA_256_GCM_SHA384 uint16 = 0xC091
310 cipher_TLS_RSA_PSK_WITH_CAMELLIA_128_GCM_SHA256 uint16 = 0xC092
311 cipher_TLS_RSA_PSK_WITH_CAMELLIA_256_GCM_SHA384 uint16 = 0xC093
312 cipher_TLS_PSK_WITH_CAMELLIA_128_CBC_SHA256 uint16 = 0xC094
313 cipher_TLS_PSK_WITH_CAMELLIA_256_CBC_SHA384 uint16 = 0xC095
314 cipher_TLS_DHE_PSK_WITH_CAMELLIA_128_CBC_SHA256 uint16 = 0xC096
315 cipher_TLS_DHE_PSK_WITH_CAMELLIA_256_CBC_SHA384 uint16 = 0xC097
316 cipher_TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256 uint16 = 0xC098
317 cipher_TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384 uint16 = 0xC099
318 cipher_TLS_ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256 uint16 = 0xC09A
319 cipher_TLS_ECDHE_PSK_WITH_CAMELLIA_256_CBC_SHA384 uint16 = 0xC09B
320 cipher_TLS_RSA_WITH_AES_128_CCM uint16 = 0xC09C
321 cipher_TLS_RSA_WITH_AES_256_CCM uint16 = 0xC09D
322 cipher_TLS_DHE_RSA_WITH_AES_128_CCM uint16 = 0xC09E
323 cipher_TLS_DHE_RSA_WITH_AES_256_CCM uint16 = 0xC09F
324 cipher_TLS_RSA_WITH_AES_128_CCM_8 uint16 = 0xC0A0
325 cipher_TLS_RSA_WITH_AES_256_CCM_8 uint16 = 0xC0A1
326 cipher_TLS_DHE_RSA_WITH_AES_128_CCM_8 uint16 = 0xC0A2
327 cipher_TLS_DHE_RSA_WITH_AES_256_CCM_8 uint16 = 0xC0A3
328 cipher_TLS_PSK_WITH_AES_128_CCM uint16 = 0xC0A4
329 cipher_TLS_PSK_WITH_AES_256_CCM uint16 = 0xC0A5
330 cipher_TLS_DHE_PSK_WITH_AES_128_CCM uint16 = 0xC0A6
331 cipher_TLS_DHE_PSK_WITH_AES_256_CCM uint16 = 0xC0A7
332 cipher_TLS_PSK_WITH_AES_128_CCM_8 uint16 = 0xC0A8
333 cipher_TLS_PSK_WITH_AES_256_CCM_8 uint16 = 0xC0A9
334 cipher_TLS_PSK_DHE_WITH_AES_128_CCM_8 uint16 = 0xC0AA
335 cipher_TLS_PSK_DHE_WITH_AES_256_CCM_8 uint16 = 0xC0AB
336 cipher_TLS_ECDHE_ECDSA_WITH_AES_128_CCM uint16 = 0xC0AC
337 cipher_TLS_ECDHE_ECDSA_WITH_AES_256_CCM uint16 = 0xC0AD
338 cipher_TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8 uint16 = 0xC0AE
339 cipher_TLS_ECDHE_ECDSA_WITH_AES_256_CCM_8 uint16 = 0xC0AF
340 // Unassigned uint16 = 0xC0B0-FF
341 // Unassigned uint16 = 0xC1-CB,*
342 // Unassigned uint16 = 0xCC00-A7
343 cipher_TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 uint16 = 0xCCA8
344 cipher_TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 uint16 = 0xCCA9
345 cipher_TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256 uint16 = 0xCCAA
346 cipher_TLS_PSK_WITH_CHACHA20_POLY1305_SHA256 uint16 = 0xCCAB
347 cipher_TLS_ECDHE_PSK_WITH_CHACHA20_POLY1305_SHA256 uint16 = 0xCCAC
348 cipher_TLS_DHE_PSK_WITH_CHACHA20_POLY1305_SHA256 uint16 = 0xCCAD
349 cipher_TLS_RSA_PSK_WITH_CHACHA20_POLY1305_SHA256 uint16 = 0xCCAE
350)
351
352// isBadCipher reports whether the cipher is blacklisted by the HTTP/2 spec.
353// References:
354// https://tools.ietf.org/html/rfc7540#appendix-A
355// Reject cipher suites from Appendix A.
356// "This list includes those cipher suites that do not
357// offer an ephemeral key exchange and those that are
358// based on the TLS null, stream or block cipher type"
359func isBadCipher(cipher uint16) bool {
360 switch cipher {
361 case cipher_TLS_NULL_WITH_NULL_NULL,
362 cipher_TLS_RSA_WITH_NULL_MD5,
363 cipher_TLS_RSA_WITH_NULL_SHA,
364 cipher_TLS_RSA_EXPORT_WITH_RC4_40_MD5,
365 cipher_TLS_RSA_WITH_RC4_128_MD5,
366 cipher_TLS_RSA_WITH_RC4_128_SHA,
367 cipher_TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5,
368 cipher_TLS_RSA_WITH_IDEA_CBC_SHA,
369 cipher_TLS_RSA_EXPORT_WITH_DES40_CBC_SHA,
370 cipher_TLS_RSA_WITH_DES_CBC_SHA,
371 cipher_TLS_RSA_WITH_3DES_EDE_CBC_SHA,
372 cipher_TLS_DH_DSS_EXPORT_WITH_DES40_CBC_SHA,
373 cipher_TLS_DH_DSS_WITH_DES_CBC_SHA,
374 cipher_TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA,
375 cipher_TLS_DH_RSA_EXPORT_WITH_DES40_CBC_SHA,
376 cipher_TLS_DH_RSA_WITH_DES_CBC_SHA,
377 cipher_TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA,
378 cipher_TLS_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA,
379 cipher_TLS_DHE_DSS_WITH_DES_CBC_SHA,
380 cipher_TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA,
381 cipher_TLS_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA,
382 cipher_TLS_DHE_RSA_WITH_DES_CBC_SHA,
383 cipher_TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA,
384 cipher_TLS_DH_anon_EXPORT_WITH_RC4_40_MD5,
385 cipher_TLS_DH_anon_WITH_RC4_128_MD5,
386 cipher_TLS_DH_anon_EXPORT_WITH_DES40_CBC_SHA,
387 cipher_TLS_DH_anon_WITH_DES_CBC_SHA,
388 cipher_TLS_DH_anon_WITH_3DES_EDE_CBC_SHA,
389 cipher_TLS_KRB5_WITH_DES_CBC_SHA,
390 cipher_TLS_KRB5_WITH_3DES_EDE_CBC_SHA,
391 cipher_TLS_KRB5_WITH_RC4_128_SHA,
392 cipher_TLS_KRB5_WITH_IDEA_CBC_SHA,
393 cipher_TLS_KRB5_WITH_DES_CBC_MD5,
394 cipher_TLS_KRB5_WITH_3DES_EDE_CBC_MD5,
395 cipher_TLS_KRB5_WITH_RC4_128_MD5,
396 cipher_TLS_KRB5_WITH_IDEA_CBC_MD5,
397 cipher_TLS_KRB5_EXPORT_WITH_DES_CBC_40_SHA,
398 cipher_TLS_KRB5_EXPORT_WITH_RC2_CBC_40_SHA,
399 cipher_TLS_KRB5_EXPORT_WITH_RC4_40_SHA,
400 cipher_TLS_KRB5_EXPORT_WITH_DES_CBC_40_MD5,
401 cipher_TLS_KRB5_EXPORT_WITH_RC2_CBC_40_MD5,
402 cipher_TLS_KRB5_EXPORT_WITH_RC4_40_MD5,
403 cipher_TLS_PSK_WITH_NULL_SHA,
404 cipher_TLS_DHE_PSK_WITH_NULL_SHA,
405 cipher_TLS_RSA_PSK_WITH_NULL_SHA,
406 cipher_TLS_RSA_WITH_AES_128_CBC_SHA,
407 cipher_TLS_DH_DSS_WITH_AES_128_CBC_SHA,
408 cipher_TLS_DH_RSA_WITH_AES_128_CBC_SHA,
409 cipher_TLS_DHE_DSS_WITH_AES_128_CBC_SHA,
410 cipher_TLS_DHE_RSA_WITH_AES_128_CBC_SHA,
411 cipher_TLS_DH_anon_WITH_AES_128_CBC_SHA,
412 cipher_TLS_RSA_WITH_AES_256_CBC_SHA,
413 cipher_TLS_DH_DSS_WITH_AES_256_CBC_SHA,
414 cipher_TLS_DH_RSA_WITH_AES_256_CBC_SHA,
415 cipher_TLS_DHE_DSS_WITH_AES_256_CBC_SHA,
416 cipher_TLS_DHE_RSA_WITH_AES_256_CBC_SHA,
417 cipher_TLS_DH_anon_WITH_AES_256_CBC_SHA,
418 cipher_TLS_RSA_WITH_NULL_SHA256,
419 cipher_TLS_RSA_WITH_AES_128_CBC_SHA256,
420 cipher_TLS_RSA_WITH_AES_256_CBC_SHA256,
421 cipher_TLS_DH_DSS_WITH_AES_128_CBC_SHA256,
422 cipher_TLS_DH_RSA_WITH_AES_128_CBC_SHA256,
423 cipher_TLS_DHE_DSS_WITH_AES_128_CBC_SHA256,
424 cipher_TLS_RSA_WITH_CAMELLIA_128_CBC_SHA,
425 cipher_TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA,
426 cipher_TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA,
427 cipher_TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA,
428 cipher_TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA,
429 cipher_TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA,
430 cipher_TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,
431 cipher_TLS_DH_DSS_WITH_AES_256_CBC_SHA256,
432 cipher_TLS_DH_RSA_WITH_AES_256_CBC_SHA256,
433 cipher_TLS_DHE_DSS_WITH_AES_256_CBC_SHA256,
434 cipher_TLS_DHE_RSA_WITH_AES_256_CBC_SHA256,
435 cipher_TLS_DH_anon_WITH_AES_128_CBC_SHA256,
436 cipher_TLS_DH_anon_WITH_AES_256_CBC_SHA256,
437 cipher_TLS_RSA_WITH_CAMELLIA_256_CBC_SHA,
438 cipher_TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA,
439 cipher_TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA,
440 cipher_TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA,
441 cipher_TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA,
442 cipher_TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA,
443 cipher_TLS_PSK_WITH_RC4_128_SHA,
444 cipher_TLS_PSK_WITH_3DES_EDE_CBC_SHA,
445 cipher_TLS_PSK_WITH_AES_128_CBC_SHA,
446 cipher_TLS_PSK_WITH_AES_256_CBC_SHA,
447 cipher_TLS_DHE_PSK_WITH_RC4_128_SHA,
448 cipher_TLS_DHE_PSK_WITH_3DES_EDE_CBC_SHA,
449 cipher_TLS_DHE_PSK_WITH_AES_128_CBC_SHA,
450 cipher_TLS_DHE_PSK_WITH_AES_256_CBC_SHA,
451 cipher_TLS_RSA_PSK_WITH_RC4_128_SHA,
452 cipher_TLS_RSA_PSK_WITH_3DES_EDE_CBC_SHA,
453 cipher_TLS_RSA_PSK_WITH_AES_128_CBC_SHA,
454 cipher_TLS_RSA_PSK_WITH_AES_256_CBC_SHA,
455 cipher_TLS_RSA_WITH_SEED_CBC_SHA,
456 cipher_TLS_DH_DSS_WITH_SEED_CBC_SHA,
457 cipher_TLS_DH_RSA_WITH_SEED_CBC_SHA,
458 cipher_TLS_DHE_DSS_WITH_SEED_CBC_SHA,
459 cipher_TLS_DHE_RSA_WITH_SEED_CBC_SHA,
460 cipher_TLS_DH_anon_WITH_SEED_CBC_SHA,
461 cipher_TLS_RSA_WITH_AES_128_GCM_SHA256,
462 cipher_TLS_RSA_WITH_AES_256_GCM_SHA384,
463 cipher_TLS_DH_RSA_WITH_AES_128_GCM_SHA256,
464 cipher_TLS_DH_RSA_WITH_AES_256_GCM_SHA384,
465 cipher_TLS_DH_DSS_WITH_AES_128_GCM_SHA256,
466 cipher_TLS_DH_DSS_WITH_AES_256_GCM_SHA384,
467 cipher_TLS_DH_anon_WITH_AES_128_GCM_SHA256,
468 cipher_TLS_DH_anon_WITH_AES_256_GCM_SHA384,
469 cipher_TLS_PSK_WITH_AES_128_GCM_SHA256,
470 cipher_TLS_PSK_WITH_AES_256_GCM_SHA384,
471 cipher_TLS_RSA_PSK_WITH_AES_128_GCM_SHA256,
472 cipher_TLS_RSA_PSK_WITH_AES_256_GCM_SHA384,
473 cipher_TLS_PSK_WITH_AES_128_CBC_SHA256,
474 cipher_TLS_PSK_WITH_AES_256_CBC_SHA384,
475 cipher_TLS_PSK_WITH_NULL_SHA256,
476 cipher_TLS_PSK_WITH_NULL_SHA384,
477 cipher_TLS_DHE_PSK_WITH_AES_128_CBC_SHA256,
478 cipher_TLS_DHE_PSK_WITH_AES_256_CBC_SHA384,
479 cipher_TLS_DHE_PSK_WITH_NULL_SHA256,
480 cipher_TLS_DHE_PSK_WITH_NULL_SHA384,
481 cipher_TLS_RSA_PSK_WITH_AES_128_CBC_SHA256,
482 cipher_TLS_RSA_PSK_WITH_AES_256_CBC_SHA384,
483 cipher_TLS_RSA_PSK_WITH_NULL_SHA256,
484 cipher_TLS_RSA_PSK_WITH_NULL_SHA384,
485 cipher_TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256,
486 cipher_TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA256,
487 cipher_TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA256,
488 cipher_TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA256,
489 cipher_TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256,
490 cipher_TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA256,
491 cipher_TLS_RSA_WITH_CAMELLIA_256_CBC_SHA256,
492 cipher_TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA256,
493 cipher_TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA256,
494 cipher_TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA256,
495 cipher_TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA256,
496 cipher_TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA256,
497 cipher_TLS_EMPTY_RENEGOTIATION_INFO_SCSV,
498 cipher_TLS_ECDH_ECDSA_WITH_NULL_SHA,
499 cipher_TLS_ECDH_ECDSA_WITH_RC4_128_SHA,
500 cipher_TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA,
501 cipher_TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA,
502 cipher_TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA,
503 cipher_TLS_ECDHE_ECDSA_WITH_NULL_SHA,
504 cipher_TLS_ECDHE_ECDSA_WITH_RC4_128_SHA,
505 cipher_TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA,
506 cipher_TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,
507 cipher_TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA,
508 cipher_TLS_ECDH_RSA_WITH_NULL_SHA,
509 cipher_TLS_ECDH_RSA_WITH_RC4_128_SHA,
510 cipher_TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA,
511 cipher_TLS_ECDH_RSA_WITH_AES_128_CBC_SHA,
512 cipher_TLS_ECDH_RSA_WITH_AES_256_CBC_SHA,
513 cipher_TLS_ECDHE_RSA_WITH_NULL_SHA,
514 cipher_TLS_ECDHE_RSA_WITH_RC4_128_SHA,
515 cipher_TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA,
516 cipher_TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
517 cipher_TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,
518 cipher_TLS_ECDH_anon_WITH_NULL_SHA,
519 cipher_TLS_ECDH_anon_WITH_RC4_128_SHA,
520 cipher_TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA,
521 cipher_TLS_ECDH_anon_WITH_AES_128_CBC_SHA,
522 cipher_TLS_ECDH_anon_WITH_AES_256_CBC_SHA,
523 cipher_TLS_SRP_SHA_WITH_3DES_EDE_CBC_SHA,
524 cipher_TLS_SRP_SHA_RSA_WITH_3DES_EDE_CBC_SHA,
525 cipher_TLS_SRP_SHA_DSS_WITH_3DES_EDE_CBC_SHA,
526 cipher_TLS_SRP_SHA_WITH_AES_128_CBC_SHA,
527 cipher_TLS_SRP_SHA_RSA_WITH_AES_128_CBC_SHA,
528 cipher_TLS_SRP_SHA_DSS_WITH_AES_128_CBC_SHA,
529 cipher_TLS_SRP_SHA_WITH_AES_256_CBC_SHA,
530 cipher_TLS_SRP_SHA_RSA_WITH_AES_256_CBC_SHA,
531 cipher_TLS_SRP_SHA_DSS_WITH_AES_256_CBC_SHA,
532 cipher_TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,
533 cipher_TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,
534 cipher_TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256,
535 cipher_TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384,
536 cipher_TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,
537 cipher_TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,
538 cipher_TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256,
539 cipher_TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384,
540 cipher_TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256,
541 cipher_TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384,
542 cipher_TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256,
543 cipher_TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384,
544 cipher_TLS_ECDHE_PSK_WITH_RC4_128_SHA,
545 cipher_TLS_ECDHE_PSK_WITH_3DES_EDE_CBC_SHA,
546 cipher_TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA,
547 cipher_TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA,
548 cipher_TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA256,
549 cipher_TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA384,
550 cipher_TLS_ECDHE_PSK_WITH_NULL_SHA,
551 cipher_TLS_ECDHE_PSK_WITH_NULL_SHA256,
552 cipher_TLS_ECDHE_PSK_WITH_NULL_SHA384,
553 cipher_TLS_RSA_WITH_ARIA_128_CBC_SHA256,
554 cipher_TLS_RSA_WITH_ARIA_256_CBC_SHA384,
555 cipher_TLS_DH_DSS_WITH_ARIA_128_CBC_SHA256,
556 cipher_TLS_DH_DSS_WITH_ARIA_256_CBC_SHA384,
557 cipher_TLS_DH_RSA_WITH_ARIA_128_CBC_SHA256,
558 cipher_TLS_DH_RSA_WITH_ARIA_256_CBC_SHA384,
559 cipher_TLS_DHE_DSS_WITH_ARIA_128_CBC_SHA256,
560 cipher_TLS_DHE_DSS_WITH_ARIA_256_CBC_SHA384,
561 cipher_TLS_DHE_RSA_WITH_ARIA_128_CBC_SHA256,
562 cipher_TLS_DHE_RSA_WITH_ARIA_256_CBC_SHA384,
563 cipher_TLS_DH_anon_WITH_ARIA_128_CBC_SHA256,
564 cipher_TLS_DH_anon_WITH_ARIA_256_CBC_SHA384,
565 cipher_TLS_ECDHE_ECDSA_WITH_ARIA_128_CBC_SHA256,
566 cipher_TLS_ECDHE_ECDSA_WITH_ARIA_256_CBC_SHA384,
567 cipher_TLS_ECDH_ECDSA_WITH_ARIA_128_CBC_SHA256,
568 cipher_TLS_ECDH_ECDSA_WITH_ARIA_256_CBC_SHA384,
569 cipher_TLS_ECDHE_RSA_WITH_ARIA_128_CBC_SHA256,
570 cipher_TLS_ECDHE_RSA_WITH_ARIA_256_CBC_SHA384,
571 cipher_TLS_ECDH_RSA_WITH_ARIA_128_CBC_SHA256,
572 cipher_TLS_ECDH_RSA_WITH_ARIA_256_CBC_SHA384,
573 cipher_TLS_RSA_WITH_ARIA_128_GCM_SHA256,
574 cipher_TLS_RSA_WITH_ARIA_256_GCM_SHA384,
575 cipher_TLS_DH_RSA_WITH_ARIA_128_GCM_SHA256,
576 cipher_TLS_DH_RSA_WITH_ARIA_256_GCM_SHA384,
577 cipher_TLS_DH_DSS_WITH_ARIA_128_GCM_SHA256,
578 cipher_TLS_DH_DSS_WITH_ARIA_256_GCM_SHA384,
579 cipher_TLS_DH_anon_WITH_ARIA_128_GCM_SHA256,
580 cipher_TLS_DH_anon_WITH_ARIA_256_GCM_SHA384,
581 cipher_TLS_ECDH_ECDSA_WITH_ARIA_128_GCM_SHA256,
582 cipher_TLS_ECDH_ECDSA_WITH_ARIA_256_GCM_SHA384,
583 cipher_TLS_ECDH_RSA_WITH_ARIA_128_GCM_SHA256,
584 cipher_TLS_ECDH_RSA_WITH_ARIA_256_GCM_SHA384,
585 cipher_TLS_PSK_WITH_ARIA_128_CBC_SHA256,
586 cipher_TLS_PSK_WITH_ARIA_256_CBC_SHA384,
587 cipher_TLS_DHE_PSK_WITH_ARIA_128_CBC_SHA256,
588 cipher_TLS_DHE_PSK_WITH_ARIA_256_CBC_SHA384,
589 cipher_TLS_RSA_PSK_WITH_ARIA_128_CBC_SHA256,
590 cipher_TLS_RSA_PSK_WITH_ARIA_256_CBC_SHA384,
591 cipher_TLS_PSK_WITH_ARIA_128_GCM_SHA256,
592 cipher_TLS_PSK_WITH_ARIA_256_GCM_SHA384,
593 cipher_TLS_RSA_PSK_WITH_ARIA_128_GCM_SHA256,
594 cipher_TLS_RSA_PSK_WITH_ARIA_256_GCM_SHA384,
595 cipher_TLS_ECDHE_PSK_WITH_ARIA_128_CBC_SHA256,
596 cipher_TLS_ECDHE_PSK_WITH_ARIA_256_CBC_SHA384,
597 cipher_TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_CBC_SHA256,
598 cipher_TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_CBC_SHA384,
599 cipher_TLS_ECDH_ECDSA_WITH_CAMELLIA_128_CBC_SHA256,
600 cipher_TLS_ECDH_ECDSA_WITH_CAMELLIA_256_CBC_SHA384,
601 cipher_TLS_ECDHE_RSA_WITH_CAMELLIA_128_CBC_SHA256,
602 cipher_TLS_ECDHE_RSA_WITH_CAMELLIA_256_CBC_SHA384,
603 cipher_TLS_ECDH_RSA_WITH_CAMELLIA_128_CBC_SHA256,
604 cipher_TLS_ECDH_RSA_WITH_CAMELLIA_256_CBC_SHA384,
605 cipher_TLS_RSA_WITH_CAMELLIA_128_GCM_SHA256,
606 cipher_TLS_RSA_WITH_CAMELLIA_256_GCM_SHA384,
607 cipher_TLS_DH_RSA_WITH_CAMELLIA_128_GCM_SHA256,
608 cipher_TLS_DH_RSA_WITH_CAMELLIA_256_GCM_SHA384,
609 cipher_TLS_DH_DSS_WITH_CAMELLIA_128_GCM_SHA256,
610 cipher_TLS_DH_DSS_WITH_CAMELLIA_256_GCM_SHA384,
611 cipher_TLS_DH_anon_WITH_CAMELLIA_128_GCM_SHA256,
612 cipher_TLS_DH_anon_WITH_CAMELLIA_256_GCM_SHA384,
613 cipher_TLS_ECDH_ECDSA_WITH_CAMELLIA_128_GCM_SHA256,
614 cipher_TLS_ECDH_ECDSA_WITH_CAMELLIA_256_GCM_SHA384,
615 cipher_TLS_ECDH_RSA_WITH_CAMELLIA_128_GCM_SHA256,
616 cipher_TLS_ECDH_RSA_WITH_CAMELLIA_256_GCM_SHA384,
617 cipher_TLS_PSK_WITH_CAMELLIA_128_GCM_SHA256,
618 cipher_TLS_PSK_WITH_CAMELLIA_256_GCM_SHA384,
619 cipher_TLS_RSA_PSK_WITH_CAMELLIA_128_GCM_SHA256,
620 cipher_TLS_RSA_PSK_WITH_CAMELLIA_256_GCM_SHA384,
621 cipher_TLS_PSK_WITH_CAMELLIA_128_CBC_SHA256,
622 cipher_TLS_PSK_WITH_CAMELLIA_256_CBC_SHA384,
623 cipher_TLS_DHE_PSK_WITH_CAMELLIA_128_CBC_SHA256,
624 cipher_TLS_DHE_PSK_WITH_CAMELLIA_256_CBC_SHA384,
625 cipher_TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256,
626 cipher_TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384,
627 cipher_TLS_ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256,
628 cipher_TLS_ECDHE_PSK_WITH_CAMELLIA_256_CBC_SHA384,
629 cipher_TLS_RSA_WITH_AES_128_CCM,
630 cipher_TLS_RSA_WITH_AES_256_CCM,
631 cipher_TLS_RSA_WITH_AES_128_CCM_8,
632 cipher_TLS_RSA_WITH_AES_256_CCM_8,
633 cipher_TLS_PSK_WITH_AES_128_CCM,
634 cipher_TLS_PSK_WITH_AES_256_CCM,
635 cipher_TLS_PSK_WITH_AES_128_CCM_8,
636 cipher_TLS_PSK_WITH_AES_256_CCM_8:
637 return true
638 default:
639 return false
640 }
641}