cubefs

Форк
0
641 строка · 34.4 Кб
1
// 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

5
package 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

10
const (
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"
359
func 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
}
642

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.