-
Notifications
You must be signed in to change notification settings - Fork 23
/
ciphers.py
306 lines (304 loc) · 14.4 KB
/
ciphers.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
import struct
ciphers = [
(0x0000, 'NULL_WITH_NULL_NULL'),
(0x0001, 'RSA_WITH_NULL_MD5'),
(0x0002, 'RSA_WITH_NULL_SHA'),
(0x0003, 'RSA_EXPORT_WITH_RC4_40_MD5'),
(0x0004, 'RSA_WITH_RC4_128_MD5'),
(0x0005, 'RSA_WITH_RC4_128_SHA'),
(0x0006, 'RSA_EXPORT_WITH_RC2_CBC_40_MD5'),
(0x0007, 'RSA_WITH_IDEA_CBC_SHA'),
(0x0008, 'RSA_EXPORT_WITH_DES40_CBC_SHA'),
(0x0009, 'RSA_WITH_DES_CBC_SHA'),
(0x000A, 'RSA_WITH_3DES_EDE_CBC_SHA'),
(0x000B, 'DH_DSS_EXPORT_WITH_DES40_CBC_SHA'),
(0x000C, 'DH_DSS_WITH_DES_CBC_SHA'),
(0x000D, 'DH_DSS_WITH_3DES_EDE_CBC_SHA'),
(0x000E, 'DH_RSA_EXPORT_WITH_DES40_CBC_SHA'),
(0x000F, 'DH_RSA_WITH_DES_CBC_SHA'),
(0x0010, 'DH_RSA_WITH_3DES_EDE_CBC_SHA'),
(0x0011, 'DHE_DSS_EXPORT_WITH_DES40_CBC_SHA'),
(0x0012, 'DHE_DSS_WITH_DES_CBC_SHA'),
(0x0013, 'DHE_DSS_WITH_3DES_EDE_CBC_SHA'),
(0x0014, 'DHE_RSA_EXPORT_WITH_DES40_CBC_SHA'),
(0x0015, 'DHE_RSA_WITH_DES_CBC_SHA'),
(0x0016, 'DHE_RSA_WITH_3DES_EDE_CBC_SHA'),
(0x0017, 'DH_anon_EXPORT_WITH_RC4_40_MD5'),
(0x0018, 'DH_anon_WITH_RC4_128_MD5'),
(0x0019, 'DH_anon_EXPORT_WITH_DES40_CBC_SHA'),
(0x001A, 'DH_anon_WITH_DES_CBC_SHA'),
(0x001B, 'DH_anon_WITH_3DES_EDE_CBC_SHA'),
(0x002F, 'RSA_WITH_AES_128_CBC_SHA'),
(0x0030, 'DH_DSS_WITH_AES_128_CBC_SHA'),
(0x0031, 'DH_RSA_WITH_AES_128_CBC_SHA'),
(0x0032, 'DHE_DSS_WITH_AES_128_CBC_SHA'),
(0x0033, 'DHE_RSA_WITH_AES_128_CBC_SHA'),
(0x0034, 'DH_anon_WITH_AES_128_CBC_SHA'),
(0x0035, 'RSA_WITH_AES_256_CBC_SHA'),
(0x0036, 'DH_DSS_WITH_AES_256_CBC_SHA'),
(0x0037, 'DH_RSA_WITH_AES_256_CBC_SHA'),
(0x0038, 'DHE_DSS_WITH_AES_256_CBC_SHA'),
(0x0039, 'DHE_RSA_WITH_AES_256_CBC_SHA'),
(0x003A, 'DH_anon_WITH_AES_256_CBC_SHA'),
(0x003B, 'RSA_WITH_NULL_SHA256'),
(0x003C, 'RSA_WITH_AES_128_CBC_SHA256'),
(0x003D, 'RSA_WITH_AES_256_CBC_SHA256'),
(0x003E, 'DH_DSS_WITH_AES_128_CBC_SHA256'),
(0x003F, 'DH_RSA_WITH_AES_128_CBC_SHA256'),
(0x0040, 'DHE_DSS_WITH_AES_128_CBC_SHA256'),
(0x0067, 'DHE_RSA_WITH_AES_128_CBC_SHA256'),
(0x0068, 'DH_DSS_WITH_AES_256_CBC_SHA256'),
(0x0069, 'DH_RSA_WITH_AES_256_CBC_SHA256'),
(0x006A, 'DHE_DSS_WITH_AES_256_CBC_SHA256'),
(0x006B, 'DHE_RSA_WITH_AES_256_CBC_SHA256'),
(0x006C, 'DH_anon_WITH_AES_128_CBC_SHA256'),
(0x006D, 'DH_anon_WITH_AES_256_CBC_SHA256'),
(0x0041, 'RSA_WITH_CAMELLIA_128_CBC_SHA'),
(0x0042, 'DH_DSS_WITH_CAMELLIA_128_CBC_SHA'),
(0x0043, 'DH_RSA_WITH_CAMELLIA_128_CBC_SHA'),
(0x0044, 'DHE_DSS_WITH_CAMELLIA_128_CBC_SHA'),
(0x0045, 'DHE_RSA_WITH_CAMELLIA_128_CBC_SHA'),
(0x0046, 'DH_anon_WITH_CAMELLIA_128_CBC_SHA'),
(0x0084, 'RSA_WITH_CAMELLIA_256_CBC_SHA'),
(0x0085, 'DH_DSS_WITH_CAMELLIA_256_CBC_SHA'),
(0x0086, 'DH_RSA_WITH_CAMELLIA_256_CBC_SHA'),
(0x0087, 'DHE_DSS_WITH_CAMELLIA_256_CBC_SHA'),
(0x0088, 'DHE_RSA_WITH_CAMELLIA_256_CBC_SHA'),
(0x0089, 'DH_anon_WITH_CAMELLIA_256_CBC_SHA'),
(0x008A, 'TLS_PSK_WITH_RC4_128_SHA'),
(0x008B, 'TLS_PSK_WITH_3DES_EDE_CBC_SHA'),
(0x008C, 'TLS_PSK_WITH_AES_128_CBC_SHA'),
(0x008D, 'TLS_PSK_WITH_AES_256_CBC_SHA'),
(0x008E, 'TLS_DHE_PSK_WITH_RC4_128_SHA'),
(0x008F, 'TLS_DHE_PSK_WITH_3DES_EDE_CBC_SHA'),
(0x0090, 'TLS_DHE_PSK_WITH_AES_128_CBC_SHA'),
(0x0091, 'TLS_DHE_PSK_WITH_AES_256_CBC_SHA'),
(0x0092, 'TLS_RSA_PSK_WITH_RC4_128_SHA'),
(0x0093, 'TLS_RSA_PSK_WITH_3DES_EDE_CBC_SHA'),
(0x0094, 'TLS_RSA_PSK_WITH_AES_128_CBC_SHA'),
(0x0095, 'TLS_RSA_PSK_WITH_AES_256_CBC_SHA'),
(0x0096, 'TLS_RSA_WITH_SEED_CBC_SHA'),
(0x0097, 'TLS_DH_DSS_WITH_SEED_CBC_SHA'),
(0x0098, 'TLS_DH_RSA_WITH_SEED_CBC_SHA'),
(0x0099, 'TLS_DHE_DSS_WITH_SEED_CBC_SHA'),
(0x009A, 'TLS_DHE_RSA_WITH_SEED_CBC_SHA'),
(0x009B, 'TLS_DH_anon_WITH_SEED_CBC_SHA'),
(0x009C, 'TLS_RSA_WITH_AES_128_GCM_SHA256'),
(0x009D, 'TLS_RSA_WITH_AES_256_GCM_SHA384'),
(0x009E, 'TLS_DHE_RSA_WITH_AES_128_GCM_SHA256'),
(0x009F, 'TLS_DHE_RSA_WITH_AES_256_GCM_SHA384'),
(0x00A0, 'TLS_DH_RSA_WITH_AES_128_GCM_SHA256'),
(0x00A1, 'TLS_DH_RSA_WITH_AES_256_GCM_SHA384'),
(0x00A2, 'TLS_DHE_DSS_WITH_AES_128_GCM_SHA256'),
(0x00A3, 'TLS_DHE_DSS_WITH_AES_256_GCM_SHA384'),
(0x00A4, 'TLS_DH_DSS_WITH_AES_128_GCM_SHA256'),
(0x00A5, 'TLS_DH_DSS_WITH_AES_256_GCM_SHA384'),
(0x00A6, 'TLS_DH_anon_WITH_AES_128_GCM_SHA256'),
(0x00A7, 'TLS_DH_anon_WITH_AES_256_GCM_SHA384'),
(0x00A8, 'TLS_PSK_WITH_AES_128_GCM_SHA256'),
(0x00A9, 'TLS_PSK_WITH_AES_256_GCM_SHA384'),
(0x00AA, 'TLS_DHE_PSK_WITH_AES_128_GCM_SHA256'),
(0x00AB, 'TLS_DHE_PSK_WITH_AES_256_GCM_SHA384'),
(0x00AC, 'TLS_RSA_PSK_WITH_AES_128_GCM_SHA256'),
(0x00AD, 'TLS_RSA_PSK_WITH_AES_256_GCM_SHA384'),
(0x00AE, 'TLS_PSK_WITH_AES_128_CBC_SHA256'),
(0x00AF, 'TLS_PSK_WITH_AES_256_CBC_SHA384'),
(0x00B0, 'TLS_PSK_WITH_NULL_SHA256'),
(0x00B1, 'TLS_PSK_WITH_NULL_SHA384'),
(0x00B2, 'TLS_DHE_PSK_WITH_AES_128_CBC_SHA256'),
(0x00B3, 'TLS_DHE_PSK_WITH_AES_256_CBC_SHA384'),
(0x00B4, 'TLS_DHE_PSK_WITH_NULL_SHA256'),
(0x00B5, 'TLS_DHE_PSK_WITH_NULL_SHA384'),
(0x00B6, 'TLS_RSA_PSK_WITH_AES_128_CBC_SHA256'),
(0x00B7, 'TLS_RSA_PSK_WITH_AES_256_CBC_SHA384'),
(0x00B8, 'TLS_RSA_PSK_WITH_NULL_SHA256'),
(0x00B9, 'TLS_RSA_PSK_WITH_NULL_SHA384'),
(0x00BA, 'TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256'),
(0x00BB, 'TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA256'),
(0x00BC, 'TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA256'),
(0x00BD, 'TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA256'),
(0x00BE, 'TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256'),
(0x00BF, 'TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA256'),
(0x00C0, 'TLS_RSA_WITH_CAMELLIA_256_CBC_SHA256'),
(0x00C1, 'TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA256'),
(0x00C2, 'TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA256'),
(0x00C3, 'TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA256'),
(0x00C4, 'TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA256'),
(0x00C5, 'TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA256'),
(0xC001, 'TLS_ECDH_ECDSA_WITH_NULL_SHA'),
(0xC002, 'TLS_ECDH_ECDSA_WITH_RC4_128_SHA'),
(0xC003, 'TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA'),
(0xC004, 'TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA'),
(0xC005, 'TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA'),
(0xC006, 'TLS_ECDHE_ECDSA_WITH_NULL_SHA'),
(0xC007, 'TLS_ECDHE_ECDSA_WITH_RC4_128_SHA'),
(0xC008, 'TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA'),
(0xC009, 'TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA'),
(0xC00A, 'TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA'),
(0xC00B, 'TLS_ECDH_RSA_WITH_NULL_SHA'),
(0xC00C, 'TLS_ECDH_RSA_WITH_RC4_128_SHA'),
(0xC00D, 'TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA'),
(0xC00E, 'TLS_ECDH_RSA_WITH_AES_128_CBC_SHA'),
(0xC00F, 'TLS_ECDH_RSA_WITH_AES_256_CBC_SHA'),
(0xC010, 'TLS_ECDHE_RSA_WITH_NULL_SHA'),
(0xC011, 'TLS_ECDHE_RSA_WITH_RC4_128_SHA'),
(0xC012, 'TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA'),
(0xC013, 'TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA'),
(0xC014, 'TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA'),
(0xC015, 'TLS_ECDH_anon_WITH_NULL_SHA'),
(0xC016, 'TLS_ECDH_anon_WITH_RC4_128_SHA'),
(0xC017, 'TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA'),
(0xC018, 'TLS_ECDH_anon_WITH_AES_128_CBC_SHA'),
(0xC019, 'TLS_ECDH_anon_WITH_AES_256_CBC_SHA'),
(0xC01A, 'TLS_SRP_SHA_WITH_3DES_EDE_CBC_SHA'),
(0xC01B, 'TLS_SRP_SHA_RSA_WITH_3DES_EDE_CBC_SHA'),
(0xC01C, 'TLS_SRP_SHA_DSS_WITH_3DES_EDE_CBC_SHA'),
(0xC01D, 'TLS_SRP_SHA_WITH_AES_128_CBC_SHA'),
(0xC01E, 'TLS_SRP_SHA_RSA_WITH_AES_128_CBC_SHA'),
(0xC01F, 'TLS_SRP_SHA_DSS_WITH_AES_128_CBC_SHA'),
(0xC020, 'TLS_SRP_SHA_WITH_AES_256_CBC_SHA'),
(0xC021, 'TLS_SRP_SHA_RSA_WITH_AES_256_CBC_SHA'),
(0xC022, 'TLS_SRP_SHA_DSS_WITH_AES_256_CBC_SHA'),
(0xC023, 'TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256'),
(0xC024, 'TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384'),
(0xC025, 'TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256'),
(0xC026, 'TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384'),
(0xC027, 'TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256'),
(0xC028, 'TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384'),
(0xC029, 'TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256'),
(0xC02A, 'TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384'),
(0xC02B, 'TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256'),
(0xC02C, 'TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384'),
(0xC02D, 'TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256'),
(0xC02E, 'TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384'),
(0xC02F, 'TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256'),
(0xC030, 'TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384'),
(0xC031, 'TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256'),
(0xC032, 'TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384'),
(0xC033, 'TLS_ECDHE_PSK_WITH_RC4_128_SHA'),
(0xC034, 'TLS_ECDHE_PSK_WITH_3DES_EDE_CBC_SHA'),
(0xC035, 'TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA'),
(0xC036, 'TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA'),
(0xC037, 'TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA256'),
(0xC038, 'TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA384'),
(0xC039, 'TLS_ECDHE_PSK_WITH_NULL_SHA'),
(0xC03A, 'TLS_ECDHE_PSK_WITH_NULL_SHA256'),
(0xC03B, 'TLS_ECDHE_PSK_WITH_NULL_SHA384'),
(0xC03C, 'TLS_RSA_WITH_ARIA_128_CBC_SHA256'),
(0xC03D, 'TLS_RSA_WITH_ARIA_256_CBC_SHA384'),
(0xC03E, 'TLS_DH_DSS_WITH_ARIA_128_CBC_SHA256'),
(0xC03F, 'TLS_DH_DSS_WITH_ARIA_256_CBC_SHA384'),
(0xC040, 'TLS_DH_RSA_WITH_ARIA_128_CBC_SHA256'),
(0xC041, 'TLS_DH_RSA_WITH_ARIA_256_CBC_SHA384'),
(0xC042, 'TLS_DHE_DSS_WITH_ARIA_128_CBC_SHA256'),
(0xC043, 'TLS_DHE_DSS_WITH_ARIA_256_CBC_SHA384'),
(0xC044, 'TLS_DHE_RSA_WITH_ARIA_128_CBC_SHA256'),
(0xC045, 'TLS_DHE_RSA_WITH_ARIA_256_CBC_SHA384'),
(0xC046, 'TLS_DH_anon_WITH_ARIA_128_CBC_SHA256'),
(0xC047, 'TLS_DH_anon_WITH_ARIA_256_CBC_SHA384'),
(0xC048, 'TLS_ECDHE_ECDSA_WITH_ARIA_128_CBC_SHA256'),
(0xC049, 'TLS_ECDHE_ECDSA_WITH_ARIA_256_CBC_SHA384'),
(0xC04A, 'TLS_ECDH_ECDSA_WITH_ARIA_128_CBC_SHA256'),
(0xC04B, 'TLS_ECDH_ECDSA_WITH_ARIA_256_CBC_SHA384'),
(0xC04C, 'TLS_ECDHE_RSA_WITH_ARIA_128_CBC_SHA256'),
(0xC04D, 'TLS_ECDHE_RSA_WITH_ARIA_256_CBC_SHA384'),
(0xC04E, 'TLS_ECDH_RSA_WITH_ARIA_128_CBC_SHA256'),
(0xC04F, 'TLS_ECDH_RSA_WITH_ARIA_256_CBC_SHA384'),
(0xC050, 'TLS_RSA_WITH_ARIA_128_GCM_SHA256'),
(0xC051, 'TLS_RSA_WITH_ARIA_256_GCM_SHA384'),
(0xC052, 'TLS_DHE_RSA_WITH_ARIA_128_GCM_SHA256'),
(0xC053, 'TLS_DHE_RSA_WITH_ARIA_256_GCM_SHA384'),
(0xC054, 'TLS_DH_RSA_WITH_ARIA_128_GCM_SHA256'),
(0xC055, 'TLS_DH_RSA_WITH_ARIA_256_GCM_SHA384'),
(0xC056, 'TLS_DHE_DSS_WITH_ARIA_128_GCM_SHA256'),
(0xC057, 'TLS_DHE_DSS_WITH_ARIA_256_GCM_SHA384'),
(0xC058, 'TLS_DH_DSS_WITH_ARIA_128_GCM_SHA256'),
(0xC059, 'TLS_DH_DSS_WITH_ARIA_256_GCM_SHA384'),
(0xC05A, 'TLS_DH_anon_WITH_ARIA_128_GCM_SHA256'),
(0xC05B, 'TLS_DH_anon_WITH_ARIA_256_GCM_SHA384'),
(0xC05C, 'TLS_ECDHE_ECDSA_WITH_ARIA_128_GCM_SHA256'),
(0xC05D, 'TLS_ECDHE_ECDSA_WITH_ARIA_256_GCM_SHA384'),
(0xC05E, 'TLS_ECDH_ECDSA_WITH_ARIA_128_GCM_SHA256'),
(0xC05F, 'TLS_ECDH_ECDSA_WITH_ARIA_256_GCM_SHA384'),
(0xC060, 'TLS_ECDHE_RSA_WITH_ARIA_128_GCM_SHA256'),
(0xC061, 'TLS_ECDHE_RSA_WITH_ARIA_256_GCM_SHA384'),
(0xC062, 'TLS_ECDH_RSA_WITH_ARIA_128_GCM_SHA256'),
(0xC063, 'TLS_ECDH_RSA_WITH_ARIA_256_GCM_SHA384'),
(0xC064, 'TLS_PSK_WITH_ARIA_128_CBC_SHA256'),
(0xC065, 'TLS_PSK_WITH_ARIA_256_CBC_SHA384'),
(0xC066, 'TLS_DHE_PSK_WITH_ARIA_128_CBC_SHA256'),
(0xC067, 'TLS_DHE_PSK_WITH_ARIA_256_CBC_SHA384'),
(0xC068, 'TLS_RSA_PSK_WITH_ARIA_128_CBC_SHA256'),
(0xC069, 'TLS_RSA_PSK_WITH_ARIA_256_CBC_SHA384'),
(0xC06A, 'TLS_PSK_WITH_ARIA_128_GCM_SHA256'),
(0xC06B, 'TLS_PSK_WITH_ARIA_256_GCM_SHA384'),
(0xC06C, 'TLS_DHE_PSK_WITH_ARIA_128_GCM_SHA256'),
(0xC06D, 'TLS_DHE_PSK_WITH_ARIA_256_GCM_SHA384'),
(0xC06E, 'TLS_RSA_PSK_WITH_ARIA_128_GCM_SHA256'),
(0xC06F, 'TLS_RSA_PSK_WITH_ARIA_256_GCM_SHA384'),
(0xC070, 'TLS_ECDHE_PSK_WITH_ARIA_128_CBC_SHA256'),
(0xC071, 'TLS_ECDHE_PSK_WITH_ARIA_256_CBC_SHA384'),
(0xC072, 'TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_CBC_SHA256'),
(0xC073, 'TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_CBC_SHA384'),
(0xC074, 'TLS_ECDH_ECDSA_WITH_CAMELLIA_128_CBC_SHA256'),
(0xC075, 'TLS_ECDH_ECDSA_WITH_CAMELLIA_256_CBC_SHA384'),
(0xC076, 'TLS_ECDHE_RSA_WITH_CAMELLIA_128_CBC_SHA256'),
(0xC077, 'TLS_ECDHE_RSA_WITH_CAMELLIA_256_CBC_SHA384'),
(0xC078, 'TLS_ECDH_RSA_WITH_CAMELLIA_128_CBC_SHA256'),
(0xC079, 'TLS_ECDH_RSA_WITH_CAMELLIA_256_CBC_SHA384'),
(0xC07A, 'TLS_RSA_WITH_CAMELLIA_128_GCM_SHA256'),
(0xC07B, 'TLS_RSA_WITH_CAMELLIA_256_GCM_SHA384'),
(0xC07C, 'TLS_DHE_RSA_WITH_CAMELLIA_128_GCM_SHA256'),
(0xC07D, 'TLS_DHE_RSA_WITH_CAMELLIA_256_GCM_SHA384'),
(0xC07E, 'TLS_DH_RSA_WITH_CAMELLIA_128_GCM_SHA256'),
(0xC07F, 'TLS_DH_RSA_WITH_CAMELLIA_256_GCM_SHA384'),
(0xC080, 'TLS_DHE_DSS_WITH_CAMELLIA_128_GCM_SHA256'),
(0xC081, 'TLS_DHE_DSS_WITH_CAMELLIA_256_GCM_SHA384'),
(0xC082, 'TLS_DH_DSS_WITH_CAMELLIA_128_GCM_SHA256'),
(0xC083, 'TLS_DH_DSS_WITH_CAMELLIA_256_GCM_SHA384'),
(0xC084, 'TLS_DH_anon_WITH_CAMELLIA_128_GCM_SHA256'),
(0xC085, 'TLS_DH_anon_WITH_CAMELLIA_256_GCM_SHA384'),
(0xC086, 'TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_GCM_SHA256'),
(0xC087, 'TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_GCM_SHA384'),
(0xC088, 'TLS_ECDH_ECDSA_WITH_CAMELLIA_128_GCM_SHA256'),
(0xC089, 'TLS_ECDH_ECDSA_WITH_CAMELLIA_256_GCM_SHA384'),
(0xC08A, 'TLS_ECDHE_RSA_WITH_CAMELLIA_128_GCM_SHA256'),
(0xC08B, 'TLS_ECDHE_RSA_WITH_CAMELLIA_256_GCM_SHA384'),
(0xC08C, 'TLS_ECDH_RSA_WITH_CAMELLIA_128_GCM_SHA256'),
(0xC08D, 'TLS_ECDH_RSA_WITH_CAMELLIA_256_GCM_SHA384'),
(0xC08E, 'TLS_PSK_WITH_CAMELLIA_128_GCM_SHA256'),
(0xC08F, 'TLS_PSK_WITH_CAMELLIA_256_GCM_SHA384'),
(0xC090, 'TLS_DHE_PSK_WITH_CAMELLIA_128_GCM_SHA256'),
(0xC091, 'TLS_DHE_PSK_WITH_CAMELLIA_256_GCM_SHA384'),
(0xC092, 'TLS_RSA_PSK_WITH_CAMELLIA_128_GCM_SHA256'),
(0xC093, 'TLS_RSA_PSK_WITH_CAMELLIA_256_GCM_SHA384'),
(0xC094, 'TLS_PSK_WITH_CAMELLIA_128_CBC_SHA256'),
(0xC095, 'TLS_PSK_WITH_CAMELLIA_256_CBC_SHA384'),
(0xC096, 'TLS_DHE_PSK_WITH_CAMELLIA_128_CBC_SHA256'),
(0xC097, 'TLS_DHE_PSK_WITH_CAMELLIA_256_CBC_SHA384'),
(0xC098, 'TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256'),
(0xC099, 'TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384'),
(0xC09A, 'TLS_ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256'),
(0xC09B, 'TLS_ECDHE_PSK_WITH_CAMELLIA_256_CBC_SHA384'),
(0xC09C, 'TLS_RSA_WITH_AES_128_CCM'),
(0xC09D, 'TLS_RSA_WITH_AES_256_CCM'),
(0xC09E, 'TLS_DHE_RSA_WITH_AES_128_CCM'),
(0xC09F, 'TLS_DHE_RSA_WITH_AES_256_CCM'),
(0xC0A0, 'TLS_RSA_WITH_AES_128_CCM_8'),
(0xC0A1, 'TLS_RSA_WITH_AES_256_CCM_8'),
(0xC0A2, 'TLS_DHE_RSA_WITH_AES_128_CCM_8'),
(0xC0A3, 'TLS_DHE_RSA_WITH_AES_256_CCM_8'),
(0xC0A4, 'TLS_PSK_WITH_AES_128_CCM'),
(0xC0A5, 'TLS_PSK_WITH_AES_256_CCM'),
(0xC0A6, 'TLS_DHE_PSK_WITH_AES_128_CCM'),
(0xC0A7, 'TLS_DHE_PSK_WITH_AES_256_CCM'),
(0xC0A8, 'TLS_PSK_WITH_AES_128_CCM_8'),
(0xC0A9, 'TLS_PSK_WITH_AES_256_CCM_8'),
(0xC0AA, 'TLS_PSK_DHE_WITH_AES_128_CCM_8'),
(0xC0AB, 'TLS_PSK_DHE_WITH_AES_256_CCM_8')
]
def get_bytes():
block = b''
for id,name in ciphers:
block += struct.pack('>H', id)
return block