~nskaggs/+junk/xenial-test

« back to all changes in this revision

Viewing changes to src/github.com/Azure/azure-sdk-for-go/core/tls/handshake_server_test.go

  • Committer: Nicholas Skaggs
  • Date: 2016-10-24 20:56:05 UTC
  • Revision ID: nicholas.skaggs@canonical.com-20161024205605-z8lta0uvuhtxwzwl
Initi with beta15

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
// Copyright 2009 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 tls
 
6
 
 
7
import (
 
8
        "bytes"
 
9
        "crypto/ecdsa"
 
10
        "crypto/elliptic"
 
11
        "crypto/rsa"
 
12
        "crypto/x509"
 
13
        "encoding/hex"
 
14
        "encoding/pem"
 
15
        "flag"
 
16
        "fmt"
 
17
        "io"
 
18
        "log"
 
19
        "math/big"
 
20
        "net"
 
21
        "os"
 
22
        "strconv"
 
23
        "strings"
 
24
        "sync"
 
25
        "testing"
 
26
        "time"
 
27
)
 
28
 
 
29
type zeroSource struct{}
 
30
 
 
31
func (zeroSource) Read(b []byte) (n int, err error) {
 
32
        for i := range b {
 
33
                b[i] = 0
 
34
        }
 
35
 
 
36
        return len(b), nil
 
37
}
 
38
 
 
39
var testConfig *Config
 
40
 
 
41
func init() {
 
42
        testConfig = new(Config)
 
43
        testConfig.Time = func() time.Time { return time.Unix(0, 0) }
 
44
        testConfig.Rand = zeroSource{}
 
45
        testConfig.Certificates = make([]Certificate, 2)
 
46
        testConfig.Certificates[0].Certificate = [][]byte{testRSACertificate}
 
47
        testConfig.Certificates[0].PrivateKey = testRSAPrivateKey
 
48
        testConfig.Certificates[1].Certificate = [][]byte{testSNICertificate}
 
49
        testConfig.Certificates[1].PrivateKey = testRSAPrivateKey
 
50
        testConfig.BuildNameToCertificate()
 
51
        testConfig.CipherSuites = []uint16{TLS_RSA_WITH_RC4_128_SHA}
 
52
        testConfig.InsecureSkipVerify = true
 
53
        testConfig.MinVersion = VersionSSL30
 
54
        testConfig.MaxVersion = VersionTLS10
 
55
}
 
56
 
 
57
func testClientHelloFailure(t *testing.T, m handshakeMessage, expected error) {
 
58
        // Create in-memory network connection,
 
59
        // send message to server.  Should return
 
60
        // expected error.
 
61
        c, s := net.Pipe()
 
62
        go func() {
 
63
                cli := Client(c, testConfig)
 
64
                if ch, ok := m.(*clientHelloMsg); ok {
 
65
                        cli.vers = ch.vers
 
66
                }
 
67
                cli.writeRecord(recordTypeHandshake, m.marshal())
 
68
                c.Close()
 
69
        }()
 
70
        err := Server(s, testConfig).Handshake()
 
71
        s.Close()
 
72
        if e, ok := err.(*net.OpError); !ok || e.Err != expected {
 
73
                t.Errorf("Got error: %s; expected: %s", err, expected)
 
74
        }
 
75
}
 
76
 
 
77
func TestSimpleError(t *testing.T) {
 
78
        testClientHelloFailure(t, &serverHelloDoneMsg{}, alertUnexpectedMessage)
 
79
}
 
80
 
 
81
var badProtocolVersions = []uint16{0x0000, 0x0005, 0x0100, 0x0105, 0x0200, 0x0205}
 
82
 
 
83
func TestRejectBadProtocolVersion(t *testing.T) {
 
84
        for _, v := range badProtocolVersions {
 
85
                testClientHelloFailure(t, &clientHelloMsg{vers: v}, alertProtocolVersion)
 
86
        }
 
87
}
 
88
 
 
89
func TestNoSuiteOverlap(t *testing.T) {
 
90
        clientHello := &clientHelloMsg{
 
91
                vers:               0x0301,
 
92
                cipherSuites:       []uint16{0xff00},
 
93
                compressionMethods: []uint8{0},
 
94
        }
 
95
        testClientHelloFailure(t, clientHello, alertHandshakeFailure)
 
96
}
 
97
 
 
98
func TestNoCompressionOverlap(t *testing.T) {
 
99
        clientHello := &clientHelloMsg{
 
100
                vers:               0x0301,
 
101
                cipherSuites:       []uint16{TLS_RSA_WITH_RC4_128_SHA},
 
102
                compressionMethods: []uint8{0xff},
 
103
        }
 
104
        testClientHelloFailure(t, clientHello, alertHandshakeFailure)
 
105
}
 
106
 
 
107
func TestTLS12OnlyCipherSuites(t *testing.T) {
 
108
        // Test that a Server doesn't select a TLS 1.2-only cipher suite when
 
109
        // the client negotiates TLS 1.1.
 
110
        var zeros [32]byte
 
111
 
 
112
        clientHello := &clientHelloMsg{
 
113
                vers:   VersionTLS11,
 
114
                random: zeros[:],
 
115
                cipherSuites: []uint16{
 
116
                        // The Server, by default, will use the client's
 
117
                        // preference order. So the GCM cipher suite
 
118
                        // will be selected unless it's excluded because
 
119
                        // of the version in this ClientHello.
 
120
                        TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
 
121
                        TLS_RSA_WITH_RC4_128_SHA,
 
122
                },
 
123
                compressionMethods: []uint8{compressionNone},
 
124
                supportedCurves:    []uint16{curveP256, curveP384, curveP521},
 
125
                supportedPoints:    []uint8{pointFormatUncompressed},
 
126
        }
 
127
 
 
128
        c, s := net.Pipe()
 
129
        var reply interface{}
 
130
        var clientErr error
 
131
        go func() {
 
132
                cli := Client(c, testConfig)
 
133
                cli.vers = clientHello.vers
 
134
                cli.writeRecord(recordTypeHandshake, clientHello.marshal())
 
135
                reply, clientErr = cli.readHandshake()
 
136
                c.Close()
 
137
        }()
 
138
        config := *testConfig
 
139
        config.CipherSuites = clientHello.cipherSuites
 
140
        Server(s, &config).Handshake()
 
141
        s.Close()
 
142
        if clientErr != nil {
 
143
                t.Fatal(clientErr)
 
144
        }
 
145
        serverHello, ok := reply.(*serverHelloMsg)
 
146
        if !ok {
 
147
                t.Fatalf("didn't get ServerHello message in reply. Got %v\n", reply)
 
148
        }
 
149
        if s := serverHello.cipherSuite; s != TLS_RSA_WITH_RC4_128_SHA {
 
150
                t.Fatalf("bad cipher suite from server: %x", s)
 
151
        }
 
152
}
 
153
 
 
154
func TestAlertForwarding(t *testing.T) {
 
155
        c, s := net.Pipe()
 
156
        go func() {
 
157
                Client(c, testConfig).sendAlert(alertUnknownCA)
 
158
                c.Close()
 
159
        }()
 
160
 
 
161
        err := Server(s, testConfig).Handshake()
 
162
        s.Close()
 
163
        if e, ok := err.(*net.OpError); !ok || e.Err != error(alertUnknownCA) {
 
164
                t.Errorf("Got error: %s; expected: %s", err, error(alertUnknownCA))
 
165
        }
 
166
}
 
167
 
 
168
func TestClose(t *testing.T) {
 
169
        c, s := net.Pipe()
 
170
        go c.Close()
 
171
 
 
172
        err := Server(s, testConfig).Handshake()
 
173
        s.Close()
 
174
        if err != io.EOF {
 
175
                t.Errorf("Got error: %s; expected: %s", err, io.EOF)
 
176
        }
 
177
}
 
178
 
 
179
func testHandshake(clientConfig, serverConfig *Config) (state ConnectionState, err error) {
 
180
        c, s := net.Pipe()
 
181
        go func() {
 
182
                cli := Client(c, clientConfig)
 
183
                cli.Handshake()
 
184
                c.Close()
 
185
        }()
 
186
        server := Server(s, serverConfig)
 
187
        err = server.Handshake()
 
188
        if err == nil {
 
189
                state = server.ConnectionState()
 
190
        }
 
191
        s.Close()
 
192
        return
 
193
}
 
194
 
 
195
func TestCipherSuitePreference(t *testing.T) {
 
196
        serverConfig := &Config{
 
197
                CipherSuites: []uint16{TLS_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_RC4_128_SHA},
 
198
                Certificates: testConfig.Certificates,
 
199
                MaxVersion:   VersionTLS11,
 
200
        }
 
201
        clientConfig := &Config{
 
202
                CipherSuites:       []uint16{TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_RC4_128_SHA},
 
203
                InsecureSkipVerify: true,
 
204
        }
 
205
        state, err := testHandshake(clientConfig, serverConfig)
 
206
        if err != nil {
 
207
                t.Fatalf("handshake failed: %s", err)
 
208
        }
 
209
        if state.CipherSuite != TLS_RSA_WITH_AES_128_CBC_SHA {
 
210
                // By default the server should use the client's preference.
 
211
                t.Fatalf("Client's preference was not used, got %x", state.CipherSuite)
 
212
        }
 
213
 
 
214
        serverConfig.PreferServerCipherSuites = true
 
215
        state, err = testHandshake(clientConfig, serverConfig)
 
216
        if err != nil {
 
217
                t.Fatalf("handshake failed: %s", err)
 
218
        }
 
219
        if state.CipherSuite != TLS_RSA_WITH_RC4_128_SHA {
 
220
                t.Fatalf("Server's preference was not used, got %x", state.CipherSuite)
 
221
        }
 
222
}
 
223
 
 
224
func testServerScript(t *testing.T, name string, serverScript [][]byte, config *Config, peers []*x509.Certificate) {
 
225
        c, s := net.Pipe()
 
226
        srv := Server(s, config)
 
227
        pchan := make(chan []*x509.Certificate, 1)
 
228
        go func() {
 
229
                srv.Write([]byte("hello, world\n"))
 
230
                srv.Close()
 
231
                s.Close()
 
232
                st := srv.ConnectionState()
 
233
                pchan <- st.PeerCertificates
 
234
        }()
 
235
 
 
236
        for i, b := range serverScript {
 
237
                if i%2 == 0 {
 
238
                        c.Write(b)
 
239
                        continue
 
240
                }
 
241
                bb := make([]byte, len(b))
 
242
                n, err := io.ReadFull(c, bb)
 
243
                if err != nil {
 
244
                        t.Fatalf("%s #%d: %s\nRead %d, wanted %d, got %x, wanted %x\n", name, i, err, n, len(bb), bb[:n], b)
 
245
                }
 
246
                if !bytes.Equal(b, bb) {
 
247
                        t.Fatalf("%s #%d: mismatch on read: got:%x want:%x", name, i, bb, b)
 
248
                }
 
249
        }
 
250
        c.Close()
 
251
 
 
252
        if peers != nil {
 
253
                gotpeers := <-pchan
 
254
                if len(peers) == len(gotpeers) {
 
255
                        for i := range peers {
 
256
                                if !peers[i].Equal(gotpeers[i]) {
 
257
                                        t.Fatalf("%s: mismatch on peer cert %d", name, i)
 
258
                                }
 
259
                        }
 
260
                } else {
 
261
                        t.Fatalf("%s: mismatch on peer list length: %d (wanted) != %d (got)", name, len(peers), len(gotpeers))
 
262
                }
 
263
        }
 
264
}
 
265
 
 
266
func TestHandshakeServerRSARC4(t *testing.T) {
 
267
        testServerScript(t, "RSA-RC4", rsaRC4ServerScript, testConfig, nil)
 
268
}
 
269
 
 
270
func TestHandshakeServerRSA3DES(t *testing.T) {
 
271
        des3Config := new(Config)
 
272
        *des3Config = *testConfig
 
273
        des3Config.CipherSuites = []uint16{TLS_RSA_WITH_3DES_EDE_CBC_SHA}
 
274
        testServerScript(t, "RSA-3DES", rsaDES3ServerScript, des3Config, nil)
 
275
}
 
276
 
 
277
func TestHandshakeServerRSAAES(t *testing.T) {
 
278
        aesConfig := new(Config)
 
279
        *aesConfig = *testConfig
 
280
        aesConfig.CipherSuites = []uint16{TLS_RSA_WITH_AES_128_CBC_SHA}
 
281
        testServerScript(t, "RSA-AES", rsaAESServerScript, aesConfig, nil)
 
282
}
 
283
 
 
284
func TestHandshakeServerECDHEECDSAAES(t *testing.T) {
 
285
        ecdsaConfig := new(Config)
 
286
        *ecdsaConfig = *testConfig
 
287
        ecdsaConfig.Certificates = make([]Certificate, 1)
 
288
        ecdsaConfig.Certificates[0].Certificate = [][]byte{testECDSACertificate}
 
289
        ecdsaConfig.Certificates[0].PrivateKey = testECDSAPrivateKey
 
290
        ecdsaConfig.BuildNameToCertificate()
 
291
        ecdsaConfig.CipherSuites = []uint16{TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA}
 
292
        testServerScript(t, "ECDHE-ECDSA-AES", ecdheECDSAAESServerScript, ecdsaConfig, nil)
 
293
}
 
294
 
 
295
func TestHandshakeServerSSLv3(t *testing.T) {
 
296
        testServerScript(t, "SSLv3", sslv3ServerScript, testConfig, nil)
 
297
}
 
298
 
 
299
// TestHandshakeServerSNI involves a client sending an SNI extension of
 
300
// "snitest.com", which happens to match the CN of testSNICertificate. The test
 
301
// verifies that the server correctly selects that certificate.
 
302
func TestHandshakeServerSNI(t *testing.T) {
 
303
        testServerScript(t, "SNI", selectCertificateBySNIScript, testConfig, nil)
 
304
}
 
305
 
 
306
func TestResumption(t *testing.T) {
 
307
        testServerScript(t, "IssueTicket", issueSessionTicketTest, testConfig, nil)
 
308
        testServerScript(t, "Resume", serverResumeTest, testConfig, nil)
 
309
}
 
310
 
 
311
func TestTLS12ClientCertServer(t *testing.T) {
 
312
        config := *testConfig
 
313
        config.MaxVersion = VersionTLS12
 
314
        config.ClientAuth = RequireAnyClientCert
 
315
        config.CipherSuites = []uint16{TLS_ECDHE_RSA_WITH_RC4_128_SHA}
 
316
 
 
317
        testServerScript(t, "TLS12", tls12ServerScript, &config, nil)
 
318
}
 
319
 
 
320
type clientauthTest struct {
 
321
        name       string
 
322
        clientauth ClientAuthType
 
323
        peers      []*x509.Certificate
 
324
        script     [][]byte
 
325
}
 
326
 
 
327
func TestClientAuthRSA(t *testing.T) {
 
328
        for _, cat := range clientauthRSATests {
 
329
                t.Log("running", cat.name)
 
330
                cfg := new(Config)
 
331
                *cfg = *testConfig
 
332
                cfg.ClientAuth = cat.clientauth
 
333
                testServerScript(t, cat.name, cat.script, cfg, cat.peers)
 
334
        }
 
335
}
 
336
 
 
337
func TestClientAuthECDSA(t *testing.T) {
 
338
        for _, cat := range clientauthECDSATests {
 
339
                t.Log("running", cat.name)
 
340
                cfg := new(Config)
 
341
                *cfg = *testConfig
 
342
                cfg.Certificates = make([]Certificate, 1)
 
343
                cfg.Certificates[0].Certificate = [][]byte{testECDSACertificate}
 
344
                cfg.Certificates[0].PrivateKey = testECDSAPrivateKey
 
345
                cfg.BuildNameToCertificate()
 
346
                cfg.CipherSuites = []uint16{TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA}
 
347
                cfg.ClientAuth = cat.clientauth
 
348
                testServerScript(t, cat.name, cat.script, cfg, cat.peers)
 
349
        }
 
350
}
 
351
 
 
352
// TestCipherSuiteCertPreferance ensures that we select an RSA ciphersuite with
 
353
// an RSA certificate and an ECDSA ciphersuite with an ECDSA certificate.
 
354
func TestCipherSuiteCertPreferance(t *testing.T) {
 
355
        var config = *testConfig
 
356
        config.CipherSuites = []uint16{TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA}
 
357
        config.MaxVersion = VersionTLS11
 
358
        config.PreferServerCipherSuites = true
 
359
        testServerScript(t, "CipherSuiteCertPreference", tls11ECDHEAESServerScript, &config, nil)
 
360
 
 
361
        config = *testConfig
 
362
        config.CipherSuites = []uint16{TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA}
 
363
        config.Certificates = []Certificate{
 
364
                Certificate{
 
365
                        Certificate: [][]byte{testECDSACertificate},
 
366
                        PrivateKey:  testECDSAPrivateKey,
 
367
                },
 
368
        }
 
369
        config.BuildNameToCertificate()
 
370
        config.PreferServerCipherSuites = true
 
371
        testServerScript(t, "CipherSuiteCertPreference2", ecdheECDSAAESServerScript, &config, nil)
 
372
}
 
373
 
 
374
func TestTLS11Server(t *testing.T) {
 
375
        var config = *testConfig
 
376
        config.CipherSuites = []uint16{TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA}
 
377
        config.MaxVersion = VersionTLS11
 
378
        testServerScript(t, "TLS11", tls11ECDHEAESServerScript, &config, nil)
 
379
}
 
380
 
 
381
func TestAESGCM(t *testing.T) {
 
382
        var config = *testConfig
 
383
        config.CipherSuites = []uint16{TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256}
 
384
        config.MaxVersion = VersionTLS12
 
385
        testServerScript(t, "AES-GCM", aesGCMServerScript, &config, nil)
 
386
}
 
387
 
 
388
// recordingConn is a net.Conn that records the traffic that passes through it.
 
389
// WriteTo can be used to produce Go code that contains the recorded traffic.
 
390
type recordingConn struct {
 
391
        net.Conn
 
392
        lock             sync.Mutex
 
393
        flows            [][]byte
 
394
        currentlyReading bool
 
395
}
 
396
 
 
397
func (r *recordingConn) Read(b []byte) (n int, err error) {
 
398
        if n, err = r.Conn.Read(b); n == 0 {
 
399
                return
 
400
        }
 
401
        b = b[:n]
 
402
 
 
403
        r.lock.Lock()
 
404
        defer r.lock.Unlock()
 
405
 
 
406
        if l := len(r.flows); l == 0 || !r.currentlyReading {
 
407
                buf := make([]byte, len(b))
 
408
                copy(buf, b)
 
409
                r.flows = append(r.flows, buf)
 
410
        } else {
 
411
                r.flows[l-1] = append(r.flows[l-1], b[:n]...)
 
412
        }
 
413
        r.currentlyReading = true
 
414
        return
 
415
}
 
416
 
 
417
func (r *recordingConn) Write(b []byte) (n int, err error) {
 
418
        if n, err = r.Conn.Write(b); n == 0 {
 
419
                return
 
420
        }
 
421
        b = b[:n]
 
422
 
 
423
        r.lock.Lock()
 
424
        defer r.lock.Unlock()
 
425
 
 
426
        if l := len(r.flows); l == 0 || r.currentlyReading {
 
427
                buf := make([]byte, len(b))
 
428
                copy(buf, b)
 
429
                r.flows = append(r.flows, buf)
 
430
        } else {
 
431
                r.flows[l-1] = append(r.flows[l-1], b[:n]...)
 
432
        }
 
433
        r.currentlyReading = false
 
434
        return
 
435
}
 
436
 
 
437
// WriteTo writes Go source code to w that contains the recorded traffic.
 
438
func (r *recordingConn) WriteTo(w io.Writer) {
 
439
        fmt.Fprintf(w, "var changeMe = [][]byte {\n")
 
440
        for _, buf := range r.flows {
 
441
                fmt.Fprintf(w, "\t{")
 
442
                for i, b := range buf {
 
443
                        if i%8 == 0 {
 
444
                                fmt.Fprintf(w, "\n\t\t")
 
445
                        }
 
446
                        fmt.Fprintf(w, "0x%02x, ", b)
 
447
                }
 
448
                fmt.Fprintf(w, "\n\t},\n")
 
449
        }
 
450
        fmt.Fprintf(w, "}\n")
 
451
}
 
452
 
 
453
var serve = flag.Bool("serve", false, "run a TLS server on :10443")
 
454
var testCipherSuites = flag.String("ciphersuites",
 
455
        "0x"+strconv.FormatInt(int64(TLS_RSA_WITH_RC4_128_SHA), 16),
 
456
        "cipher suites to accept in serving mode")
 
457
var testMinVersion = flag.String("minversion",
 
458
        "0x"+strconv.FormatInt(int64(VersionSSL30), 16),
 
459
        "minimum version to negotiate")
 
460
var testMaxVersion = flag.String("maxversion",
 
461
        "0x"+strconv.FormatInt(int64(VersionTLS10), 16),
 
462
        "maximum version to negotiate")
 
463
var testClientAuth = flag.Int("clientauth", 0, "value for tls.Config.ClientAuth")
 
464
 
 
465
func GetTestConfig() *Config {
 
466
        var config = *testConfig
 
467
 
 
468
        minVersion, err := strconv.ParseUint(*testMinVersion, 0, 64)
 
469
        if err != nil {
 
470
                panic(err)
 
471
        }
 
472
        config.MinVersion = uint16(minVersion)
 
473
        maxVersion, err := strconv.ParseUint(*testMaxVersion, 0, 64)
 
474
        if err != nil {
 
475
                panic(err)
 
476
        }
 
477
        config.MaxVersion = uint16(maxVersion)
 
478
 
 
479
        suites := strings.Split(*testCipherSuites, ",")
 
480
        config.CipherSuites = make([]uint16, len(suites))
 
481
        for i := range suites {
 
482
                suite, err := strconv.ParseUint(suites[i], 0, 64)
 
483
                if err != nil {
 
484
                        panic(err)
 
485
                }
 
486
                config.CipherSuites[i] = uint16(suite)
 
487
        }
 
488
 
 
489
        ecdsa := false
 
490
        for _, suite := range config.CipherSuites {
 
491
                switch suite {
 
492
                case TLS_ECDHE_ECDSA_WITH_RC4_128_SHA,
 
493
                        TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,
 
494
                        TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA:
 
495
                        ecdsa = true
 
496
                }
 
497
        }
 
498
        if ecdsa {
 
499
                config.Certificates = nil
 
500
                if !*connect {
 
501
                        config.Certificates = make([]Certificate, 1)
 
502
                        config.Certificates[0].Certificate = [][]byte{testECDSACertificate}
 
503
                        config.Certificates[0].PrivateKey = testECDSAPrivateKey
 
504
                }
 
505
                config.BuildNameToCertificate()
 
506
        }
 
507
 
 
508
        config.ClientAuth = ClientAuthType(*testClientAuth)
 
509
        return &config
 
510
}
 
511
 
 
512
func TestRunServer(t *testing.T) {
 
513
        if !*serve {
 
514
                return
 
515
        }
 
516
 
 
517
        config := GetTestConfig()
 
518
 
 
519
        const addr = ":10443"
 
520
        l, err := net.Listen("tcp", addr)
 
521
        if err != nil {
 
522
                t.Fatal(err)
 
523
        }
 
524
        log.Printf("Now listening for connections on %s", addr)
 
525
 
 
526
        for {
 
527
                tcpConn, err := l.Accept()
 
528
                if err != nil {
 
529
                        log.Printf("error accepting connection: %s", err)
 
530
                        break
 
531
                }
 
532
 
 
533
                record := &recordingConn{
 
534
                        Conn: tcpConn,
 
535
                }
 
536
 
 
537
                conn := Server(record, config)
 
538
                if err := conn.Handshake(); err != nil {
 
539
                        log.Printf("error from TLS handshake: %s", err)
 
540
                        break
 
541
                }
 
542
 
 
543
                _, err = conn.Write([]byte("hello, world\n"))
 
544
                if err != nil {
 
545
                        log.Printf("error from Write: %s", err)
 
546
                        continue
 
547
                }
 
548
 
 
549
                conn.Close()
 
550
 
 
551
                record.WriteTo(os.Stdout)
 
552
        }
 
553
}
 
554
 
 
555
func bigFromString(s string) *big.Int {
 
556
        ret := new(big.Int)
 
557
        ret.SetString(s, 10)
 
558
        return ret
 
559
}
 
560
 
 
561
func fromHex(s string) []byte {
 
562
        b, _ := hex.DecodeString(s)
 
563
        return b
 
564
}
 
565
 
 
566
var testRSACertificate = fromHex("308202b030820219a00302010202090085b0bba48a7fb8ca300d06092a864886f70d01010505003045310b3009060355040613024155311330110603550408130a536f6d652d53746174653121301f060355040a1318496e7465726e6574205769646769747320507479204c7464301e170d3130303432343039303933385a170d3131303432343039303933385a3045310b3009060355040613024155311330110603550408130a536f6d652d53746174653121301f060355040a1318496e7465726e6574205769646769747320507479204c746430819f300d06092a864886f70d010101050003818d0030818902818100bb79d6f517b5e5bf4610d0dc69bee62b07435ad0032d8a7a4385b71452e7a5654c2c78b8238cb5b482e5de1f953b7e62a52ca533d6fe125c7a56fcf506bffa587b263fb5cd04d3d0c921964ac7f4549f5abfef427100fe1899077f7e887d7df10439c4a22edb51c97ce3c04c3b326601cfafb11db8719a1ddbdb896baeda2d790203010001a381a73081a4301d0603551d0e04160414b1ade2855acfcb28db69ce2369ded3268e18883930750603551d23046e306c8014b1ade2855acfcb28db69ce2369ded3268e188839a149a4473045310b3009060355040613024155311330110603550408130a536f6d652d53746174653121301f060355040a1318496e7465726e6574205769646769747320507479204c746482090085b0bba48a7fb8ca300c0603551d13040530030101ff300d06092a864886f70d010105050003818100086c4524c76bb159ab0c52ccf2b014d7879d7a6475b55a9566e4c52b8eae12661feb4f38b36e60d392fdf74108b52513b1187a24fb301dbaed98b917ece7d73159db95d31d78ea50565cd5825a2d5a5f33c4b6d8c97590968c0f5298b5cd981f89205ff2a01ca31b9694dda9fd57e970e8266d71999b266e3850296c90a7bdd9")
 
567
 
 
568
var testECDSACertificate = fromHex("3082020030820162020900b8bf2d47a0d2ebf4300906072a8648ce3d04013045310b3009060355040613024155311330110603550408130a536f6d652d53746174653121301f060355040a1318496e7465726e6574205769646769747320507479204c7464301e170d3132313132323135303633325a170d3232313132303135303633325a3045310b3009060355040613024155311330110603550408130a536f6d652d53746174653121301f060355040a1318496e7465726e6574205769646769747320507479204c746430819b301006072a8648ce3d020106052b81040023038186000400c4a1edbe98f90b4873367ec316561122f23d53c33b4d213dcd6b75e6f6b0dc9adf26c1bcb287f072327cb3642f1c90bcea6823107efee325c0483a69e0286dd33700ef0462dd0da09c706283d881d36431aa9e9731bd96b068c09b23de76643f1a5c7fe9120e5858b65f70dd9bd8ead5d7f5d5ccb9b69f30665b669a20e227e5bffe3b300906072a8648ce3d040103818c0030818802420188a24febe245c5487d1bacf5ed989dae4770c05e1bb62fbdf1b64db76140d311a2ceee0b7e927eff769dc33b7ea53fcefa10e259ec472d7cacda4e970e15a06fd00242014dfcbe67139c2d050ebd3fa38c25c13313830d9406bbd4377af6ec7ac9862eddd711697f857c56defb31782be4c7780daecbbe9e4e3624317b6a0f399512078f2a")
 
569
 
 
570
var testSNICertificate = fromHex("308201f23082015da003020102020100300b06092a864886f70d01010530283110300e060355040a130741636d6520436f311430120603550403130b736e69746573742e636f6d301e170d3132303431313137343033355a170d3133303431313137343533355a30283110300e060355040a130741636d6520436f311430120603550403130b736e69746573742e636f6d30819d300b06092a864886f70d01010103818d0030818902818100bb79d6f517b5e5bf4610d0dc69bee62b07435ad0032d8a7a4385b71452e7a5654c2c78b8238cb5b482e5de1f953b7e62a52ca533d6fe125c7a56fcf506bffa587b263fb5cd04d3d0c921964ac7f4549f5abfef427100fe1899077f7e887d7df10439c4a22edb51c97ce3c04c3b326601cfafb11db8719a1ddbdb896baeda2d790203010001a3323030300e0603551d0f0101ff0404030200a0300d0603551d0e0406040401020304300f0603551d2304083006800401020304300b06092a864886f70d0101050381810089c6455f1c1f5ef8eb1ab174ee2439059f5c4259bb1a8d86cdb1d056f56a717da40e95ab90f59e8deaf627c157995094db0802266eb34fc6842dea8a4b68d9c1389103ab84fb9e1f85d9b5d23ff2312c8670fbb540148245a4ebafe264d90c8a4cf4f85b0fac12ac2fc4a3154bad52462868af96c62c6525d652b6e31845bdcc")
 
571
 
 
572
var testRSAPrivateKey = &rsa.PrivateKey{
 
573
        PublicKey: rsa.PublicKey{
 
574
                N: bigFromString("131650079503776001033793877885499001334664249354723305978524647182322416328664556247316495448366990052837680518067798333412266673813370895702118944398081598789828837447552603077848001020611640547221687072142537202428102790818451901395596882588063427854225330436740647715202971973145151161964464812406232198521"),
 
575
                E: 65537,
 
576
        },
 
577
        D: bigFromString("29354450337804273969007277378287027274721892607543397931919078829901848876371746653677097639302788129485893852488285045793268732234230875671682624082413996177431586734171663258657462237320300610850244186316880055243099640544518318093544057213190320837094958164973959123058337475052510833916491060913053867729"),
 
578
        Primes: []*big.Int{
 
579
                bigFromString("11969277782311800166562047708379380720136961987713178380670422671426759650127150688426177829077494755200794297055316163155755835813760102405344560929062149"),
 
580
                bigFromString("10998999429884441391899182616418192492905073053684657075974935218461686523870125521822756579792315215543092255516093840728890783887287417039645833477273829"),
 
581
        },
 
582
}
 
583
 
 
584
var testECDSAPrivateKey = &ecdsa.PrivateKey{
 
585
        PublicKey: ecdsa.PublicKey{
 
586
                Curve: &elliptic.CurveParams{
 
587
                        P:       bigFromString("6864797660130609714981900799081393217269435300143305409394463459185543183397656052122559640661454554977296311391480858037121987999716643812574028291115057151"),
 
588
                        N:       bigFromString("6864797660130609714981900799081393217269435300143305409394463459185543183397655394245057746333217197532963996371363321113864768612440380340372808892707005449"),
 
589
                        B:       bigFromString("1093849038073734274511112390766805569936207598951683748994586394495953116150735016013708737573759623248592132296706313309438452531591012912142327488478985984"),
 
590
                        Gx:      bigFromString("2661740802050217063228768716723360960729859168756973147706671368418802944996427808491545080627771902352094241225065558662157113545570916814161637315895999846"),
 
591
                        Gy:      bigFromString("3757180025770020463545507224491183603594455134769762486694567779615544477440556316691234405012945539562144444537289428522585666729196580810124344277578376784"),
 
592
                        BitSize: 521,
 
593
                },
 
594
                X: bigFromString("2636411247892461147287360222306590634450676461695221912739908880441342231985950069527906976759812296359387337367668045707086543273113073382714101597903639351"),
 
595
                Y: bigFromString("3204695818431246682253994090650952614555094516658732116404513121125038617915183037601737180082382202488628239201196033284060130040574800684774115478859677243"),
 
596
        },
 
597
        D: bigFromString("5477294338614160138026852784385529180817726002953041720191098180813046231640184669647735805135001309477695746518160084669446643325196003346204701381388769751"),
 
598
}
 
599
 
 
600
func loadPEMCert(in string) *x509.Certificate {
 
601
        block, _ := pem.Decode([]byte(in))
 
602
        if block.Type == "CERTIFICATE" && len(block.Headers) == 0 {
 
603
                cert, err := x509.ParseCertificate(block.Bytes)
 
604
                if err == nil {
 
605
                        return cert
 
606
                }
 
607
                panic("error parsing cert")
 
608
        }
 
609
        panic("error parsing PEM")
 
610
}
 
611
 
 
612
// Script of interaction with gnutls implementation.
 
613
// The values for this test are obtained by building and running in server mode:
 
614
//   % go test -test.run "TestRunServer" -serve
 
615
// The recorded bytes are written to stdout.
 
616
var rsaRC4ServerScript = [][]byte{
 
617
        {
 
618
                0x16, 0x03, 0x01, 0x00, 0x54, 0x01, 0x00, 0x00,
 
619
                0x50, 0x03, 0x01, 0x50, 0x77, 0x3d, 0xbd, 0x32,
 
620
                0x13, 0xd7, 0xea, 0x33, 0x65, 0x02, 0xb8, 0x70,
 
621
                0xb7, 0x84, 0xc4, 0x05, 0x1f, 0xa4, 0x24, 0xc4,
 
622
                0x91, 0x69, 0x04, 0x32, 0x96, 0xfe, 0x5b, 0x49,
 
623
                0x71, 0x60, 0x9a, 0x00, 0x00, 0x28, 0x00, 0x39,
 
624
                0x00, 0x38, 0x00, 0x35, 0x00, 0x16, 0x00, 0x13,
 
625
                0x00, 0x0a, 0x00, 0x33, 0x00, 0x32, 0x00, 0x2f,
 
626
                0x00, 0x05, 0x00, 0x04, 0x00, 0x15, 0x00, 0x12,
 
627
                0x00, 0x09, 0x00, 0x14, 0x00, 0x11, 0x00, 0x08,
 
628
                0x00, 0x06, 0x00, 0x03, 0x00, 0xff, 0x02, 0x01,
 
629
                0x00,
 
630
        },
 
631
        {
 
632
                0x16, 0x03, 0x01, 0x00, 0x2a, 0x02, 0x00, 0x00,
 
633
                0x26, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
 
634
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
635
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
636
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
637
                0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x16,
 
638
                0x03, 0x01, 0x02, 0xbe, 0x0b, 0x00, 0x02, 0xba,
 
639
                0x00, 0x02, 0xb7, 0x00, 0x02, 0xb4, 0x30, 0x82,
 
640
                0x02, 0xb0, 0x30, 0x82, 0x02, 0x19, 0xa0, 0x03,
 
641
                0x02, 0x01, 0x02, 0x02, 0x09, 0x00, 0x85, 0xb0,
 
642
                0xbb, 0xa4, 0x8a, 0x7f, 0xb8, 0xca, 0x30, 0x0d,
 
643
                0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d,
 
644
                0x01, 0x01, 0x05, 0x05, 0x00, 0x30, 0x45, 0x31,
 
645
                0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06,
 
646
                0x13, 0x02, 0x41, 0x55, 0x31, 0x13, 0x30, 0x11,
 
647
                0x06, 0x03, 0x55, 0x04, 0x08, 0x13, 0x0a, 0x53,
 
648
                0x6f, 0x6d, 0x65, 0x2d, 0x53, 0x74, 0x61, 0x74,
 
649
                0x65, 0x31, 0x21, 0x30, 0x1f, 0x06, 0x03, 0x55,
 
650
                0x04, 0x0a, 0x13, 0x18, 0x49, 0x6e, 0x74, 0x65,
 
651
                0x72, 0x6e, 0x65, 0x74, 0x20, 0x57, 0x69, 0x64,
 
652
                0x67, 0x69, 0x74, 0x73, 0x20, 0x50, 0x74, 0x79,
 
653
                0x20, 0x4c, 0x74, 0x64, 0x30, 0x1e, 0x17, 0x0d,
 
654
                0x31, 0x30, 0x30, 0x34, 0x32, 0x34, 0x30, 0x39,
 
655
                0x30, 0x39, 0x33, 0x38, 0x5a, 0x17, 0x0d, 0x31,
 
656
                0x31, 0x30, 0x34, 0x32, 0x34, 0x30, 0x39, 0x30,
 
657
                0x39, 0x33, 0x38, 0x5a, 0x30, 0x45, 0x31, 0x0b,
 
658
                0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13,
 
659
                0x02, 0x41, 0x55, 0x31, 0x13, 0x30, 0x11, 0x06,
 
660
                0x03, 0x55, 0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f,
 
661
                0x6d, 0x65, 0x2d, 0x53, 0x74, 0x61, 0x74, 0x65,
 
662
                0x31, 0x21, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x04,
 
663
                0x0a, 0x13, 0x18, 0x49, 0x6e, 0x74, 0x65, 0x72,
 
664
                0x6e, 0x65, 0x74, 0x20, 0x57, 0x69, 0x64, 0x67,
 
665
                0x69, 0x74, 0x73, 0x20, 0x50, 0x74, 0x79, 0x20,
 
666
                0x4c, 0x74, 0x64, 0x30, 0x81, 0x9f, 0x30, 0x0d,
 
667
                0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d,
 
668
                0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x81, 0x8d,
 
669
                0x00, 0x30, 0x81, 0x89, 0x02, 0x81, 0x81, 0x00,
 
670
                0xbb, 0x79, 0xd6, 0xf5, 0x17, 0xb5, 0xe5, 0xbf,
 
671
                0x46, 0x10, 0xd0, 0xdc, 0x69, 0xbe, 0xe6, 0x2b,
 
672
                0x07, 0x43, 0x5a, 0xd0, 0x03, 0x2d, 0x8a, 0x7a,
 
673
                0x43, 0x85, 0xb7, 0x14, 0x52, 0xe7, 0xa5, 0x65,
 
674
                0x4c, 0x2c, 0x78, 0xb8, 0x23, 0x8c, 0xb5, 0xb4,
 
675
                0x82, 0xe5, 0xde, 0x1f, 0x95, 0x3b, 0x7e, 0x62,
 
676
                0xa5, 0x2c, 0xa5, 0x33, 0xd6, 0xfe, 0x12, 0x5c,
 
677
                0x7a, 0x56, 0xfc, 0xf5, 0x06, 0xbf, 0xfa, 0x58,
 
678
                0x7b, 0x26, 0x3f, 0xb5, 0xcd, 0x04, 0xd3, 0xd0,
 
679
                0xc9, 0x21, 0x96, 0x4a, 0xc7, 0xf4, 0x54, 0x9f,
 
680
                0x5a, 0xbf, 0xef, 0x42, 0x71, 0x00, 0xfe, 0x18,
 
681
                0x99, 0x07, 0x7f, 0x7e, 0x88, 0x7d, 0x7d, 0xf1,
 
682
                0x04, 0x39, 0xc4, 0xa2, 0x2e, 0xdb, 0x51, 0xc9,
 
683
                0x7c, 0xe3, 0xc0, 0x4c, 0x3b, 0x32, 0x66, 0x01,
 
684
                0xcf, 0xaf, 0xb1, 0x1d, 0xb8, 0x71, 0x9a, 0x1d,
 
685
                0xdb, 0xdb, 0x89, 0x6b, 0xae, 0xda, 0x2d, 0x79,
 
686
                0x02, 0x03, 0x01, 0x00, 0x01, 0xa3, 0x81, 0xa7,
 
687
                0x30, 0x81, 0xa4, 0x30, 0x1d, 0x06, 0x03, 0x55,
 
688
                0x1d, 0x0e, 0x04, 0x16, 0x04, 0x14, 0xb1, 0xad,
 
689
                0xe2, 0x85, 0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69,
 
690
                0xce, 0x23, 0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18,
 
691
                0x88, 0x39, 0x30, 0x75, 0x06, 0x03, 0x55, 0x1d,
 
692
                0x23, 0x04, 0x6e, 0x30, 0x6c, 0x80, 0x14, 0xb1,
 
693
                0xad, 0xe2, 0x85, 0x5a, 0xcf, 0xcb, 0x28, 0xdb,
 
694
                0x69, 0xce, 0x23, 0x69, 0xde, 0xd3, 0x26, 0x8e,
 
695
                0x18, 0x88, 0x39, 0xa1, 0x49, 0xa4, 0x47, 0x30,
 
696
                0x45, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55,
 
697
                0x04, 0x06, 0x13, 0x02, 0x41, 0x55, 0x31, 0x13,
 
698
                0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x08, 0x13,
 
699
                0x0a, 0x53, 0x6f, 0x6d, 0x65, 0x2d, 0x53, 0x74,
 
700
                0x61, 0x74, 0x65, 0x31, 0x21, 0x30, 0x1f, 0x06,
 
701
                0x03, 0x55, 0x04, 0x0a, 0x13, 0x18, 0x49, 0x6e,
 
702
                0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x20, 0x57,
 
703
                0x69, 0x64, 0x67, 0x69, 0x74, 0x73, 0x20, 0x50,
 
704
                0x74, 0x79, 0x20, 0x4c, 0x74, 0x64, 0x82, 0x09,
 
705
                0x00, 0x85, 0xb0, 0xbb, 0xa4, 0x8a, 0x7f, 0xb8,
 
706
                0xca, 0x30, 0x0c, 0x06, 0x03, 0x55, 0x1d, 0x13,
 
707
                0x04, 0x05, 0x30, 0x03, 0x01, 0x01, 0xff, 0x30,
 
708
                0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7,
 
709
                0x0d, 0x01, 0x01, 0x05, 0x05, 0x00, 0x03, 0x81,
 
710
                0x81, 0x00, 0x08, 0x6c, 0x45, 0x24, 0xc7, 0x6b,
 
711
                0xb1, 0x59, 0xab, 0x0c, 0x52, 0xcc, 0xf2, 0xb0,
 
712
                0x14, 0xd7, 0x87, 0x9d, 0x7a, 0x64, 0x75, 0xb5,
 
713
                0x5a, 0x95, 0x66, 0xe4, 0xc5, 0x2b, 0x8e, 0xae,
 
714
                0x12, 0x66, 0x1f, 0xeb, 0x4f, 0x38, 0xb3, 0x6e,
 
715
                0x60, 0xd3, 0x92, 0xfd, 0xf7, 0x41, 0x08, 0xb5,
 
716
                0x25, 0x13, 0xb1, 0x18, 0x7a, 0x24, 0xfb, 0x30,
 
717
                0x1d, 0xba, 0xed, 0x98, 0xb9, 0x17, 0xec, 0xe7,
 
718
                0xd7, 0x31, 0x59, 0xdb, 0x95, 0xd3, 0x1d, 0x78,
 
719
                0xea, 0x50, 0x56, 0x5c, 0xd5, 0x82, 0x5a, 0x2d,
 
720
                0x5a, 0x5f, 0x33, 0xc4, 0xb6, 0xd8, 0xc9, 0x75,
 
721
                0x90, 0x96, 0x8c, 0x0f, 0x52, 0x98, 0xb5, 0xcd,
 
722
                0x98, 0x1f, 0x89, 0x20, 0x5f, 0xf2, 0xa0, 0x1c,
 
723
                0xa3, 0x1b, 0x96, 0x94, 0xdd, 0xa9, 0xfd, 0x57,
 
724
                0xe9, 0x70, 0xe8, 0x26, 0x6d, 0x71, 0x99, 0x9b,
 
725
                0x26, 0x6e, 0x38, 0x50, 0x29, 0x6c, 0x90, 0xa7,
 
726
                0xbd, 0xd9, 0x16, 0x03, 0x01, 0x00, 0x04, 0x0e,
 
727
                0x00, 0x00, 0x00,
 
728
        },
 
729
        {
 
730
                0x16, 0x03, 0x01, 0x00, 0x86, 0x10, 0x00, 0x00,
 
731
                0x82, 0x00, 0x80, 0x2d, 0x09, 0x7c, 0x7f, 0xfc,
 
732
                0x84, 0xce, 0xb3, 0x30, 0x9b, 0xf9, 0xb7, 0xc8,
 
733
                0xc3, 0xff, 0xee, 0x6f, 0x20, 0x8a, 0xf4, 0xfb,
 
734
                0x86, 0x55, 0x1f, 0x6a, 0xb4, 0x81, 0x50, 0x3a,
 
735
                0x46, 0x1b, 0xd3, 0xca, 0x4b, 0x11, 0xff, 0xef,
 
736
                0x02, 0xbc, 0x18, 0xb8, 0x4a, 0x7d, 0x43, 0x23,
 
737
                0x96, 0x92, 0x27, 0x7c, 0xca, 0xcf, 0xe6, 0x91,
 
738
                0xe8, 0x14, 0x97, 0x68, 0xb4, 0xe5, 0xc0, 0xc9,
 
739
                0x23, 0xdd, 0x54, 0x07, 0xa6, 0x2e, 0x8c, 0x98,
 
740
                0xfc, 0xc6, 0x8c, 0x04, 0x6b, 0x1b, 0x5f, 0xd5,
 
741
                0x3d, 0x8b, 0x6c, 0x55, 0x4f, 0x7a, 0xe6, 0x6c,
 
742
                0x74, 0x2c, 0x1e, 0x34, 0xdb, 0xfb, 0x00, 0xb1,
 
743
                0x4e, 0x10, 0x21, 0x16, 0xe0, 0x3e, 0xc5, 0x64,
 
744
                0x84, 0x28, 0x2b, 0x2b, 0x29, 0x47, 0x51, 0x34,
 
745
                0x76, 0x15, 0x20, 0x71, 0x0b, 0x30, 0xa1, 0x85,
 
746
                0xd5, 0x15, 0x18, 0x14, 0x64, 0x4b, 0x40, 0x7c,
 
747
                0x4f, 0xb3, 0x7b, 0x14, 0x03, 0x01, 0x00, 0x01,
 
748
                0x01, 0x16, 0x03, 0x01, 0x00, 0x24, 0xab, 0xee,
 
749
                0xf5, 0x97, 0x5f, 0xc6, 0x78, 0xf3, 0xc6, 0x83,
 
750
                0x5b, 0x55, 0x4f, 0xcb, 0x45, 0x3f, 0xfa, 0xf7,
 
751
                0x05, 0x02, 0xc2, 0x63, 0x87, 0x18, 0xb5, 0x9a,
 
752
                0x62, 0xe2, 0x3f, 0x88, 0x5a, 0x60, 0x61, 0x72,
 
753
                0xfa, 0x9c,
 
754
        },
 
755
        {
 
756
                0x14, 0x03, 0x01, 0x00, 0x01, 0x01, 0x16, 0x03,
 
757
                0x01, 0x00, 0x24, 0x72, 0xa4, 0xe4, 0xaa, 0xd2,
 
758
                0xc4, 0x39, 0x7e, 0x2a, 0xc1, 0x6f, 0x34, 0x42,
 
759
                0x28, 0xcb, 0x9d, 0x7a, 0x09, 0xca, 0x96, 0xad,
 
760
                0x0e, 0x11, 0x51, 0x8a, 0x06, 0xb0, 0xe9, 0xca,
 
761
                0xeb, 0xce, 0xe2, 0xd5, 0x2e, 0xc1, 0x8d, 0x17,
 
762
                0x03, 0x01, 0x00, 0x21, 0x2e, 0x61, 0x86, 0x17,
 
763
                0xdb, 0xa6, 0x30, 0xe2, 0x62, 0x06, 0x2a, 0x8b,
 
764
                0x75, 0x2c, 0x2d, 0xcf, 0xf5, 0x01, 0x11, 0x52,
 
765
                0x81, 0x38, 0xcf, 0xd5, 0xf7, 0xdc, 0x52, 0x31,
 
766
                0x1f, 0x97, 0x43, 0xc2, 0x71, 0x15, 0x03, 0x01,
 
767
                0x00, 0x16, 0xe0, 0x21, 0xfe, 0x36, 0x2e, 0x68,
 
768
                0x2c, 0xf1, 0xbe, 0x04, 0xec, 0xd4, 0xc6, 0xdd,
 
769
                0xac, 0x6f, 0x4c, 0x85, 0x32, 0x3f, 0x87, 0x1b,
 
770
        },
 
771
}
 
772
 
 
773
var rsaDES3ServerScript = [][]byte{
 
774
        {
 
775
                0x16, 0x03, 0x00, 0x00, 0xc5, 0x01, 0x00, 0x00,
 
776
                0xc1, 0x03, 0x03, 0x50, 0xae, 0x5d, 0x38, 0xec,
 
777
                0xaa, 0x2f, 0x41, 0xf9, 0xd2, 0x7b, 0xa1, 0xfd,
 
778
                0x0f, 0xff, 0x4e, 0x54, 0x0e, 0x15, 0x57, 0xaf,
 
779
                0x2c, 0x91, 0xb5, 0x35, 0x5b, 0x2e, 0xb0, 0xec,
 
780
                0x20, 0xe5, 0xd2, 0x00, 0x00, 0x50, 0xc0, 0x09,
 
781
                0xc0, 0x23, 0xc0, 0x2b, 0xc0, 0x0a, 0xc0, 0x24,
 
782
                0xc0, 0x2c, 0xc0, 0x08, 0xc0, 0x13, 0xc0, 0x27,
 
783
                0xc0, 0x2f, 0xc0, 0x14, 0xc0, 0x30, 0xc0, 0x12,
 
784
                0x00, 0x33, 0x00, 0x67, 0x00, 0x45, 0x00, 0x9e,
 
785
                0x00, 0x39, 0x00, 0x6b, 0x00, 0x88, 0x00, 0x16,
 
786
                0x00, 0x32, 0x00, 0x40, 0x00, 0x44, 0x00, 0xa2,
 
787
                0x00, 0x38, 0x00, 0x6a, 0x00, 0x87, 0x00, 0x13,
 
788
                0x00, 0x66, 0x00, 0x2f, 0x00, 0x3c, 0x00, 0x41,
 
789
                0x00, 0x9c, 0x00, 0x35, 0x00, 0x3d, 0x00, 0x84,
 
790
                0x00, 0x0a, 0x00, 0x05, 0x00, 0x04, 0x01, 0x00,
 
791
                0x00, 0x48, 0x00, 0x05, 0x00, 0x05, 0x01, 0x00,
 
792
                0x00, 0x00, 0x00, 0xff, 0x01, 0x00, 0x01, 0x00,
 
793
                0x00, 0x23, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x0c,
 
794
                0x00, 0x0a, 0x00, 0x13, 0x00, 0x15, 0x00, 0x17,
 
795
                0x00, 0x18, 0x00, 0x19, 0x00, 0x0b, 0x00, 0x02,
 
796
                0x01, 0x00, 0x00, 0x0d, 0x00, 0x1c, 0x00, 0x1a,
 
797
                0x04, 0x01, 0x04, 0x02, 0x04, 0x03, 0x05, 0x01,
 
798
                0x05, 0x03, 0x06, 0x01, 0x06, 0x03, 0x03, 0x01,
 
799
                0x03, 0x02, 0x03, 0x03, 0x02, 0x01, 0x02, 0x02,
 
800
                0x02, 0x03,
 
801
        },
 
802
        {
 
803
                0x16, 0x03, 0x01, 0x00, 0x30, 0x02, 0x00, 0x00,
 
804
                0x2c, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
 
805
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
806
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
807
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
808
                0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00,
 
809
                0x04, 0x00, 0x23, 0x00, 0x00, 0x16, 0x03, 0x01,
 
810
                0x02, 0xbe, 0x0b, 0x00, 0x02, 0xba, 0x00, 0x02,
 
811
                0xb7, 0x00, 0x02, 0xb4, 0x30, 0x82, 0x02, 0xb0,
 
812
                0x30, 0x82, 0x02, 0x19, 0xa0, 0x03, 0x02, 0x01,
 
813
                0x02, 0x02, 0x09, 0x00, 0x85, 0xb0, 0xbb, 0xa4,
 
814
                0x8a, 0x7f, 0xb8, 0xca, 0x30, 0x0d, 0x06, 0x09,
 
815
                0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
 
816
                0x05, 0x05, 0x00, 0x30, 0x45, 0x31, 0x0b, 0x30,
 
817
                0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02,
 
818
                0x41, 0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03,
 
819
                0x55, 0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d,
 
820
                0x65, 0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31,
 
821
                0x21, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a,
 
822
                0x13, 0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e,
 
823
                0x65, 0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69,
 
824
                0x74, 0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c,
 
825
                0x74, 0x64, 0x30, 0x1e, 0x17, 0x0d, 0x31, 0x30,
 
826
                0x30, 0x34, 0x32, 0x34, 0x30, 0x39, 0x30, 0x39,
 
827
                0x33, 0x38, 0x5a, 0x17, 0x0d, 0x31, 0x31, 0x30,
 
828
                0x34, 0x32, 0x34, 0x30, 0x39, 0x30, 0x39, 0x33,
 
829
                0x38, 0x5a, 0x30, 0x45, 0x31, 0x0b, 0x30, 0x09,
 
830
                0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x41,
 
831
                0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55,
 
832
                0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d, 0x65,
 
833
                0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31, 0x21,
 
834
                0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13,
 
835
                0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65,
 
836
                0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69, 0x74,
 
837
                0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c, 0x74,
 
838
                0x64, 0x30, 0x81, 0x9f, 0x30, 0x0d, 0x06, 0x09,
 
839
                0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
 
840
                0x01, 0x05, 0x00, 0x03, 0x81, 0x8d, 0x00, 0x30,
 
841
                0x81, 0x89, 0x02, 0x81, 0x81, 0x00, 0xbb, 0x79,
 
842
                0xd6, 0xf5, 0x17, 0xb5, 0xe5, 0xbf, 0x46, 0x10,
 
843
                0xd0, 0xdc, 0x69, 0xbe, 0xe6, 0x2b, 0x07, 0x43,
 
844
                0x5a, 0xd0, 0x03, 0x2d, 0x8a, 0x7a, 0x43, 0x85,
 
845
                0xb7, 0x14, 0x52, 0xe7, 0xa5, 0x65, 0x4c, 0x2c,
 
846
                0x78, 0xb8, 0x23, 0x8c, 0xb5, 0xb4, 0x82, 0xe5,
 
847
                0xde, 0x1f, 0x95, 0x3b, 0x7e, 0x62, 0xa5, 0x2c,
 
848
                0xa5, 0x33, 0xd6, 0xfe, 0x12, 0x5c, 0x7a, 0x56,
 
849
                0xfc, 0xf5, 0x06, 0xbf, 0xfa, 0x58, 0x7b, 0x26,
 
850
                0x3f, 0xb5, 0xcd, 0x04, 0xd3, 0xd0, 0xc9, 0x21,
 
851
                0x96, 0x4a, 0xc7, 0xf4, 0x54, 0x9f, 0x5a, 0xbf,
 
852
                0xef, 0x42, 0x71, 0x00, 0xfe, 0x18, 0x99, 0x07,
 
853
                0x7f, 0x7e, 0x88, 0x7d, 0x7d, 0xf1, 0x04, 0x39,
 
854
                0xc4, 0xa2, 0x2e, 0xdb, 0x51, 0xc9, 0x7c, 0xe3,
 
855
                0xc0, 0x4c, 0x3b, 0x32, 0x66, 0x01, 0xcf, 0xaf,
 
856
                0xb1, 0x1d, 0xb8, 0x71, 0x9a, 0x1d, 0xdb, 0xdb,
 
857
                0x89, 0x6b, 0xae, 0xda, 0x2d, 0x79, 0x02, 0x03,
 
858
                0x01, 0x00, 0x01, 0xa3, 0x81, 0xa7, 0x30, 0x81,
 
859
                0xa4, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e,
 
860
                0x04, 0x16, 0x04, 0x14, 0xb1, 0xad, 0xe2, 0x85,
 
861
                0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69, 0xce, 0x23,
 
862
                0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18, 0x88, 0x39,
 
863
                0x30, 0x75, 0x06, 0x03, 0x55, 0x1d, 0x23, 0x04,
 
864
                0x6e, 0x30, 0x6c, 0x80, 0x14, 0xb1, 0xad, 0xe2,
 
865
                0x85, 0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69, 0xce,
 
866
                0x23, 0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18, 0x88,
 
867
                0x39, 0xa1, 0x49, 0xa4, 0x47, 0x30, 0x45, 0x31,
 
868
                0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06,
 
869
                0x13, 0x02, 0x41, 0x55, 0x31, 0x13, 0x30, 0x11,
 
870
                0x06, 0x03, 0x55, 0x04, 0x08, 0x13, 0x0a, 0x53,
 
871
                0x6f, 0x6d, 0x65, 0x2d, 0x53, 0x74, 0x61, 0x74,
 
872
                0x65, 0x31, 0x21, 0x30, 0x1f, 0x06, 0x03, 0x55,
 
873
                0x04, 0x0a, 0x13, 0x18, 0x49, 0x6e, 0x74, 0x65,
 
874
                0x72, 0x6e, 0x65, 0x74, 0x20, 0x57, 0x69, 0x64,
 
875
                0x67, 0x69, 0x74, 0x73, 0x20, 0x50, 0x74, 0x79,
 
876
                0x20, 0x4c, 0x74, 0x64, 0x82, 0x09, 0x00, 0x85,
 
877
                0xb0, 0xbb, 0xa4, 0x8a, 0x7f, 0xb8, 0xca, 0x30,
 
878
                0x0c, 0x06, 0x03, 0x55, 0x1d, 0x13, 0x04, 0x05,
 
879
                0x30, 0x03, 0x01, 0x01, 0xff, 0x30, 0x0d, 0x06,
 
880
                0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01,
 
881
                0x01, 0x05, 0x05, 0x00, 0x03, 0x81, 0x81, 0x00,
 
882
                0x08, 0x6c, 0x45, 0x24, 0xc7, 0x6b, 0xb1, 0x59,
 
883
                0xab, 0x0c, 0x52, 0xcc, 0xf2, 0xb0, 0x14, 0xd7,
 
884
                0x87, 0x9d, 0x7a, 0x64, 0x75, 0xb5, 0x5a, 0x95,
 
885
                0x66, 0xe4, 0xc5, 0x2b, 0x8e, 0xae, 0x12, 0x66,
 
886
                0x1f, 0xeb, 0x4f, 0x38, 0xb3, 0x6e, 0x60, 0xd3,
 
887
                0x92, 0xfd, 0xf7, 0x41, 0x08, 0xb5, 0x25, 0x13,
 
888
                0xb1, 0x18, 0x7a, 0x24, 0xfb, 0x30, 0x1d, 0xba,
 
889
                0xed, 0x98, 0xb9, 0x17, 0xec, 0xe7, 0xd7, 0x31,
 
890
                0x59, 0xdb, 0x95, 0xd3, 0x1d, 0x78, 0xea, 0x50,
 
891
                0x56, 0x5c, 0xd5, 0x82, 0x5a, 0x2d, 0x5a, 0x5f,
 
892
                0x33, 0xc4, 0xb6, 0xd8, 0xc9, 0x75, 0x90, 0x96,
 
893
                0x8c, 0x0f, 0x52, 0x98, 0xb5, 0xcd, 0x98, 0x1f,
 
894
                0x89, 0x20, 0x5f, 0xf2, 0xa0, 0x1c, 0xa3, 0x1b,
 
895
                0x96, 0x94, 0xdd, 0xa9, 0xfd, 0x57, 0xe9, 0x70,
 
896
                0xe8, 0x26, 0x6d, 0x71, 0x99, 0x9b, 0x26, 0x6e,
 
897
                0x38, 0x50, 0x29, 0x6c, 0x90, 0xa7, 0xbd, 0xd9,
 
898
                0x16, 0x03, 0x01, 0x00, 0x04, 0x0e, 0x00, 0x00,
 
899
                0x00,
 
900
        },
 
901
        {
 
902
                0x16, 0x03, 0x01, 0x00, 0x86, 0x10, 0x00, 0x00,
 
903
                0x82, 0x00, 0x80, 0x51, 0x04, 0xf1, 0x7a, 0xbf,
 
904
                0xe8, 0xa5, 0x86, 0x09, 0xa7, 0xf3, 0xcc, 0x93,
 
905
                0x00, 0x10, 0x5b, 0xb8, 0xc1, 0x51, 0x0d, 0x5b,
 
906
                0xcd, 0xed, 0x26, 0x01, 0x69, 0x73, 0xf4, 0x05,
 
907
                0x8a, 0x6a, 0xc3, 0xb1, 0x9e, 0x84, 0x4e, 0x39,
 
908
                0xcf, 0x5e, 0x55, 0xa9, 0x70, 0x19, 0x96, 0x91,
 
909
                0xcd, 0x2c, 0x78, 0x3c, 0xa2, 0x6d, 0xb0, 0x49,
 
910
                0x86, 0xf6, 0xd1, 0x3a, 0xde, 0x00, 0x4b, 0xa6,
 
911
                0x25, 0xbf, 0x85, 0x39, 0xce, 0xb1, 0xcf, 0xbc,
 
912
                0x16, 0xc7, 0x66, 0xac, 0xf8, 0xd2, 0x3b, 0xd1,
 
913
                0xcc, 0x16, 0xac, 0x63, 0x3c, 0xbe, 0xd9, 0xb6,
 
914
                0x6a, 0xe4, 0x13, 0x8a, 0xf4, 0x56, 0x2f, 0x92,
 
915
                0x54, 0xd8, 0xf0, 0x84, 0x01, 0x32, 0x1a, 0xa9,
 
916
                0x2d, 0xaf, 0x82, 0x0e, 0x00, 0xfa, 0x07, 0x88,
 
917
                0xd9, 0x87, 0xe7, 0xdc, 0x9e, 0xe9, 0x72, 0x49,
 
918
                0xb8, 0xfa, 0x8c, 0x7b, 0x07, 0x0b, 0x03, 0x7c,
 
919
                0x10, 0x8c, 0x8a, 0x14, 0x03, 0x01, 0x00, 0x01,
 
920
                0x01, 0x16, 0x03, 0x01, 0x00, 0xa8, 0x61, 0xa4,
 
921
                0xf4, 0x5f, 0x8a, 0x1f, 0x5c, 0x92, 0x3f, 0x8c,
 
922
                0xdb, 0xd6, 0x10, 0xcd, 0x9e, 0xe7, 0xf0, 0xc4,
 
923
                0x3c, 0xb6, 0x1c, 0x9a, 0x56, 0x73, 0x7f, 0xa6,
 
924
                0x14, 0x24, 0xcb, 0x96, 0x1f, 0xe0, 0xaf, 0xcd,
 
925
                0x3c, 0x66, 0x43, 0xb7, 0x37, 0x65, 0x34, 0x47,
 
926
                0xf8, 0x43, 0xf1, 0xcc, 0x15, 0xb8, 0xdc, 0x35,
 
927
                0xe0, 0xa4, 0x2d, 0x78, 0x94, 0xe0, 0x02, 0xf3,
 
928
                0x76, 0x46, 0xf7, 0x9b, 0x8d, 0x0d, 0x5d, 0x0b,
 
929
                0xd3, 0xdd, 0x9a, 0x9e, 0x62, 0x2e, 0xc5, 0x98,
 
930
                0x75, 0x63, 0x0c, 0xbf, 0x8e, 0x49, 0x33, 0x23,
 
931
                0x7c, 0x00, 0xcf, 0xfb, 0xcf, 0xba, 0x0f, 0x41,
 
932
                0x39, 0x89, 0xb9, 0xcc, 0x59, 0xd0, 0x2b, 0xb6,
 
933
                0xec, 0x04, 0xe2, 0xc0, 0x52, 0xc7, 0xcf, 0x71,
 
934
                0x47, 0xff, 0x70, 0x7e, 0xa9, 0xbd, 0x1c, 0xdd,
 
935
                0x17, 0xa5, 0x6c, 0xb7, 0x10, 0x4f, 0x42, 0x18,
 
936
                0x37, 0x69, 0xa9, 0xd2, 0xb3, 0x18, 0x84, 0x92,
 
937
                0xa7, 0x47, 0x21, 0xf6, 0x95, 0x63, 0x29, 0xd6,
 
938
                0xa5, 0xb6, 0xda, 0x65, 0x67, 0x69, 0xc4, 0x26,
 
939
                0xac, 0x8b, 0x08, 0x58, 0xdd, 0x3c, 0x31, 0x20,
 
940
                0xd5, 0x0c, 0x88, 0x72, 0x18, 0x16, 0x88, 0x1e,
 
941
                0x4a, 0x0f, 0xe1, 0xcf, 0x95, 0x24,
 
942
        },
 
943
        {
 
944
                0x16, 0x03, 0x01, 0x00, 0x72, 0x04, 0x00, 0x00,
 
945
                0x6e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00,
 
946
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
947
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x65,
 
948
                0xe8, 0x4b, 0xde, 0xef, 0xba, 0x3e, 0x18, 0x1c,
 
949
                0x1e, 0x5e, 0xbc, 0x87, 0xf1, 0x87, 0x8d, 0x72,
 
950
                0xe3, 0xbe, 0x0f, 0xdf, 0xfd, 0xd0, 0xb2, 0x89,
 
951
                0xf8, 0x05, 0x9a, 0x52, 0x47, 0x77, 0x9e, 0xe8,
 
952
                0xb1, 0x1d, 0x18, 0xed, 0x6a, 0x4b, 0x63, 0x1d,
 
953
                0xf1, 0x62, 0xd2, 0x65, 0x21, 0x26, 0x73, 0xd4,
 
954
                0x35, 0x5b, 0x95, 0x89, 0x12, 0x59, 0x23, 0x8c,
 
955
                0xc3, 0xfc, 0xf9, 0x4d, 0x21, 0x79, 0xa0, 0xbd,
 
956
                0xff, 0x33, 0xa2, 0x3d, 0x0b, 0x6f, 0x89, 0xc9,
 
957
                0x23, 0xe4, 0xe7, 0x9f, 0x1d, 0x98, 0xf6, 0xed,
 
958
                0x02, 0x8d, 0xac, 0x1a, 0xf9, 0xcb, 0xa5, 0x14,
 
959
                0x03, 0x01, 0x00, 0x01, 0x01, 0x16, 0x03, 0x01,
 
960
                0x00, 0x28, 0x91, 0x56, 0x80, 0xe2, 0x6d, 0x51,
 
961
                0x88, 0x03, 0xf8, 0x49, 0xe6, 0x6a, 0x5a, 0xfb,
 
962
                0x2f, 0x0b, 0xb5, 0xa1, 0x0d, 0x63, 0x83, 0xae,
 
963
                0xb9, 0xbc, 0x05, 0xf0, 0x81, 0x00, 0x61, 0x83,
 
964
                0x38, 0xda, 0x14, 0xf6, 0xea, 0xd8, 0x78, 0x65,
 
965
                0xc7, 0x26, 0x17, 0x03, 0x01, 0x00, 0x18, 0x81,
 
966
                0x30, 0x8b, 0x22, 0x5a, 0xd3, 0x7f, 0xc8, 0xf2,
 
967
                0x8a, 0x6b, 0xa3, 0xba, 0x4d, 0xe7, 0x6e, 0xd2,
 
968
                0xfd, 0xbf, 0xf2, 0xc5, 0x28, 0xa0, 0x62, 0x17,
 
969
                0x03, 0x01, 0x00, 0x28, 0x17, 0x83, 0x3c, 0x78,
 
970
                0x18, 0xfa, 0x8d, 0x58, 0x5c, 0xaa, 0x05, 0x7d,
 
971
                0x67, 0x96, 0x11, 0x60, 0x11, 0xc0, 0x1e, 0x0d,
 
972
                0x6a, 0x6e, 0x5f, 0x1d, 0x98, 0x4b, 0xff, 0x82,
 
973
                0xee, 0x21, 0x06, 0x29, 0xd3, 0x8b, 0x80, 0x78,
 
974
                0x39, 0x05, 0x34, 0x9b, 0x15, 0x03, 0x01, 0x00,
 
975
                0x18, 0xa9, 0x38, 0x18, 0x4f, 0x9d, 0x84, 0x75,
 
976
                0x88, 0x53, 0xd6, 0x85, 0xc2, 0x15, 0x4b, 0xe3,
 
977
                0xe3, 0x35, 0x9a, 0x74, 0xc9, 0x3e, 0x13, 0xc1,
 
978
                0x8c,
 
979
        },
 
980
}
 
981
 
 
982
var rsaAESServerScript = [][]byte{
 
983
        {
 
984
                0x16, 0x03, 0x00, 0x00, 0xc5, 0x01, 0x00, 0x00,
 
985
                0xc1, 0x03, 0x03, 0x50, 0xae, 0x5c, 0xe9, 0x5e,
 
986
                0x31, 0x93, 0x82, 0xa5, 0x6f, 0x51, 0x82, 0xc8,
 
987
                0x55, 0x4f, 0x1f, 0x2e, 0x90, 0x98, 0x81, 0x13,
 
988
                0x27, 0x80, 0x68, 0xb4, 0x2d, 0xba, 0x3a, 0x76,
 
989
                0xd8, 0xd7, 0x2c, 0x00, 0x00, 0x50, 0xc0, 0x09,
 
990
                0xc0, 0x23, 0xc0, 0x2b, 0xc0, 0x0a, 0xc0, 0x24,
 
991
                0xc0, 0x2c, 0xc0, 0x08, 0xc0, 0x13, 0xc0, 0x27,
 
992
                0xc0, 0x2f, 0xc0, 0x14, 0xc0, 0x30, 0xc0, 0x12,
 
993
                0x00, 0x33, 0x00, 0x67, 0x00, 0x45, 0x00, 0x9e,
 
994
                0x00, 0x39, 0x00, 0x6b, 0x00, 0x88, 0x00, 0x16,
 
995
                0x00, 0x32, 0x00, 0x40, 0x00, 0x44, 0x00, 0xa2,
 
996
                0x00, 0x38, 0x00, 0x6a, 0x00, 0x87, 0x00, 0x13,
 
997
                0x00, 0x66, 0x00, 0x2f, 0x00, 0x3c, 0x00, 0x41,
 
998
                0x00, 0x9c, 0x00, 0x35, 0x00, 0x3d, 0x00, 0x84,
 
999
                0x00, 0x0a, 0x00, 0x05, 0x00, 0x04, 0x01, 0x00,
 
1000
                0x00, 0x48, 0x00, 0x05, 0x00, 0x05, 0x01, 0x00,
 
1001
                0x00, 0x00, 0x00, 0xff, 0x01, 0x00, 0x01, 0x00,
 
1002
                0x00, 0x23, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x0c,
 
1003
                0x00, 0x0a, 0x00, 0x13, 0x00, 0x15, 0x00, 0x17,
 
1004
                0x00, 0x18, 0x00, 0x19, 0x00, 0x0b, 0x00, 0x02,
 
1005
                0x01, 0x00, 0x00, 0x0d, 0x00, 0x1c, 0x00, 0x1a,
 
1006
                0x04, 0x01, 0x04, 0x02, 0x04, 0x03, 0x05, 0x01,
 
1007
                0x05, 0x03, 0x06, 0x01, 0x06, 0x03, 0x03, 0x01,
 
1008
                0x03, 0x02, 0x03, 0x03, 0x02, 0x01, 0x02, 0x02,
 
1009
                0x02, 0x03,
 
1010
        },
 
1011
        {
 
1012
                0x16, 0x03, 0x01, 0x00, 0x30, 0x02, 0x00, 0x00,
 
1013
                0x2c, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1014
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1015
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1016
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1017
                0x00, 0x00, 0x00, 0x00, 0x00, 0x2f, 0x00, 0x00,
 
1018
                0x04, 0x00, 0x23, 0x00, 0x00, 0x16, 0x03, 0x01,
 
1019
                0x02, 0xbe, 0x0b, 0x00, 0x02, 0xba, 0x00, 0x02,
 
1020
                0xb7, 0x00, 0x02, 0xb4, 0x30, 0x82, 0x02, 0xb0,
 
1021
                0x30, 0x82, 0x02, 0x19, 0xa0, 0x03, 0x02, 0x01,
 
1022
                0x02, 0x02, 0x09, 0x00, 0x85, 0xb0, 0xbb, 0xa4,
 
1023
                0x8a, 0x7f, 0xb8, 0xca, 0x30, 0x0d, 0x06, 0x09,
 
1024
                0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
 
1025
                0x05, 0x05, 0x00, 0x30, 0x45, 0x31, 0x0b, 0x30,
 
1026
                0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02,
 
1027
                0x41, 0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03,
 
1028
                0x55, 0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d,
 
1029
                0x65, 0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31,
 
1030
                0x21, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a,
 
1031
                0x13, 0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e,
 
1032
                0x65, 0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69,
 
1033
                0x74, 0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c,
 
1034
                0x74, 0x64, 0x30, 0x1e, 0x17, 0x0d, 0x31, 0x30,
 
1035
                0x30, 0x34, 0x32, 0x34, 0x30, 0x39, 0x30, 0x39,
 
1036
                0x33, 0x38, 0x5a, 0x17, 0x0d, 0x31, 0x31, 0x30,
 
1037
                0x34, 0x32, 0x34, 0x30, 0x39, 0x30, 0x39, 0x33,
 
1038
                0x38, 0x5a, 0x30, 0x45, 0x31, 0x0b, 0x30, 0x09,
 
1039
                0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x41,
 
1040
                0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55,
 
1041
                0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d, 0x65,
 
1042
                0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31, 0x21,
 
1043
                0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13,
 
1044
                0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65,
 
1045
                0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69, 0x74,
 
1046
                0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c, 0x74,
 
1047
                0x64, 0x30, 0x81, 0x9f, 0x30, 0x0d, 0x06, 0x09,
 
1048
                0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
 
1049
                0x01, 0x05, 0x00, 0x03, 0x81, 0x8d, 0x00, 0x30,
 
1050
                0x81, 0x89, 0x02, 0x81, 0x81, 0x00, 0xbb, 0x79,
 
1051
                0xd6, 0xf5, 0x17, 0xb5, 0xe5, 0xbf, 0x46, 0x10,
 
1052
                0xd0, 0xdc, 0x69, 0xbe, 0xe6, 0x2b, 0x07, 0x43,
 
1053
                0x5a, 0xd0, 0x03, 0x2d, 0x8a, 0x7a, 0x43, 0x85,
 
1054
                0xb7, 0x14, 0x52, 0xe7, 0xa5, 0x65, 0x4c, 0x2c,
 
1055
                0x78, 0xb8, 0x23, 0x8c, 0xb5, 0xb4, 0x82, 0xe5,
 
1056
                0xde, 0x1f, 0x95, 0x3b, 0x7e, 0x62, 0xa5, 0x2c,
 
1057
                0xa5, 0x33, 0xd6, 0xfe, 0x12, 0x5c, 0x7a, 0x56,
 
1058
                0xfc, 0xf5, 0x06, 0xbf, 0xfa, 0x58, 0x7b, 0x26,
 
1059
                0x3f, 0xb5, 0xcd, 0x04, 0xd3, 0xd0, 0xc9, 0x21,
 
1060
                0x96, 0x4a, 0xc7, 0xf4, 0x54, 0x9f, 0x5a, 0xbf,
 
1061
                0xef, 0x42, 0x71, 0x00, 0xfe, 0x18, 0x99, 0x07,
 
1062
                0x7f, 0x7e, 0x88, 0x7d, 0x7d, 0xf1, 0x04, 0x39,
 
1063
                0xc4, 0xa2, 0x2e, 0xdb, 0x51, 0xc9, 0x7c, 0xe3,
 
1064
                0xc0, 0x4c, 0x3b, 0x32, 0x66, 0x01, 0xcf, 0xaf,
 
1065
                0xb1, 0x1d, 0xb8, 0x71, 0x9a, 0x1d, 0xdb, 0xdb,
 
1066
                0x89, 0x6b, 0xae, 0xda, 0x2d, 0x79, 0x02, 0x03,
 
1067
                0x01, 0x00, 0x01, 0xa3, 0x81, 0xa7, 0x30, 0x81,
 
1068
                0xa4, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e,
 
1069
                0x04, 0x16, 0x04, 0x14, 0xb1, 0xad, 0xe2, 0x85,
 
1070
                0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69, 0xce, 0x23,
 
1071
                0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18, 0x88, 0x39,
 
1072
                0x30, 0x75, 0x06, 0x03, 0x55, 0x1d, 0x23, 0x04,
 
1073
                0x6e, 0x30, 0x6c, 0x80, 0x14, 0xb1, 0xad, 0xe2,
 
1074
                0x85, 0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69, 0xce,
 
1075
                0x23, 0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18, 0x88,
 
1076
                0x39, 0xa1, 0x49, 0xa4, 0x47, 0x30, 0x45, 0x31,
 
1077
                0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06,
 
1078
                0x13, 0x02, 0x41, 0x55, 0x31, 0x13, 0x30, 0x11,
 
1079
                0x06, 0x03, 0x55, 0x04, 0x08, 0x13, 0x0a, 0x53,
 
1080
                0x6f, 0x6d, 0x65, 0x2d, 0x53, 0x74, 0x61, 0x74,
 
1081
                0x65, 0x31, 0x21, 0x30, 0x1f, 0x06, 0x03, 0x55,
 
1082
                0x04, 0x0a, 0x13, 0x18, 0x49, 0x6e, 0x74, 0x65,
 
1083
                0x72, 0x6e, 0x65, 0x74, 0x20, 0x57, 0x69, 0x64,
 
1084
                0x67, 0x69, 0x74, 0x73, 0x20, 0x50, 0x74, 0x79,
 
1085
                0x20, 0x4c, 0x74, 0x64, 0x82, 0x09, 0x00, 0x85,
 
1086
                0xb0, 0xbb, 0xa4, 0x8a, 0x7f, 0xb8, 0xca, 0x30,
 
1087
                0x0c, 0x06, 0x03, 0x55, 0x1d, 0x13, 0x04, 0x05,
 
1088
                0x30, 0x03, 0x01, 0x01, 0xff, 0x30, 0x0d, 0x06,
 
1089
                0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01,
 
1090
                0x01, 0x05, 0x05, 0x00, 0x03, 0x81, 0x81, 0x00,
 
1091
                0x08, 0x6c, 0x45, 0x24, 0xc7, 0x6b, 0xb1, 0x59,
 
1092
                0xab, 0x0c, 0x52, 0xcc, 0xf2, 0xb0, 0x14, 0xd7,
 
1093
                0x87, 0x9d, 0x7a, 0x64, 0x75, 0xb5, 0x5a, 0x95,
 
1094
                0x66, 0xe4, 0xc5, 0x2b, 0x8e, 0xae, 0x12, 0x66,
 
1095
                0x1f, 0xeb, 0x4f, 0x38, 0xb3, 0x6e, 0x60, 0xd3,
 
1096
                0x92, 0xfd, 0xf7, 0x41, 0x08, 0xb5, 0x25, 0x13,
 
1097
                0xb1, 0x18, 0x7a, 0x24, 0xfb, 0x30, 0x1d, 0xba,
 
1098
                0xed, 0x98, 0xb9, 0x17, 0xec, 0xe7, 0xd7, 0x31,
 
1099
                0x59, 0xdb, 0x95, 0xd3, 0x1d, 0x78, 0xea, 0x50,
 
1100
                0x56, 0x5c, 0xd5, 0x82, 0x5a, 0x2d, 0x5a, 0x5f,
 
1101
                0x33, 0xc4, 0xb6, 0xd8, 0xc9, 0x75, 0x90, 0x96,
 
1102
                0x8c, 0x0f, 0x52, 0x98, 0xb5, 0xcd, 0x98, 0x1f,
 
1103
                0x89, 0x20, 0x5f, 0xf2, 0xa0, 0x1c, 0xa3, 0x1b,
 
1104
                0x96, 0x94, 0xdd, 0xa9, 0xfd, 0x57, 0xe9, 0x70,
 
1105
                0xe8, 0x26, 0x6d, 0x71, 0x99, 0x9b, 0x26, 0x6e,
 
1106
                0x38, 0x50, 0x29, 0x6c, 0x90, 0xa7, 0xbd, 0xd9,
 
1107
                0x16, 0x03, 0x01, 0x00, 0x04, 0x0e, 0x00, 0x00,
 
1108
                0x00,
 
1109
        },
 
1110
        {
 
1111
                0x16, 0x03, 0x01, 0x00, 0x86, 0x10, 0x00, 0x00,
 
1112
                0x82, 0x00, 0x80, 0x51, 0x2e, 0xec, 0x0d, 0x86,
 
1113
                0xf3, 0x9f, 0xf2, 0x77, 0x04, 0x27, 0x2b, 0x0e,
 
1114
                0x9c, 0xab, 0x35, 0x84, 0x65, 0xff, 0x36, 0xef,
 
1115
                0xc0, 0x08, 0xc9, 0x1d, 0x9f, 0x29, 0xae, 0x8d,
 
1116
                0xc5, 0x66, 0x81, 0x31, 0x92, 0x5e, 0x3d, 0xac,
 
1117
                0xaa, 0x37, 0x28, 0x2c, 0x06, 0x91, 0xa6, 0xc2,
 
1118
                0xd0, 0x83, 0x34, 0x24, 0x1c, 0x88, 0xfc, 0x0a,
 
1119
                0xcf, 0xbf, 0xc2, 0x94, 0xe2, 0xed, 0xa7, 0x6a,
 
1120
                0xa8, 0x8d, 0x3d, 0xf7, 0x06, 0x7d, 0x69, 0xf8,
 
1121
                0x0d, 0xb2, 0xf7, 0xe4, 0x45, 0xcb, 0x0a, 0x25,
 
1122
                0xcb, 0xb2, 0x2e, 0x38, 0x9a, 0x84, 0x75, 0xe8,
 
1123
                0xe1, 0x42, 0x39, 0xa2, 0x18, 0x0e, 0x48, 0xca,
 
1124
                0x33, 0x16, 0x4e, 0xf6, 0x2f, 0xec, 0x07, 0xe7,
 
1125
                0x57, 0xe1, 0x20, 0x40, 0x40, 0x6d, 0x4e, 0x29,
 
1126
                0x04, 0x1a, 0x8c, 0x99, 0xfb, 0x19, 0x3c, 0xaa,
 
1127
                0x75, 0x64, 0xd3, 0xa6, 0xe6, 0xed, 0x3f, 0x5a,
 
1128
                0xd2, 0xc9, 0x80, 0x14, 0x03, 0x01, 0x00, 0x01,
 
1129
                0x01, 0x16, 0x03, 0x01, 0x01, 0x10, 0xe9, 0x9e,
 
1130
                0x06, 0x92, 0x18, 0xbf, 0x5e, 0xaf, 0x33, 0xc1,
 
1131
                0xbf, 0x0e, 0x12, 0x07, 0x48, 0x4f, 0x6b, 0x6c,
 
1132
                0xf5, 0x23, 0x5e, 0x87, 0xa7, 0xd3, 0x50, 0x79,
 
1133
                0x38, 0xdc, 0xe0, 0x49, 0xd3, 0x81, 0x21, 0x12,
 
1134
                0xd0, 0x3d, 0x9a, 0xfb, 0x83, 0xc1, 0x8b, 0xfc,
 
1135
                0x14, 0xd5, 0xd5, 0xa7, 0xa3, 0x34, 0x14, 0x71,
 
1136
                0xbe, 0xea, 0x37, 0x18, 0x12, 0x7f, 0x41, 0xfb,
 
1137
                0xc5, 0x51, 0x17, 0x9d, 0x96, 0x58, 0x14, 0xfb,
 
1138
                0x4f, 0xd7, 0xd3, 0x15, 0x0f, 0xec, 0x5a, 0x0d,
 
1139
                0x35, 0xbb, 0x3c, 0x81, 0x5b, 0x3f, 0xdf, 0x52,
 
1140
                0xa4, 0x4c, 0xcd, 0x13, 0xe1, 0x10, 0x37, 0x34,
 
1141
                0xbf, 0xb4, 0x80, 0x1e, 0x8d, 0xe2, 0xc3, 0x7a,
 
1142
                0x0f, 0x7b, 0x7d, 0x23, 0xeb, 0xd0, 0x99, 0x69,
 
1143
                0xad, 0x0a, 0x2d, 0xb3, 0x6c, 0xd6, 0x80, 0x11,
 
1144
                0x7f, 0x6c, 0xed, 0x1b, 0xcd, 0x08, 0x22, 0x56,
 
1145
                0x90, 0x0e, 0xa4, 0xc3, 0x29, 0x33, 0x96, 0x30,
 
1146
                0x34, 0x94, 0xa1, 0xeb, 0x9c, 0x1b, 0x5a, 0xd1,
 
1147
                0x03, 0x61, 0xf9, 0xdd, 0xf3, 0x64, 0x8a, 0xfd,
 
1148
                0x5f, 0x44, 0xdb, 0x2e, 0xa7, 0xfd, 0xe1, 0x1a,
 
1149
                0x66, 0xc5, 0x01, 0x9c, 0xc7, 0xd1, 0xc4, 0xd3,
 
1150
                0xea, 0x14, 0x3c, 0xed, 0x74, 0xbb, 0x1b, 0x97,
 
1151
                0x8f, 0xf1, 0x29, 0x39, 0x33, 0x92, 0x93, 0x4e,
 
1152
                0xf5, 0x87, 0x91, 0x61, 0x65, 0x8d, 0x27, 0x8d,
 
1153
                0x76, 0xc1, 0xfa, 0x6a, 0x99, 0x80, 0xb1, 0x9b,
 
1154
                0x29, 0x53, 0xce, 0x3e, 0xb6, 0x9a, 0xce, 0x3c,
 
1155
                0x19, 0x5e, 0x48, 0x83, 0xaa, 0xa7, 0x66, 0x98,
 
1156
                0x59, 0xf4, 0xbb, 0xf2, 0xbc, 0xd9, 0xc5, 0x9a,
 
1157
                0xc8, 0x2c, 0x63, 0x58, 0xd5, 0xd4, 0xbc, 0x03,
 
1158
                0xa9, 0x06, 0xa9, 0x80, 0x0d, 0xb3, 0x46, 0x2d,
 
1159
                0xe3, 0xc6, 0xaf, 0x1a, 0x39, 0x18, 0x7e, 0x1e,
 
1160
                0x83, 0x80, 0x46, 0x11, 0xd2, 0x13, 0x9f, 0xda,
 
1161
                0xfc, 0x2d, 0x42, 0xaa, 0x5a, 0x1d, 0x4c, 0x31,
 
1162
                0xe5, 0x58, 0x78, 0x5e, 0xe2, 0x04, 0xd6, 0x23,
 
1163
                0x7f, 0x3f, 0x06, 0xc0, 0x54, 0xf8,
 
1164
        },
 
1165
        {
 
1166
                0x16, 0x03, 0x01, 0x00, 0x72, 0x04, 0x00, 0x00,
 
1167
                0x6e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00,
 
1168
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1169
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x65,
 
1170
                0xe8, 0x4b, 0xfb, 0xef, 0xba, 0xed, 0xc5, 0x36,
 
1171
                0xc8, 0x5a, 0x41, 0x3f, 0x05, 0xfa, 0xfe, 0x48,
 
1172
                0xc3, 0x91, 0x12, 0x8b, 0xe8, 0x32, 0x6a, 0x9f,
 
1173
                0xdc, 0x97, 0xe2, 0x77, 0xb9, 0x96, 0x2d, 0xd4,
 
1174
                0xe5, 0xbd, 0xa1, 0xfd, 0x94, 0xbb, 0x74, 0x63,
 
1175
                0xb1, 0x0c, 0x38, 0xbc, 0x6f, 0x69, 0xaf, 0xa3,
 
1176
                0x46, 0x9c, 0x96, 0x41, 0xde, 0x59, 0x23, 0xff,
 
1177
                0x15, 0x6b, 0x3a, 0xef, 0x91, 0x6d, 0x92, 0x44,
 
1178
                0xdc, 0x72, 0x1f, 0x40, 0x3d, 0xb5, 0x34, 0x8f,
 
1179
                0x2a, 0xac, 0x21, 0x69, 0x05, 0x6f, 0xb2, 0x60,
 
1180
                0x32, 0x5d, 0x3d, 0x97, 0xb4, 0x24, 0x99, 0x14,
 
1181
                0x03, 0x01, 0x00, 0x01, 0x01, 0x16, 0x03, 0x01,
 
1182
                0x00, 0x30, 0x68, 0x27, 0x97, 0xca, 0x63, 0x09,
 
1183
                0x22, 0xed, 0x0e, 0x61, 0x7c, 0x76, 0x31, 0x9c,
 
1184
                0xbe, 0x27, 0xc9, 0xe6, 0x09, 0xc3, 0xc3, 0xc2,
 
1185
                0xf4, 0xa2, 0x32, 0xba, 0x7c, 0xf2, 0x0f, 0xb8,
 
1186
                0x3d, 0xcb, 0xe2, 0x4c, 0xc0, 0x7d, 0x8e, 0x5b,
 
1187
                0x5a, 0xed, 0x05, 0x5c, 0x15, 0x96, 0x69, 0xc2,
 
1188
                0x6f, 0x5f, 0x17, 0x03, 0x01, 0x00, 0x20, 0x5a,
 
1189
                0xfe, 0x0b, 0xe1, 0x6f, 0xa8, 0x54, 0x19, 0x78,
 
1190
                0xca, 0xba, 0x2e, 0x1e, 0x2e, 0xe1, 0x5d, 0x17,
 
1191
                0xe5, 0x97, 0x05, 0x2c, 0x08, 0x0c, 0xff, 0xa8,
 
1192
                0x59, 0xa9, 0xde, 0x5e, 0x21, 0x34, 0x04, 0x17,
 
1193
                0x03, 0x01, 0x00, 0x30, 0x86, 0xb1, 0x3f, 0x88,
 
1194
                0x43, 0xf0, 0x07, 0xee, 0xa8, 0xf4, 0xbc, 0xe7,
 
1195
                0x5f, 0xc6, 0x8c, 0x86, 0x4c, 0xca, 0x70, 0x88,
 
1196
                0xcc, 0x6a, 0xb4, 0x3d, 0x40, 0xe8, 0x54, 0x89,
 
1197
                0x19, 0x43, 0x1f, 0x76, 0xe2, 0xac, 0xb2, 0x5b,
 
1198
                0x92, 0xf8, 0x57, 0x39, 0x2a, 0xc3, 0x6d, 0x13,
 
1199
                0x45, 0xfa, 0x36, 0x9e, 0x15, 0x03, 0x01, 0x00,
 
1200
                0x20, 0x6d, 0xed, 0x7b, 0x59, 0x28, 0x2a, 0x27,
 
1201
                0x04, 0x15, 0x07, 0x4e, 0xeb, 0x13, 0x00, 0xe3,
 
1202
                0x3a, 0x3f, 0xf8, 0xaa, 0x2b, 0x3b, 0x1a, 0x8c,
 
1203
                0x12, 0xd6, 0x4c, 0xec, 0x2a, 0xaf, 0x33, 0x60,
 
1204
                0xaf,
 
1205
        },
 
1206
}
 
1207
 
 
1208
// Generated using:
 
1209
// $ go test -test.run TestRunServer -serve -ciphersuites=0xc00a
 
1210
// $ openssl s_client -host 127.0.0.1 -port 10443 -cipher ECDHE-ECDSA-AES256-SHA
 
1211
var ecdheECDSAAESServerScript = [][]byte{
 
1212
        {
 
1213
                0x16, 0x03, 0x01, 0x00, 0xa0, 0x01, 0x00, 0x00,
 
1214
                0x9c, 0x03, 0x03, 0x50, 0xd7, 0x18, 0x31, 0x49,
 
1215
                0xde, 0x19, 0x8d, 0x08, 0x5c, 0x4b, 0x60, 0x67,
 
1216
                0x0f, 0xfe, 0xd0, 0x62, 0xf9, 0x31, 0x48, 0x17,
 
1217
                0x9e, 0x50, 0xc1, 0xd8, 0x35, 0x24, 0x0e, 0xa6,
 
1218
                0x09, 0x06, 0x51, 0x00, 0x00, 0x04, 0xc0, 0x0a,
 
1219
                0x00, 0xff, 0x01, 0x00, 0x00, 0x6f, 0x00, 0x0b,
 
1220
                0x00, 0x04, 0x03, 0x00, 0x01, 0x02, 0x00, 0x0a,
 
1221
                0x00, 0x34, 0x00, 0x32, 0x00, 0x0e, 0x00, 0x0d,
 
1222
                0x00, 0x19, 0x00, 0x0b, 0x00, 0x0c, 0x00, 0x18,
 
1223
                0x00, 0x09, 0x00, 0x0a, 0x00, 0x16, 0x00, 0x17,
 
1224
                0x00, 0x08, 0x00, 0x06, 0x00, 0x07, 0x00, 0x14,
 
1225
                0x00, 0x15, 0x00, 0x04, 0x00, 0x05, 0x00, 0x12,
 
1226
                0x00, 0x13, 0x00, 0x01, 0x00, 0x02, 0x00, 0x03,
 
1227
                0x00, 0x0f, 0x00, 0x10, 0x00, 0x11, 0x00, 0x23,
 
1228
                0x00, 0x00, 0x00, 0x0d, 0x00, 0x22, 0x00, 0x20,
 
1229
                0x06, 0x01, 0x06, 0x02, 0x06, 0x03, 0x05, 0x01,
 
1230
                0x05, 0x02, 0x05, 0x03, 0x04, 0x01, 0x04, 0x02,
 
1231
                0x04, 0x03, 0x03, 0x01, 0x03, 0x02, 0x03, 0x03,
 
1232
                0x02, 0x01, 0x02, 0x02, 0x02, 0x03, 0x01, 0x01,
 
1233
                0x00, 0x0f, 0x00, 0x01, 0x01,
 
1234
        },
 
1235
        {
 
1236
                0x16, 0x03, 0x01, 0x00, 0x30, 0x02, 0x00, 0x00,
 
1237
                0x2c, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1238
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1239
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1240
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1241
                0x00, 0x00, 0x00, 0x00, 0xc0, 0x0a, 0x00, 0x00,
 
1242
                0x04, 0x00, 0x23, 0x00, 0x00, 0x16, 0x03, 0x01,
 
1243
                0x02, 0x0e, 0x0b, 0x00, 0x02, 0x0a, 0x00, 0x02,
 
1244
                0x07, 0x00, 0x02, 0x04, 0x30, 0x82, 0x02, 0x00,
 
1245
                0x30, 0x82, 0x01, 0x62, 0x02, 0x09, 0x00, 0xb8,
 
1246
                0xbf, 0x2d, 0x47, 0xa0, 0xd2, 0xeb, 0xf4, 0x30,
 
1247
                0x09, 0x06, 0x07, 0x2a, 0x86, 0x48, 0xce, 0x3d,
 
1248
                0x04, 0x01, 0x30, 0x45, 0x31, 0x0b, 0x30, 0x09,
 
1249
                0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x41,
 
1250
                0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55,
 
1251
                0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d, 0x65,
 
1252
                0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31, 0x21,
 
1253
                0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13,
 
1254
                0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65,
 
1255
                0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69, 0x74,
 
1256
                0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c, 0x74,
 
1257
                0x64, 0x30, 0x1e, 0x17, 0x0d, 0x31, 0x32, 0x31,
 
1258
                0x31, 0x32, 0x32, 0x31, 0x35, 0x30, 0x36, 0x33,
 
1259
                0x32, 0x5a, 0x17, 0x0d, 0x32, 0x32, 0x31, 0x31,
 
1260
                0x32, 0x30, 0x31, 0x35, 0x30, 0x36, 0x33, 0x32,
 
1261
                0x5a, 0x30, 0x45, 0x31, 0x0b, 0x30, 0x09, 0x06,
 
1262
                0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x41, 0x55,
 
1263
                0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04,
 
1264
                0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d, 0x65, 0x2d,
 
1265
                0x53, 0x74, 0x61, 0x74, 0x65, 0x31, 0x21, 0x30,
 
1266
                0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13, 0x18,
 
1267
                0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74,
 
1268
                0x20, 0x57, 0x69, 0x64, 0x67, 0x69, 0x74, 0x73,
 
1269
                0x20, 0x50, 0x74, 0x79, 0x20, 0x4c, 0x74, 0x64,
 
1270
                0x30, 0x81, 0x9b, 0x30, 0x10, 0x06, 0x07, 0x2a,
 
1271
                0x86, 0x48, 0xce, 0x3d, 0x02, 0x01, 0x06, 0x05,
 
1272
                0x2b, 0x81, 0x04, 0x00, 0x23, 0x03, 0x81, 0x86,
 
1273
                0x00, 0x04, 0x00, 0xc4, 0xa1, 0xed, 0xbe, 0x98,
 
1274
                0xf9, 0x0b, 0x48, 0x73, 0x36, 0x7e, 0xc3, 0x16,
 
1275
                0x56, 0x11, 0x22, 0xf2, 0x3d, 0x53, 0xc3, 0x3b,
 
1276
                0x4d, 0x21, 0x3d, 0xcd, 0x6b, 0x75, 0xe6, 0xf6,
 
1277
                0xb0, 0xdc, 0x9a, 0xdf, 0x26, 0xc1, 0xbc, 0xb2,
 
1278
                0x87, 0xf0, 0x72, 0x32, 0x7c, 0xb3, 0x64, 0x2f,
 
1279
                0x1c, 0x90, 0xbc, 0xea, 0x68, 0x23, 0x10, 0x7e,
 
1280
                0xfe, 0xe3, 0x25, 0xc0, 0x48, 0x3a, 0x69, 0xe0,
 
1281
                0x28, 0x6d, 0xd3, 0x37, 0x00, 0xef, 0x04, 0x62,
 
1282
                0xdd, 0x0d, 0xa0, 0x9c, 0x70, 0x62, 0x83, 0xd8,
 
1283
                0x81, 0xd3, 0x64, 0x31, 0xaa, 0x9e, 0x97, 0x31,
 
1284
                0xbd, 0x96, 0xb0, 0x68, 0xc0, 0x9b, 0x23, 0xde,
 
1285
                0x76, 0x64, 0x3f, 0x1a, 0x5c, 0x7f, 0xe9, 0x12,
 
1286
                0x0e, 0x58, 0x58, 0xb6, 0x5f, 0x70, 0xdd, 0x9b,
 
1287
                0xd8, 0xea, 0xd5, 0xd7, 0xf5, 0xd5, 0xcc, 0xb9,
 
1288
                0xb6, 0x9f, 0x30, 0x66, 0x5b, 0x66, 0x9a, 0x20,
 
1289
                0xe2, 0x27, 0xe5, 0xbf, 0xfe, 0x3b, 0x30, 0x09,
 
1290
                0x06, 0x07, 0x2a, 0x86, 0x48, 0xce, 0x3d, 0x04,
 
1291
                0x01, 0x03, 0x81, 0x8c, 0x00, 0x30, 0x81, 0x88,
 
1292
                0x02, 0x42, 0x01, 0x88, 0xa2, 0x4f, 0xeb, 0xe2,
 
1293
                0x45, 0xc5, 0x48, 0x7d, 0x1b, 0xac, 0xf5, 0xed,
 
1294
                0x98, 0x9d, 0xae, 0x47, 0x70, 0xc0, 0x5e, 0x1b,
 
1295
                0xb6, 0x2f, 0xbd, 0xf1, 0xb6, 0x4d, 0xb7, 0x61,
 
1296
                0x40, 0xd3, 0x11, 0xa2, 0xce, 0xee, 0x0b, 0x7e,
 
1297
                0x92, 0x7e, 0xff, 0x76, 0x9d, 0xc3, 0x3b, 0x7e,
 
1298
                0xa5, 0x3f, 0xce, 0xfa, 0x10, 0xe2, 0x59, 0xec,
 
1299
                0x47, 0x2d, 0x7c, 0xac, 0xda, 0x4e, 0x97, 0x0e,
 
1300
                0x15, 0xa0, 0x6f, 0xd0, 0x02, 0x42, 0x01, 0x4d,
 
1301
                0xfc, 0xbe, 0x67, 0x13, 0x9c, 0x2d, 0x05, 0x0e,
 
1302
                0xbd, 0x3f, 0xa3, 0x8c, 0x25, 0xc1, 0x33, 0x13,
 
1303
                0x83, 0x0d, 0x94, 0x06, 0xbb, 0xd4, 0x37, 0x7a,
 
1304
                0xf6, 0xec, 0x7a, 0xc9, 0x86, 0x2e, 0xdd, 0xd7,
 
1305
                0x11, 0x69, 0x7f, 0x85, 0x7c, 0x56, 0xde, 0xfb,
 
1306
                0x31, 0x78, 0x2b, 0xe4, 0xc7, 0x78, 0x0d, 0xae,
 
1307
                0xcb, 0xbe, 0x9e, 0x4e, 0x36, 0x24, 0x31, 0x7b,
 
1308
                0x6a, 0x0f, 0x39, 0x95, 0x12, 0x07, 0x8f, 0x2a,
 
1309
                0x16, 0x03, 0x01, 0x01, 0x1a, 0x0c, 0x00, 0x01,
 
1310
                0x16, 0x03, 0x00, 0x19, 0x85, 0x04, 0x01, 0x39,
 
1311
                0xdc, 0xee, 0x44, 0x17, 0x5e, 0xdb, 0xd7, 0x27,
 
1312
                0xaf, 0xb6, 0x56, 0xd9, 0xb4, 0x43, 0x5a, 0x99,
 
1313
                0xcf, 0xaa, 0x31, 0x37, 0x0c, 0x6f, 0x3a, 0xa0,
 
1314
                0xf8, 0x53, 0xc4, 0x74, 0xd1, 0x91, 0x0a, 0x46,
 
1315
                0xf5, 0x38, 0x3b, 0x5c, 0x09, 0xd8, 0x97, 0xdc,
 
1316
                0x4b, 0xaa, 0x70, 0x26, 0x48, 0xf2, 0xd6, 0x0b,
 
1317
                0x31, 0xc9, 0xf8, 0xd4, 0x98, 0x43, 0xe1, 0x6c,
 
1318
                0xd5, 0xc7, 0xb2, 0x8e, 0x0b, 0x01, 0xe6, 0xb6,
 
1319
                0x00, 0x28, 0x80, 0x7b, 0xfc, 0x96, 0x8f, 0x0d,
 
1320
                0xa2, 0x4f, 0xb0, 0x79, 0xaf, 0xdc, 0x61, 0x28,
 
1321
                0x63, 0x33, 0x78, 0xf6, 0x31, 0x39, 0xfd, 0x8a,
 
1322
                0xf4, 0x15, 0x18, 0x11, 0xfe, 0xdb, 0xd5, 0x07,
 
1323
                0xda, 0x2c, 0xed, 0x49, 0xa0, 0x23, 0xbf, 0xd0,
 
1324
                0x3a, 0x38, 0x1d, 0x54, 0xae, 0x1c, 0x7b, 0xea,
 
1325
                0x29, 0xee, 0xd0, 0x38, 0xc1, 0x76, 0xa7, 0x7f,
 
1326
                0x2a, 0xf4, 0xce, 0x1e, 0xac, 0xcc, 0x94, 0x79,
 
1327
                0x90, 0x33, 0x00, 0x8b, 0x30, 0x81, 0x88, 0x02,
 
1328
                0x42, 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04,
 
1329
                0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23,
 
1330
                0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05,
 
1331
                0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b,
 
1332
                0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef,
 
1333
                0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2,
 
1334
                0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85,
 
1335
                0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2,
 
1336
                0xe5, 0xbd, 0x66, 0x02, 0x42, 0x00, 0xad, 0x7d,
 
1337
                0x06, 0x35, 0xab, 0xec, 0x8d, 0xac, 0xd4, 0xba,
 
1338
                0x1b, 0x49, 0x5e, 0x05, 0x5f, 0xf0, 0x97, 0x93,
 
1339
                0x82, 0xb8, 0x2b, 0x8d, 0x91, 0x98, 0x63, 0x8e,
 
1340
                0xb4, 0x14, 0x62, 0xdb, 0x1e, 0xc9, 0x2b, 0x30,
 
1341
                0xf8, 0x41, 0x9b, 0xa6, 0xe6, 0xbc, 0xde, 0x0e,
 
1342
                0x68, 0x30, 0x22, 0x50, 0xe6, 0x98, 0x97, 0x7b,
 
1343
                0x69, 0xf7, 0x93, 0xed, 0xcd, 0x19, 0x2f, 0x44,
 
1344
                0x6c, 0x2e, 0xdf, 0x25, 0xee, 0xcc, 0x46, 0x16,
 
1345
                0x03, 0x01, 0x00, 0x04, 0x0e, 0x00, 0x00, 0x00,
 
1346
        },
 
1347
        {
 
1348
                0x16, 0x03, 0x01, 0x00, 0x8a, 0x10, 0x00, 0x00,
 
1349
                0x86, 0x85, 0x04, 0x00, 0x1c, 0xc5, 0xe8, 0xb3,
 
1350
                0x42, 0xb4, 0xad, 0xca, 0x45, 0xcd, 0x42, 0x7b,
 
1351
                0xfb, 0x0c, 0xea, 0x32, 0x26, 0xd4, 0x8a, 0xef,
 
1352
                0xdf, 0xc9, 0xff, 0xd2, 0xe0, 0x36, 0xea, 0x4e,
 
1353
                0xbb, 0x3e, 0xf4, 0x9c, 0x76, 0x4f, 0x44, 0xbd,
 
1354
                0x84, 0x72, 0xdd, 0xcb, 0xe5, 0x28, 0x8d, 0x31,
 
1355
                0x72, 0x3b, 0xd3, 0xf2, 0x9a, 0x13, 0xfb, 0x8a,
 
1356
                0xa7, 0x72, 0xca, 0x21, 0x6c, 0xea, 0xbf, 0xe9,
 
1357
                0x8c, 0x0a, 0xcc, 0x8f, 0xd6, 0x00, 0x20, 0x87,
 
1358
                0xf3, 0x7d, 0x18, 0xc5, 0xfd, 0x9e, 0xdd, 0x6b,
 
1359
                0x06, 0xdc, 0x52, 0xeb, 0x14, 0xc0, 0x67, 0x5a,
 
1360
                0x06, 0xd8, 0x98, 0x19, 0x14, 0xe7, 0xd4, 0x36,
 
1361
                0x32, 0xee, 0xb7, 0xfa, 0xe2, 0x85, 0x4a, 0x16,
 
1362
                0x42, 0x0c, 0xa6, 0x21, 0xcf, 0x1f, 0xae, 0x10,
 
1363
                0x8b, 0x28, 0x32, 0x19, 0xa4, 0x0a, 0xd7, 0xce,
 
1364
                0xe6, 0xe1, 0x93, 0xfb, 0x5f, 0x08, 0x8b, 0x42,
 
1365
                0xa2, 0x20, 0xed, 0x0d, 0x62, 0xca, 0xed, 0x14,
 
1366
                0x03, 0x01, 0x00, 0x01, 0x01, 0x16, 0x03, 0x01,
 
1367
                0x00, 0x30, 0x2e, 0x33, 0xc0, 0x57, 0x6c, 0xb4,
 
1368
                0x1b, 0xd2, 0x63, 0xe8, 0x67, 0x10, 0x2d, 0x87,
 
1369
                0x71, 0x6e, 0x19, 0x60, 0xf4, 0xa4, 0x10, 0x52,
 
1370
                0x73, 0x2d, 0x09, 0x5e, 0xdb, 0x6c, 0xdc, 0xcf,
 
1371
                0x2d, 0xff, 0x03, 0x11, 0x95, 0x76, 0x90, 0xd7,
 
1372
                0x87, 0x54, 0x43, 0xed, 0xc2, 0x36, 0x69, 0x14,
 
1373
                0x72, 0x4a,
 
1374
        },
 
1375
        {
 
1376
                0x16, 0x03, 0x01, 0x00, 0x72, 0x04, 0x00, 0x00,
 
1377
                0x6e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00,
 
1378
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1379
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x65,
 
1380
                0xe8, 0x8b, 0xde, 0xef, 0xba, 0xc5, 0x7e, 0x04,
 
1381
                0xab, 0xfd, 0x79, 0x56, 0xf3, 0xe1, 0xa5, 0x3e,
 
1382
                0x02, 0xdf, 0x69, 0x6d, 0x1f, 0x41, 0x9f, 0xbc,
 
1383
                0x93, 0xe2, 0x6c, 0xf1, 0xb1, 0x38, 0xf5, 0x2b,
 
1384
                0x8c, 0x4c, 0xf4, 0x74, 0xe1, 0x79, 0x35, 0x34,
 
1385
                0x97, 0x9b, 0xd5, 0xba, 0xfd, 0xf7, 0x2f, 0x2d,
 
1386
                0x9e, 0x84, 0x54, 0xee, 0x77, 0x59, 0x23, 0x8f,
 
1387
                0xc8, 0x84, 0xb4, 0xd6, 0xea, 0x4c, 0x44, 0x8a,
 
1388
                0xc6, 0x9c, 0xf9, 0x9b, 0x27, 0xea, 0x4f, 0x28,
 
1389
                0x72, 0x33, 0x12, 0x20, 0x7c, 0xd7, 0x3f, 0x56,
 
1390
                0xa6, 0x76, 0xc7, 0x48, 0xe4, 0x2d, 0x6f, 0x14,
 
1391
                0x03, 0x01, 0x00, 0x01, 0x01, 0x16, 0x03, 0x01,
 
1392
                0x00, 0x30, 0x36, 0xe3, 0xd4, 0xf7, 0xb1, 0x69,
 
1393
                0x18, 0x8d, 0x09, 0xba, 0x52, 0x1e, 0xd5, 0x7d,
 
1394
                0x2c, 0x15, 0x3a, 0xd6, 0xe3, 0x99, 0x30, 0x2c,
 
1395
                0x99, 0x97, 0xbc, 0x19, 0x3c, 0x63, 0xa1, 0x25,
 
1396
                0x68, 0xbc, 0x8a, 0x16, 0x47, 0xec, 0xae, 0x13,
 
1397
                0xa4, 0x03, 0x96, 0x29, 0x11, 0x92, 0x90, 0x1a,
 
1398
                0xc8, 0xa4, 0x17, 0x03, 0x01, 0x00, 0x20, 0xc1,
 
1399
                0x10, 0x1d, 0xa6, 0xf1, 0xe2, 0x8a, 0xcc, 0x37,
 
1400
                0x7d, 0x8e, 0x05, 0x00, 0xfb, 0xd1, 0x9f, 0xc7,
 
1401
                0x11, 0xd2, 0x00, 0xb4, 0x27, 0x0a, 0x25, 0x14,
 
1402
                0xd9, 0x79, 0x1b, 0xcb, 0x4d, 0x81, 0x61, 0x17,
 
1403
                0x03, 0x01, 0x00, 0x30, 0x5c, 0x7c, 0x2d, 0xc0,
 
1404
                0x9e, 0xa6, 0xc4, 0x8e, 0xfd, 0xf4, 0xe2, 0xe5,
 
1405
                0xe4, 0xe6, 0x56, 0x9f, 0x7d, 0x4c, 0x4c, 0x2d,
 
1406
                0xb7, 0xa9, 0xac, 0xfa, 0x9f, 0x12, 0x7f, 0x2d,
 
1407
                0x30, 0x57, 0xe4, 0x8e, 0x30, 0x86, 0x65, 0x59,
 
1408
                0xcd, 0x24, 0xda, 0xe2, 0x8a, 0x7b, 0x0c, 0x5e,
 
1409
                0x86, 0x05, 0x06, 0x2a, 0x15, 0x03, 0x01, 0x00,
 
1410
                0x20, 0xd6, 0xb7, 0x70, 0xf8, 0x47, 0xbc, 0x0f,
 
1411
                0xf4, 0x66, 0x98, 0x1b, 0x1e, 0x8a, 0x8c, 0x0b,
 
1412
                0xa1, 0x4a, 0x04, 0x29, 0x60, 0x72, 0x8b, 0xc4,
 
1413
                0x73, 0xc1, 0xd6, 0x41, 0x72, 0xb7, 0x17, 0x39,
 
1414
                0xda,
 
1415
        },
 
1416
}
 
1417
 
 
1418
var sslv3ServerScript = [][]byte{
 
1419
        {
 
1420
                0x16, 0x03, 0x00, 0x00, 0x54, 0x01, 0x00, 0x00,
 
1421
                0x50, 0x03, 0x00, 0x50, 0x77, 0x3d, 0x42, 0xae,
 
1422
                0x84, 0xbd, 0xc5, 0x07, 0xa5, 0xc4, 0xd6, 0x16,
 
1423
                0x4e, 0xd5, 0xc5, 0xfa, 0x02, 0x7a, 0x0f, 0x1d,
 
1424
                0xc1, 0xe1, 0xaa, 0xe3, 0x3b, 0x4b, 0x6f, 0x11,
 
1425
                0xfa, 0x1a, 0xa4, 0x00, 0x00, 0x28, 0x00, 0x39,
 
1426
                0x00, 0x38, 0x00, 0x35, 0x00, 0x16, 0x00, 0x13,
 
1427
                0x00, 0x0a, 0x00, 0x33, 0x00, 0x32, 0x00, 0x2f,
 
1428
                0x00, 0x05, 0x00, 0x04, 0x00, 0x15, 0x00, 0x12,
 
1429
                0x00, 0x09, 0x00, 0x14, 0x00, 0x11, 0x00, 0x08,
 
1430
                0x00, 0x06, 0x00, 0x03, 0x00, 0xff, 0x02, 0x01,
 
1431
                0x00,
 
1432
        },
 
1433
        {
 
1434
                0x16, 0x03, 0x00, 0x00, 0x2a, 0x02, 0x00, 0x00,
 
1435
                0x26, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1436
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1437
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1438
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1439
                0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x16,
 
1440
                0x03, 0x00, 0x02, 0xbe, 0x0b, 0x00, 0x02, 0xba,
 
1441
                0x00, 0x02, 0xb7, 0x00, 0x02, 0xb4, 0x30, 0x82,
 
1442
                0x02, 0xb0, 0x30, 0x82, 0x02, 0x19, 0xa0, 0x03,
 
1443
                0x02, 0x01, 0x02, 0x02, 0x09, 0x00, 0x85, 0xb0,
 
1444
                0xbb, 0xa4, 0x8a, 0x7f, 0xb8, 0xca, 0x30, 0x0d,
 
1445
                0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d,
 
1446
                0x01, 0x01, 0x05, 0x05, 0x00, 0x30, 0x45, 0x31,
 
1447
                0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06,
 
1448
                0x13, 0x02, 0x41, 0x55, 0x31, 0x13, 0x30, 0x11,
 
1449
                0x06, 0x03, 0x55, 0x04, 0x08, 0x13, 0x0a, 0x53,
 
1450
                0x6f, 0x6d, 0x65, 0x2d, 0x53, 0x74, 0x61, 0x74,
 
1451
                0x65, 0x31, 0x21, 0x30, 0x1f, 0x06, 0x03, 0x55,
 
1452
                0x04, 0x0a, 0x13, 0x18, 0x49, 0x6e, 0x74, 0x65,
 
1453
                0x72, 0x6e, 0x65, 0x74, 0x20, 0x57, 0x69, 0x64,
 
1454
                0x67, 0x69, 0x74, 0x73, 0x20, 0x50, 0x74, 0x79,
 
1455
                0x20, 0x4c, 0x74, 0x64, 0x30, 0x1e, 0x17, 0x0d,
 
1456
                0x31, 0x30, 0x30, 0x34, 0x32, 0x34, 0x30, 0x39,
 
1457
                0x30, 0x39, 0x33, 0x38, 0x5a, 0x17, 0x0d, 0x31,
 
1458
                0x31, 0x30, 0x34, 0x32, 0x34, 0x30, 0x39, 0x30,
 
1459
                0x39, 0x33, 0x38, 0x5a, 0x30, 0x45, 0x31, 0x0b,
 
1460
                0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13,
 
1461
                0x02, 0x41, 0x55, 0x31, 0x13, 0x30, 0x11, 0x06,
 
1462
                0x03, 0x55, 0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f,
 
1463
                0x6d, 0x65, 0x2d, 0x53, 0x74, 0x61, 0x74, 0x65,
 
1464
                0x31, 0x21, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x04,
 
1465
                0x0a, 0x13, 0x18, 0x49, 0x6e, 0x74, 0x65, 0x72,
 
1466
                0x6e, 0x65, 0x74, 0x20, 0x57, 0x69, 0x64, 0x67,
 
1467
                0x69, 0x74, 0x73, 0x20, 0x50, 0x74, 0x79, 0x20,
 
1468
                0x4c, 0x74, 0x64, 0x30, 0x81, 0x9f, 0x30, 0x0d,
 
1469
                0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d,
 
1470
                0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x81, 0x8d,
 
1471
                0x00, 0x30, 0x81, 0x89, 0x02, 0x81, 0x81, 0x00,
 
1472
                0xbb, 0x79, 0xd6, 0xf5, 0x17, 0xb5, 0xe5, 0xbf,
 
1473
                0x46, 0x10, 0xd0, 0xdc, 0x69, 0xbe, 0xe6, 0x2b,
 
1474
                0x07, 0x43, 0x5a, 0xd0, 0x03, 0x2d, 0x8a, 0x7a,
 
1475
                0x43, 0x85, 0xb7, 0x14, 0x52, 0xe7, 0xa5, 0x65,
 
1476
                0x4c, 0x2c, 0x78, 0xb8, 0x23, 0x8c, 0xb5, 0xb4,
 
1477
                0x82, 0xe5, 0xde, 0x1f, 0x95, 0x3b, 0x7e, 0x62,
 
1478
                0xa5, 0x2c, 0xa5, 0x33, 0xd6, 0xfe, 0x12, 0x5c,
 
1479
                0x7a, 0x56, 0xfc, 0xf5, 0x06, 0xbf, 0xfa, 0x58,
 
1480
                0x7b, 0x26, 0x3f, 0xb5, 0xcd, 0x04, 0xd3, 0xd0,
 
1481
                0xc9, 0x21, 0x96, 0x4a, 0xc7, 0xf4, 0x54, 0x9f,
 
1482
                0x5a, 0xbf, 0xef, 0x42, 0x71, 0x00, 0xfe, 0x18,
 
1483
                0x99, 0x07, 0x7f, 0x7e, 0x88, 0x7d, 0x7d, 0xf1,
 
1484
                0x04, 0x39, 0xc4, 0xa2, 0x2e, 0xdb, 0x51, 0xc9,
 
1485
                0x7c, 0xe3, 0xc0, 0x4c, 0x3b, 0x32, 0x66, 0x01,
 
1486
                0xcf, 0xaf, 0xb1, 0x1d, 0xb8, 0x71, 0x9a, 0x1d,
 
1487
                0xdb, 0xdb, 0x89, 0x6b, 0xae, 0xda, 0x2d, 0x79,
 
1488
                0x02, 0x03, 0x01, 0x00, 0x01, 0xa3, 0x81, 0xa7,
 
1489
                0x30, 0x81, 0xa4, 0x30, 0x1d, 0x06, 0x03, 0x55,
 
1490
                0x1d, 0x0e, 0x04, 0x16, 0x04, 0x14, 0xb1, 0xad,
 
1491
                0xe2, 0x85, 0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69,
 
1492
                0xce, 0x23, 0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18,
 
1493
                0x88, 0x39, 0x30, 0x75, 0x06, 0x03, 0x55, 0x1d,
 
1494
                0x23, 0x04, 0x6e, 0x30, 0x6c, 0x80, 0x14, 0xb1,
 
1495
                0xad, 0xe2, 0x85, 0x5a, 0xcf, 0xcb, 0x28, 0xdb,
 
1496
                0x69, 0xce, 0x23, 0x69, 0xde, 0xd3, 0x26, 0x8e,
 
1497
                0x18, 0x88, 0x39, 0xa1, 0x49, 0xa4, 0x47, 0x30,
 
1498
                0x45, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55,
 
1499
                0x04, 0x06, 0x13, 0x02, 0x41, 0x55, 0x31, 0x13,
 
1500
                0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x08, 0x13,
 
1501
                0x0a, 0x53, 0x6f, 0x6d, 0x65, 0x2d, 0x53, 0x74,
 
1502
                0x61, 0x74, 0x65, 0x31, 0x21, 0x30, 0x1f, 0x06,
 
1503
                0x03, 0x55, 0x04, 0x0a, 0x13, 0x18, 0x49, 0x6e,
 
1504
                0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x20, 0x57,
 
1505
                0x69, 0x64, 0x67, 0x69, 0x74, 0x73, 0x20, 0x50,
 
1506
                0x74, 0x79, 0x20, 0x4c, 0x74, 0x64, 0x82, 0x09,
 
1507
                0x00, 0x85, 0xb0, 0xbb, 0xa4, 0x8a, 0x7f, 0xb8,
 
1508
                0xca, 0x30, 0x0c, 0x06, 0x03, 0x55, 0x1d, 0x13,
 
1509
                0x04, 0x05, 0x30, 0x03, 0x01, 0x01, 0xff, 0x30,
 
1510
                0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7,
 
1511
                0x0d, 0x01, 0x01, 0x05, 0x05, 0x00, 0x03, 0x81,
 
1512
                0x81, 0x00, 0x08, 0x6c, 0x45, 0x24, 0xc7, 0x6b,
 
1513
                0xb1, 0x59, 0xab, 0x0c, 0x52, 0xcc, 0xf2, 0xb0,
 
1514
                0x14, 0xd7, 0x87, 0x9d, 0x7a, 0x64, 0x75, 0xb5,
 
1515
                0x5a, 0x95, 0x66, 0xe4, 0xc5, 0x2b, 0x8e, 0xae,
 
1516
                0x12, 0x66, 0x1f, 0xeb, 0x4f, 0x38, 0xb3, 0x6e,
 
1517
                0x60, 0xd3, 0x92, 0xfd, 0xf7, 0x41, 0x08, 0xb5,
 
1518
                0x25, 0x13, 0xb1, 0x18, 0x7a, 0x24, 0xfb, 0x30,
 
1519
                0x1d, 0xba, 0xed, 0x98, 0xb9, 0x17, 0xec, 0xe7,
 
1520
                0xd7, 0x31, 0x59, 0xdb, 0x95, 0xd3, 0x1d, 0x78,
 
1521
                0xea, 0x50, 0x56, 0x5c, 0xd5, 0x82, 0x5a, 0x2d,
 
1522
                0x5a, 0x5f, 0x33, 0xc4, 0xb6, 0xd8, 0xc9, 0x75,
 
1523
                0x90, 0x96, 0x8c, 0x0f, 0x52, 0x98, 0xb5, 0xcd,
 
1524
                0x98, 0x1f, 0x89, 0x20, 0x5f, 0xf2, 0xa0, 0x1c,
 
1525
                0xa3, 0x1b, 0x96, 0x94, 0xdd, 0xa9, 0xfd, 0x57,
 
1526
                0xe9, 0x70, 0xe8, 0x26, 0x6d, 0x71, 0x99, 0x9b,
 
1527
                0x26, 0x6e, 0x38, 0x50, 0x29, 0x6c, 0x90, 0xa7,
 
1528
                0xbd, 0xd9, 0x16, 0x03, 0x00, 0x00, 0x04, 0x0e,
 
1529
                0x00, 0x00, 0x00,
 
1530
        },
 
1531
        {
 
1532
                0x16, 0x03, 0x00, 0x00, 0x84, 0x10, 0x00, 0x00,
 
1533
                0x80, 0x4a, 0x8d, 0xc4, 0x38, 0x7a, 0x9c, 0xd6,
 
1534
                0xe8, 0x72, 0x9e, 0xa3, 0xdf, 0x37, 0xb4, 0x6c,
 
1535
                0x58, 0x33, 0x59, 0xd9, 0xc9, 0x4b, 0x50, 0x33,
 
1536
                0x6c, 0xed, 0x73, 0x38, 0x2a, 0x46, 0x55, 0x31,
 
1537
                0xa9, 0x8e, 0x8e, 0xfc, 0x0b, 0x5d, 0x5f, 0x3c,
 
1538
                0x88, 0x28, 0x3f, 0x60, 0x51, 0x13, 0xf1, 0x59,
 
1539
                0x0c, 0xa3, 0x5e, 0xe0, 0xa3, 0x35, 0x06, 0xb1,
 
1540
                0x71, 0x59, 0x24, 0x4e, 0xed, 0x07, 0x15, 0x88,
 
1541
                0x50, 0xef, 0xc2, 0xb2, 0x2a, 0x52, 0x30, 0x6a,
 
1542
                0x7c, 0xbe, 0x2f, 0xc6, 0x8f, 0xa8, 0x83, 0xc5,
 
1543
                0x80, 0x14, 0x62, 0x74, 0x7f, 0x96, 0x9f, 0x41,
 
1544
                0x32, 0x74, 0xdd, 0x76, 0x2d, 0x7b, 0xeb, 0x7b,
 
1545
                0xea, 0xd0, 0x4f, 0x0c, 0xcf, 0x9a, 0x9c, 0xc5,
 
1546
                0x7a, 0xe4, 0xbc, 0xf8, 0xa6, 0xe1, 0x09, 0x8e,
 
1547
                0x7c, 0x53, 0x3a, 0xe3, 0x30, 0x8f, 0x76, 0xee,
 
1548
                0x58, 0xbb, 0xfd, 0x0b, 0x06, 0xb8, 0xdf, 0xb7,
 
1549
                0x31, 0x14, 0x03, 0x00, 0x00, 0x01, 0x01, 0x16,
 
1550
                0x03, 0x00, 0x00, 0x3c, 0x13, 0x91, 0xc6, 0x4a,
 
1551
                0x0c, 0x59, 0x25, 0xce, 0x54, 0xc0, 0x1d, 0xb9,
 
1552
                0x2a, 0xff, 0x4d, 0xca, 0x26, 0x0c, 0x8c, 0x04,
 
1553
                0x98, 0x7c, 0x7c, 0x38, 0xa3, 0xf5, 0xf9, 0x36,
 
1554
                0x1c, 0x04, 0x32, 0x47, 0x2d, 0x48, 0x0e, 0x96,
 
1555
                0xe8, 0x2b, 0x5e, 0x5a, 0xc6, 0x0a, 0x48, 0x41,
 
1556
                0x34, 0x5e, 0x62, 0xd5, 0x68, 0x4e, 0x44, 0x1d,
 
1557
                0xb2, 0xa1, 0x11, 0xad, 0x6e, 0x14, 0x85, 0x61,
 
1558
        },
 
1559
        {
 
1560
                0x14, 0x03, 0x00, 0x00, 0x01, 0x01, 0x16, 0x03,
 
1561
                0x00, 0x00, 0x3c, 0x88, 0xae, 0xa9, 0xd4, 0xa8,
 
1562
                0x10, 0x8d, 0x65, 0xa6, 0x3e, 0x1e, 0xed, 0xd2,
 
1563
                0xfc, 0xc4, 0x7c, 0xa8, 0x94, 0x4f, 0x11, 0xaf,
 
1564
                0xa6, 0x87, 0x09, 0x37, 0x54, 0xf7, 0x69, 0xd1,
 
1565
                0xb5, 0x25, 0x6b, 0xb5, 0xed, 0xcb, 0x25, 0x39,
 
1566
                0x73, 0xeb, 0x53, 0x6c, 0xc7, 0xb4, 0x29, 0x8f,
 
1567
                0xd6, 0x49, 0xd1, 0x95, 0x59, 0x80, 0x9a, 0x67,
 
1568
                0x5c, 0xb2, 0xe0, 0xbd, 0x1e, 0xff, 0xaa, 0x17,
 
1569
                0x03, 0x00, 0x00, 0x21, 0x65, 0x7b, 0x99, 0x09,
 
1570
                0x02, 0xc3, 0x9d, 0x54, 0xd6, 0xe7, 0x32, 0x62,
 
1571
                0xab, 0xc1, 0x09, 0x91, 0x30, 0x0a, 0xc9, 0xfa,
 
1572
                0x70, 0xec, 0x06, 0x7b, 0xa3, 0xe1, 0x5f, 0xb4,
 
1573
                0x63, 0xe6, 0x5c, 0xba, 0x1f, 0x15, 0x03, 0x00,
 
1574
                0x00, 0x16, 0x40, 0x70, 0xbe, 0xe6, 0xa6, 0xee,
 
1575
                0x8f, 0xd0, 0x87, 0xa0, 0x43, 0xa1, 0x92, 0xd7,
 
1576
                0xd0, 0x1a, 0x0c, 0x20, 0x7c, 0xbf, 0xa2, 0xb5,
 
1577
        },
 
1578
}
 
1579
 
 
1580
var selectCertificateBySNIScript = [][]byte{
 
1581
        {
 
1582
                0x16, 0x03, 0x01, 0x00, 0x6a, 0x01, 0x00, 0x00,
 
1583
                0x66, 0x03, 0x01, 0x50, 0x77, 0x3d, 0xfe, 0xfb,
 
1584
                0x8d, 0xc2, 0x68, 0xeb, 0xf9, 0xfa, 0x54, 0x97,
 
1585
                0x86, 0x45, 0xa2, 0xa3, 0xed, 0xb1, 0x91, 0xb8,
 
1586
                0x28, 0xc0, 0x47, 0xaf, 0xfb, 0xcd, 0xdc, 0x0e,
 
1587
                0xb3, 0xea, 0xa5, 0x00, 0x00, 0x28, 0x00, 0x39,
 
1588
                0x00, 0x38, 0x00, 0x35, 0x00, 0x16, 0x00, 0x13,
 
1589
                0x00, 0x0a, 0x00, 0x33, 0x00, 0x32, 0x00, 0x2f,
 
1590
                0x00, 0x05, 0x00, 0x04, 0x00, 0x15, 0x00, 0x12,
 
1591
                0x00, 0x09, 0x00, 0x14, 0x00, 0x11, 0x00, 0x08,
 
1592
                0x00, 0x06, 0x00, 0x03, 0x00, 0xff, 0x02, 0x01,
 
1593
                0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x10, 0x00,
 
1594
                0x0e, 0x00, 0x00, 0x0b, 0x73, 0x6e, 0x69, 0x74,
 
1595
                0x65, 0x73, 0x74, 0x2e, 0x63, 0x6f, 0x6d,
 
1596
        },
 
1597
        {
 
1598
                0x16, 0x03, 0x01, 0x00, 0x2a, 0x02, 0x00, 0x00,
 
1599
                0x26, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1600
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1601
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1602
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1603
                0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x16,
 
1604
                0x03, 0x01, 0x02, 0x00, 0x0b, 0x00, 0x01, 0xfc,
 
1605
                0x00, 0x01, 0xf9, 0x00, 0x01, 0xf6, 0x30, 0x82,
 
1606
                0x01, 0xf2, 0x30, 0x82, 0x01, 0x5d, 0xa0, 0x03,
 
1607
                0x02, 0x01, 0x02, 0x02, 0x01, 0x00, 0x30, 0x0b,
 
1608
                0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d,
 
1609
                0x01, 0x01, 0x05, 0x30, 0x28, 0x31, 0x10, 0x30,
 
1610
                0x0e, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13, 0x07,
 
1611
                0x41, 0x63, 0x6d, 0x65, 0x20, 0x43, 0x6f, 0x31,
 
1612
                0x14, 0x30, 0x12, 0x06, 0x03, 0x55, 0x04, 0x03,
 
1613
                0x13, 0x0b, 0x73, 0x6e, 0x69, 0x74, 0x65, 0x73,
 
1614
                0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x30, 0x1e, 0x17,
 
1615
                0x0d, 0x31, 0x32, 0x30, 0x34, 0x31, 0x31, 0x31,
 
1616
                0x37, 0x34, 0x30, 0x33, 0x35, 0x5a, 0x17, 0x0d,
 
1617
                0x31, 0x33, 0x30, 0x34, 0x31, 0x31, 0x31, 0x37,
 
1618
                0x34, 0x35, 0x33, 0x35, 0x5a, 0x30, 0x28, 0x31,
 
1619
                0x10, 0x30, 0x0e, 0x06, 0x03, 0x55, 0x04, 0x0a,
 
1620
                0x13, 0x07, 0x41, 0x63, 0x6d, 0x65, 0x20, 0x43,
 
1621
                0x6f, 0x31, 0x14, 0x30, 0x12, 0x06, 0x03, 0x55,
 
1622
                0x04, 0x03, 0x13, 0x0b, 0x73, 0x6e, 0x69, 0x74,
 
1623
                0x65, 0x73, 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x30,
 
1624
                0x81, 0x9d, 0x30, 0x0b, 0x06, 0x09, 0x2a, 0x86,
 
1625
                0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01, 0x03,
 
1626
                0x81, 0x8d, 0x00, 0x30, 0x81, 0x89, 0x02, 0x81,
 
1627
                0x81, 0x00, 0xbb, 0x79, 0xd6, 0xf5, 0x17, 0xb5,
 
1628
                0xe5, 0xbf, 0x46, 0x10, 0xd0, 0xdc, 0x69, 0xbe,
 
1629
                0xe6, 0x2b, 0x07, 0x43, 0x5a, 0xd0, 0x03, 0x2d,
 
1630
                0x8a, 0x7a, 0x43, 0x85, 0xb7, 0x14, 0x52, 0xe7,
 
1631
                0xa5, 0x65, 0x4c, 0x2c, 0x78, 0xb8, 0x23, 0x8c,
 
1632
                0xb5, 0xb4, 0x82, 0xe5, 0xde, 0x1f, 0x95, 0x3b,
 
1633
                0x7e, 0x62, 0xa5, 0x2c, 0xa5, 0x33, 0xd6, 0xfe,
 
1634
                0x12, 0x5c, 0x7a, 0x56, 0xfc, 0xf5, 0x06, 0xbf,
 
1635
                0xfa, 0x58, 0x7b, 0x26, 0x3f, 0xb5, 0xcd, 0x04,
 
1636
                0xd3, 0xd0, 0xc9, 0x21, 0x96, 0x4a, 0xc7, 0xf4,
 
1637
                0x54, 0x9f, 0x5a, 0xbf, 0xef, 0x42, 0x71, 0x00,
 
1638
                0xfe, 0x18, 0x99, 0x07, 0x7f, 0x7e, 0x88, 0x7d,
 
1639
                0x7d, 0xf1, 0x04, 0x39, 0xc4, 0xa2, 0x2e, 0xdb,
 
1640
                0x51, 0xc9, 0x7c, 0xe3, 0xc0, 0x4c, 0x3b, 0x32,
 
1641
                0x66, 0x01, 0xcf, 0xaf, 0xb1, 0x1d, 0xb8, 0x71,
 
1642
                0x9a, 0x1d, 0xdb, 0xdb, 0x89, 0x6b, 0xae, 0xda,
 
1643
                0x2d, 0x79, 0x02, 0x03, 0x01, 0x00, 0x01, 0xa3,
 
1644
                0x32, 0x30, 0x30, 0x30, 0x0e, 0x06, 0x03, 0x55,
 
1645
                0x1d, 0x0f, 0x01, 0x01, 0xff, 0x04, 0x04, 0x03,
 
1646
                0x02, 0x00, 0xa0, 0x30, 0x0d, 0x06, 0x03, 0x55,
 
1647
                0x1d, 0x0e, 0x04, 0x06, 0x04, 0x04, 0x01, 0x02,
 
1648
                0x03, 0x04, 0x30, 0x0f, 0x06, 0x03, 0x55, 0x1d,
 
1649
                0x23, 0x04, 0x08, 0x30, 0x06, 0x80, 0x04, 0x01,
 
1650
                0x02, 0x03, 0x04, 0x30, 0x0b, 0x06, 0x09, 0x2a,
 
1651
                0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x05,
 
1652
                0x03, 0x81, 0x81, 0x00, 0x89, 0xc6, 0x45, 0x5f,
 
1653
                0x1c, 0x1f, 0x5e, 0xf8, 0xeb, 0x1a, 0xb1, 0x74,
 
1654
                0xee, 0x24, 0x39, 0x05, 0x9f, 0x5c, 0x42, 0x59,
 
1655
                0xbb, 0x1a, 0x8d, 0x86, 0xcd, 0xb1, 0xd0, 0x56,
 
1656
                0xf5, 0x6a, 0x71, 0x7d, 0xa4, 0x0e, 0x95, 0xab,
 
1657
                0x90, 0xf5, 0x9e, 0x8d, 0xea, 0xf6, 0x27, 0xc1,
 
1658
                0x57, 0x99, 0x50, 0x94, 0xdb, 0x08, 0x02, 0x26,
 
1659
                0x6e, 0xb3, 0x4f, 0xc6, 0x84, 0x2d, 0xea, 0x8a,
 
1660
                0x4b, 0x68, 0xd9, 0xc1, 0x38, 0x91, 0x03, 0xab,
 
1661
                0x84, 0xfb, 0x9e, 0x1f, 0x85, 0xd9, 0xb5, 0xd2,
 
1662
                0x3f, 0xf2, 0x31, 0x2c, 0x86, 0x70, 0xfb, 0xb5,
 
1663
                0x40, 0x14, 0x82, 0x45, 0xa4, 0xeb, 0xaf, 0xe2,
 
1664
                0x64, 0xd9, 0x0c, 0x8a, 0x4c, 0xf4, 0xf8, 0x5b,
 
1665
                0x0f, 0xac, 0x12, 0xac, 0x2f, 0xc4, 0xa3, 0x15,
 
1666
                0x4b, 0xad, 0x52, 0x46, 0x28, 0x68, 0xaf, 0x96,
 
1667
                0xc6, 0x2c, 0x65, 0x25, 0xd6, 0x52, 0xb6, 0xe3,
 
1668
                0x18, 0x45, 0xbd, 0xcc, 0x16, 0x03, 0x01, 0x00,
 
1669
                0x04, 0x0e, 0x00, 0x00, 0x00,
 
1670
        },
 
1671
        {
 
1672
                0x16, 0x03, 0x01, 0x00, 0x86, 0x10, 0x00, 0x00,
 
1673
                0x82, 0x00, 0x80, 0x69, 0xc3, 0xd4, 0x0e, 0xcc,
 
1674
                0xdc, 0xbc, 0x5e, 0xc2, 0x64, 0xa6, 0xde, 0x3c,
 
1675
                0x0c, 0x7e, 0x0c, 0x6b, 0x80, 0x0f, 0xd4, 0x8f,
 
1676
                0x02, 0x4b, 0xb2, 0xba, 0x8d, 0x01, 0xeb, 0x6b,
 
1677
                0xa1, 0x2e, 0x79, 0x37, 0xba, 0xae, 0x24, 0xc2,
 
1678
                0x26, 0x72, 0x51, 0xe1, 0x82, 0x8e, 0x51, 0x41,
 
1679
                0x1c, 0x54, 0xa4, 0x26, 0xbe, 0x13, 0xcd, 0x1b,
 
1680
                0xc6, 0xed, 0x3d, 0x1f, 0xfd, 0x72, 0x80, 0x90,
 
1681
                0xdb, 0xbf, 0xd6, 0x39, 0x94, 0x5f, 0x48, 0xfb,
 
1682
                0x25, 0x5a, 0xc9, 0x60, 0x9b, 0xd7, 0xc6, 0x20,
 
1683
                0xa8, 0x66, 0x64, 0x13, 0xf3, 0x65, 0xc8, 0xb1,
 
1684
                0xd5, 0x33, 0x21, 0x0e, 0x73, 0x41, 0xc0, 0x18,
 
1685
                0x1a, 0x37, 0xfe, 0xcf, 0x28, 0x2a, 0xcd, 0xe4,
 
1686
                0x0b, 0xac, 0xdd, 0x25, 0x5e, 0xcb, 0x17, 0x51,
 
1687
                0x69, 0xd5, 0x8c, 0xf4, 0xb6, 0x21, 0x98, 0xef,
 
1688
                0x20, 0xdb, 0x14, 0x67, 0xf3, 0x7c, 0x95, 0x6a,
 
1689
                0x48, 0x2a, 0x6a, 0x14, 0x03, 0x01, 0x00, 0x01,
 
1690
                0x01, 0x16, 0x03, 0x01, 0x00, 0x24, 0x36, 0x1b,
 
1691
                0x09, 0xe5, 0xb9, 0xb9, 0x4d, 0x7d, 0xae, 0x87,
 
1692
                0xb6, 0x0f, 0xaf, 0xec, 0x22, 0xba, 0x0d, 0xa5,
 
1693
                0x96, 0x5e, 0x64, 0x65, 0xe7, 0xfb, 0xe3, 0xf3,
 
1694
                0x6b, 0x72, 0xa8, 0xdb, 0xed, 0xd8, 0x69, 0x9c,
 
1695
                0x08, 0xd8,
 
1696
        },
 
1697
        {
 
1698
                0x14, 0x03, 0x01, 0x00, 0x01, 0x01, 0x16, 0x03,
 
1699
                0x01, 0x00, 0x24, 0x60, 0xf7, 0x09, 0x5f, 0xd1,
 
1700
                0xcb, 0xc9, 0xe1, 0x22, 0xb5, 0x2a, 0xcc, 0xde,
 
1701
                0x7c, 0xa7, 0xb8, 0x85, 0x00, 0xbc, 0xfd, 0x85,
 
1702
                0xe1, 0x91, 0x36, 0xbb, 0x07, 0x42, 0xad, 0x3d,
 
1703
                0x29, 0x62, 0x69, 0xc1, 0x45, 0x92, 0x6f, 0x17,
 
1704
                0x03, 0x01, 0x00, 0x21, 0x0d, 0xf9, 0xd5, 0x87,
 
1705
                0xb9, 0x57, 0x3c, 0x50, 0x19, 0xe4, 0x3a, 0x50,
 
1706
                0x45, 0xcc, 0x86, 0x89, 0xd4, 0x32, 0x79, 0x45,
 
1707
                0x7c, 0x9f, 0x96, 0xd4, 0x54, 0x56, 0x0c, 0x63,
 
1708
                0x72, 0x81, 0xc3, 0xd3, 0xe3, 0x15, 0x03, 0x01,
 
1709
                0x00, 0x16, 0x84, 0xec, 0x2e, 0xf6, 0xaf, 0x4f,
 
1710
                0xee, 0x48, 0x0f, 0xbe, 0xcd, 0x82, 0x5c, 0x56,
 
1711
                0x16, 0xe4, 0xfb, 0x89, 0xc5, 0x57, 0x3e, 0x91,
 
1712
        },
 
1713
}
 
1714
 
 
1715
var issueSessionTicketTest = [][]byte{
 
1716
        {
 
1717
                0x16, 0x03, 0x01, 0x00, 0x5a, 0x01, 0x00, 0x00,
 
1718
                0x56, 0x03, 0x01, 0x50, 0x77, 0x3e, 0x49, 0x7a,
 
1719
                0xb7, 0x86, 0x5c, 0x27, 0xd2, 0x97, 0x61, 0xe3,
 
1720
                0x49, 0x41, 0x48, 0xe7, 0x0e, 0xaa, 0x7e, 0x4d,
 
1721
                0xb8, 0xdc, 0x01, 0x97, 0xfb, 0xab, 0x53, 0xb2,
 
1722
                0x5e, 0x36, 0xf6, 0x00, 0x00, 0x28, 0x00, 0x39,
 
1723
                0x00, 0x38, 0x00, 0x35, 0x00, 0x16, 0x00, 0x13,
 
1724
                0x00, 0x0a, 0x00, 0x33, 0x00, 0x32, 0x00, 0x2f,
 
1725
                0x00, 0x05, 0x00, 0x04, 0x00, 0x15, 0x00, 0x12,
 
1726
                0x00, 0x09, 0x00, 0x14, 0x00, 0x11, 0x00, 0x08,
 
1727
                0x00, 0x06, 0x00, 0x03, 0x00, 0xff, 0x02, 0x01,
 
1728
                0x00, 0x00, 0x04, 0x00, 0x23, 0x00, 0x00,
 
1729
        },
 
1730
        {
 
1731
                0x16, 0x03, 0x01, 0x00, 0x30, 0x02, 0x00, 0x00,
 
1732
                0x2c, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1733
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1734
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1735
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1736
                0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00,
 
1737
                0x04, 0x00, 0x23, 0x00, 0x00, 0x16, 0x03, 0x01,
 
1738
                0x02, 0xbe, 0x0b, 0x00, 0x02, 0xba, 0x00, 0x02,
 
1739
                0xb7, 0x00, 0x02, 0xb4, 0x30, 0x82, 0x02, 0xb0,
 
1740
                0x30, 0x82, 0x02, 0x19, 0xa0, 0x03, 0x02, 0x01,
 
1741
                0x02, 0x02, 0x09, 0x00, 0x85, 0xb0, 0xbb, 0xa4,
 
1742
                0x8a, 0x7f, 0xb8, 0xca, 0x30, 0x0d, 0x06, 0x09,
 
1743
                0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
 
1744
                0x05, 0x05, 0x00, 0x30, 0x45, 0x31, 0x0b, 0x30,
 
1745
                0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02,
 
1746
                0x41, 0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03,
 
1747
                0x55, 0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d,
 
1748
                0x65, 0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31,
 
1749
                0x21, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a,
 
1750
                0x13, 0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e,
 
1751
                0x65, 0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69,
 
1752
                0x74, 0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c,
 
1753
                0x74, 0x64, 0x30, 0x1e, 0x17, 0x0d, 0x31, 0x30,
 
1754
                0x30, 0x34, 0x32, 0x34, 0x30, 0x39, 0x30, 0x39,
 
1755
                0x33, 0x38, 0x5a, 0x17, 0x0d, 0x31, 0x31, 0x30,
 
1756
                0x34, 0x32, 0x34, 0x30, 0x39, 0x30, 0x39, 0x33,
 
1757
                0x38, 0x5a, 0x30, 0x45, 0x31, 0x0b, 0x30, 0x09,
 
1758
                0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x41,
 
1759
                0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55,
 
1760
                0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d, 0x65,
 
1761
                0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31, 0x21,
 
1762
                0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13,
 
1763
                0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65,
 
1764
                0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69, 0x74,
 
1765
                0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c, 0x74,
 
1766
                0x64, 0x30, 0x81, 0x9f, 0x30, 0x0d, 0x06, 0x09,
 
1767
                0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
 
1768
                0x01, 0x05, 0x00, 0x03, 0x81, 0x8d, 0x00, 0x30,
 
1769
                0x81, 0x89, 0x02, 0x81, 0x81, 0x00, 0xbb, 0x79,
 
1770
                0xd6, 0xf5, 0x17, 0xb5, 0xe5, 0xbf, 0x46, 0x10,
 
1771
                0xd0, 0xdc, 0x69, 0xbe, 0xe6, 0x2b, 0x07, 0x43,
 
1772
                0x5a, 0xd0, 0x03, 0x2d, 0x8a, 0x7a, 0x43, 0x85,
 
1773
                0xb7, 0x14, 0x52, 0xe7, 0xa5, 0x65, 0x4c, 0x2c,
 
1774
                0x78, 0xb8, 0x23, 0x8c, 0xb5, 0xb4, 0x82, 0xe5,
 
1775
                0xde, 0x1f, 0x95, 0x3b, 0x7e, 0x62, 0xa5, 0x2c,
 
1776
                0xa5, 0x33, 0xd6, 0xfe, 0x12, 0x5c, 0x7a, 0x56,
 
1777
                0xfc, 0xf5, 0x06, 0xbf, 0xfa, 0x58, 0x7b, 0x26,
 
1778
                0x3f, 0xb5, 0xcd, 0x04, 0xd3, 0xd0, 0xc9, 0x21,
 
1779
                0x96, 0x4a, 0xc7, 0xf4, 0x54, 0x9f, 0x5a, 0xbf,
 
1780
                0xef, 0x42, 0x71, 0x00, 0xfe, 0x18, 0x99, 0x07,
 
1781
                0x7f, 0x7e, 0x88, 0x7d, 0x7d, 0xf1, 0x04, 0x39,
 
1782
                0xc4, 0xa2, 0x2e, 0xdb, 0x51, 0xc9, 0x7c, 0xe3,
 
1783
                0xc0, 0x4c, 0x3b, 0x32, 0x66, 0x01, 0xcf, 0xaf,
 
1784
                0xb1, 0x1d, 0xb8, 0x71, 0x9a, 0x1d, 0xdb, 0xdb,
 
1785
                0x89, 0x6b, 0xae, 0xda, 0x2d, 0x79, 0x02, 0x03,
 
1786
                0x01, 0x00, 0x01, 0xa3, 0x81, 0xa7, 0x30, 0x81,
 
1787
                0xa4, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e,
 
1788
                0x04, 0x16, 0x04, 0x14, 0xb1, 0xad, 0xe2, 0x85,
 
1789
                0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69, 0xce, 0x23,
 
1790
                0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18, 0x88, 0x39,
 
1791
                0x30, 0x75, 0x06, 0x03, 0x55, 0x1d, 0x23, 0x04,
 
1792
                0x6e, 0x30, 0x6c, 0x80, 0x14, 0xb1, 0xad, 0xe2,
 
1793
                0x85, 0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69, 0xce,
 
1794
                0x23, 0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18, 0x88,
 
1795
                0x39, 0xa1, 0x49, 0xa4, 0x47, 0x30, 0x45, 0x31,
 
1796
                0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06,
 
1797
                0x13, 0x02, 0x41, 0x55, 0x31, 0x13, 0x30, 0x11,
 
1798
                0x06, 0x03, 0x55, 0x04, 0x08, 0x13, 0x0a, 0x53,
 
1799
                0x6f, 0x6d, 0x65, 0x2d, 0x53, 0x74, 0x61, 0x74,
 
1800
                0x65, 0x31, 0x21, 0x30, 0x1f, 0x06, 0x03, 0x55,
 
1801
                0x04, 0x0a, 0x13, 0x18, 0x49, 0x6e, 0x74, 0x65,
 
1802
                0x72, 0x6e, 0x65, 0x74, 0x20, 0x57, 0x69, 0x64,
 
1803
                0x67, 0x69, 0x74, 0x73, 0x20, 0x50, 0x74, 0x79,
 
1804
                0x20, 0x4c, 0x74, 0x64, 0x82, 0x09, 0x00, 0x85,
 
1805
                0xb0, 0xbb, 0xa4, 0x8a, 0x7f, 0xb8, 0xca, 0x30,
 
1806
                0x0c, 0x06, 0x03, 0x55, 0x1d, 0x13, 0x04, 0x05,
 
1807
                0x30, 0x03, 0x01, 0x01, 0xff, 0x30, 0x0d, 0x06,
 
1808
                0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01,
 
1809
                0x01, 0x05, 0x05, 0x00, 0x03, 0x81, 0x81, 0x00,
 
1810
                0x08, 0x6c, 0x45, 0x24, 0xc7, 0x6b, 0xb1, 0x59,
 
1811
                0xab, 0x0c, 0x52, 0xcc, 0xf2, 0xb0, 0x14, 0xd7,
 
1812
                0x87, 0x9d, 0x7a, 0x64, 0x75, 0xb5, 0x5a, 0x95,
 
1813
                0x66, 0xe4, 0xc5, 0x2b, 0x8e, 0xae, 0x12, 0x66,
 
1814
                0x1f, 0xeb, 0x4f, 0x38, 0xb3, 0x6e, 0x60, 0xd3,
 
1815
                0x92, 0xfd, 0xf7, 0x41, 0x08, 0xb5, 0x25, 0x13,
 
1816
                0xb1, 0x18, 0x7a, 0x24, 0xfb, 0x30, 0x1d, 0xba,
 
1817
                0xed, 0x98, 0xb9, 0x17, 0xec, 0xe7, 0xd7, 0x31,
 
1818
                0x59, 0xdb, 0x95, 0xd3, 0x1d, 0x78, 0xea, 0x50,
 
1819
                0x56, 0x5c, 0xd5, 0x82, 0x5a, 0x2d, 0x5a, 0x5f,
 
1820
                0x33, 0xc4, 0xb6, 0xd8, 0xc9, 0x75, 0x90, 0x96,
 
1821
                0x8c, 0x0f, 0x52, 0x98, 0xb5, 0xcd, 0x98, 0x1f,
 
1822
                0x89, 0x20, 0x5f, 0xf2, 0xa0, 0x1c, 0xa3, 0x1b,
 
1823
                0x96, 0x94, 0xdd, 0xa9, 0xfd, 0x57, 0xe9, 0x70,
 
1824
                0xe8, 0x26, 0x6d, 0x71, 0x99, 0x9b, 0x26, 0x6e,
 
1825
                0x38, 0x50, 0x29, 0x6c, 0x90, 0xa7, 0xbd, 0xd9,
 
1826
                0x16, 0x03, 0x01, 0x00, 0x04, 0x0e, 0x00, 0x00,
 
1827
                0x00,
 
1828
        },
 
1829
        {
 
1830
                0x16, 0x03, 0x01, 0x00, 0x86, 0x10, 0x00, 0x00,
 
1831
                0x82, 0x00, 0x80, 0x68, 0x10, 0xdc, 0x80, 0xbc,
 
1832
                0xb3, 0x5a, 0x10, 0x75, 0x89, 0xcc, 0xe5, 0x9f,
 
1833
                0xbf, 0xe2, 0xce, 0xa4, 0x9f, 0x7f, 0x60, 0xc4,
 
1834
                0xfe, 0x5c, 0xb5, 0x02, 0x2d, 0xa5, 0xa9, 0x1e,
 
1835
                0x2c, 0x10, 0x79, 0x15, 0x0f, 0xed, 0x96, 0xb3,
 
1836
                0xa8, 0x5e, 0x21, 0xbc, 0x5b, 0xdc, 0x58, 0x04,
 
1837
                0x7d, 0x37, 0xdb, 0xa0, 0x31, 0xe8, 0x4f, 0x04,
 
1838
                0xbc, 0x46, 0x7c, 0xdb, 0x2e, 0x93, 0x07, 0xaf,
 
1839
                0xa6, 0x36, 0xd3, 0x39, 0x8d, 0x1d, 0x95, 0xa8,
 
1840
                0x50, 0x4b, 0xc4, 0x2b, 0xde, 0xd7, 0x04, 0x6d,
 
1841
                0x77, 0x6c, 0x4d, 0x70, 0x51, 0x88, 0x16, 0x31,
 
1842
                0x40, 0xb5, 0xba, 0x90, 0x47, 0x64, 0x0c, 0x87,
 
1843
                0xa5, 0x19, 0xf9, 0x89, 0x24, 0x3c, 0x5e, 0x4b,
 
1844
                0xaa, 0xe0, 0x60, 0x47, 0x0f, 0x2e, 0xcc, 0xc2,
 
1845
                0xd5, 0x21, 0xed, 0x72, 0xd0, 0xa9, 0xdd, 0x2a,
 
1846
                0x2b, 0xef, 0x08, 0x3a, 0x65, 0xea, 0x8b, 0x52,
 
1847
                0x77, 0x2d, 0xcc, 0x14, 0x03, 0x01, 0x00, 0x01,
 
1848
                0x01, 0x16, 0x03, 0x01, 0x00, 0x24, 0xe2, 0x95,
 
1849
                0x62, 0x3c, 0x18, 0xe5, 0xc7, 0x2c, 0xda, 0x16,
 
1850
                0x9b, 0x28, 0x0d, 0xf7, 0x88, 0x7b, 0x5d, 0x33,
 
1851
                0x55, 0x3b, 0x01, 0x73, 0xf2, 0xc6, 0x4e, 0x96,
 
1852
                0x01, 0x01, 0x83, 0x65, 0xd4, 0xef, 0x12, 0x13,
 
1853
                0x1d, 0x42,
 
1854
        },
 
1855
        {
 
1856
                0x16, 0x03, 0x01, 0x00, 0x72, 0x04, 0x00, 0x00,
 
1857
                0x6e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00,
 
1858
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1859
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x65,
 
1860
                0xe8, 0x4b, 0xd1, 0xef, 0xba, 0xfb, 0x41, 0x92,
 
1861
                0x6d, 0x37, 0x5f, 0xf8, 0x7d, 0x90, 0x0f, 0x01,
 
1862
                0xf8, 0x8c, 0xee, 0xbc, 0xd9, 0x0c, 0x97, 0x7e,
 
1863
                0x23, 0x46, 0xe2, 0x6b, 0x52, 0xc6, 0xc6, 0x97,
 
1864
                0x1d, 0xab, 0xde, 0xa0, 0x86, 0x94, 0xc8, 0x2e,
 
1865
                0x8b, 0x2e, 0x42, 0x5f, 0xc2, 0x70, 0x35, 0xc9,
 
1866
                0xee, 0x37, 0xeb, 0x70, 0xaa, 0x59, 0x23, 0x6c,
 
1867
                0xc8, 0xc1, 0x84, 0x89, 0x39, 0x87, 0x73, 0x0a,
 
1868
                0x7e, 0xba, 0xca, 0xed, 0x63, 0xba, 0x4e, 0x4f,
 
1869
                0xf3, 0x31, 0x4b, 0xf0, 0xee, 0x91, 0xa5, 0xb4,
 
1870
                0x62, 0x01, 0x9e, 0xbd, 0xbc, 0xb3, 0x35, 0x14,
 
1871
                0x03, 0x01, 0x00, 0x01, 0x01, 0x16, 0x03, 0x01,
 
1872
                0x00, 0x24, 0x3f, 0x66, 0xe4, 0x98, 0xc1, 0x3f,
 
1873
                0xc6, 0x2c, 0x81, 0xfb, 0xa9, 0x9f, 0x27, 0xe9,
 
1874
                0x63, 0x20, 0x1e, 0x0e, 0x4f, 0xfc, 0x5d, 0x12,
 
1875
                0xee, 0x77, 0x73, 0xc6, 0x96, 0x51, 0xf2, 0x26,
 
1876
                0x35, 0x3f, 0xce, 0x6a, 0xa9, 0xfd, 0x17, 0x03,
 
1877
                0x01, 0x00, 0x21, 0x8d, 0xd5, 0x67, 0x60, 0x5d,
 
1878
                0xa7, 0x93, 0xcc, 0x39, 0x78, 0x59, 0xab, 0xdb,
 
1879
                0x10, 0x96, 0xf2, 0xad, 0xa2, 0x85, 0xe2, 0x93,
 
1880
                0x43, 0x43, 0xcf, 0x82, 0xbd, 0x1f, 0xdc, 0x7a,
 
1881
                0x72, 0xd6, 0x83, 0x3b, 0x15, 0x03, 0x01, 0x00,
 
1882
                0x16, 0x89, 0x55, 0xf6, 0x42, 0x71, 0xa9, 0xe9,
 
1883
                0x05, 0x68, 0xe8, 0xce, 0x0d, 0x21, 0xe9, 0xec,
 
1884
                0xf2, 0x27, 0x67, 0xa7, 0x94, 0xf8, 0x34,
 
1885
        },
 
1886
}
 
1887
var serverResumeTest = [][]byte{
 
1888
        {
 
1889
                0x16, 0x03, 0x01, 0x00, 0xc2, 0x01, 0x00, 0x00,
 
1890
                0xbe, 0x03, 0x01, 0x50, 0x77, 0x3e, 0x4f, 0x1f,
 
1891
                0x6f, 0xa5, 0x81, 0xeb, 0xb8, 0x80, 0x55, 0xa4,
 
1892
                0x76, 0xc2, 0x7f, 0x27, 0xf2, 0xe7, 0xc9, 0x7a,
 
1893
                0x01, 0x3c, 0xd8, 0xc1, 0xde, 0x99, 0x1f, 0x7c,
 
1894
                0xab, 0x35, 0x98, 0x00, 0x00, 0x28, 0x00, 0x39,
 
1895
                0x00, 0x38, 0x00, 0x35, 0x00, 0x16, 0x00, 0x13,
 
1896
                0x00, 0x0a, 0x00, 0x33, 0x00, 0x32, 0x00, 0x2f,
 
1897
                0x00, 0x05, 0x00, 0x04, 0x00, 0x15, 0x00, 0x12,
 
1898
                0x00, 0x09, 0x00, 0x14, 0x00, 0x11, 0x00, 0x08,
 
1899
                0x00, 0x06, 0x00, 0x03, 0x00, 0xff, 0x02, 0x01,
 
1900
                0x00, 0x00, 0x6c, 0x00, 0x23, 0x00, 0x68, 0x00,
 
1901
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1902
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x65,
 
1903
                0xe8, 0x4b, 0xd1, 0xef, 0xba, 0xfb, 0x41, 0x92,
 
1904
                0x6d, 0x37, 0x5f, 0xf8, 0x7d, 0x90, 0x0f, 0x01,
 
1905
                0xf8, 0x8c, 0xee, 0xbc, 0xd9, 0x0c, 0x97, 0x7e,
 
1906
                0x23, 0x46, 0xe2, 0x6b, 0x52, 0xc6, 0xc6, 0x97,
 
1907
                0x1d, 0xab, 0xde, 0xa0, 0x86, 0x94, 0xc8, 0x2e,
 
1908
                0x8b, 0x2e, 0x42, 0x5f, 0xc2, 0x70, 0x35, 0xc9,
 
1909
                0xee, 0x37, 0xeb, 0x70, 0xaa, 0x59, 0x23, 0x6c,
 
1910
                0xc8, 0xc1, 0x84, 0x89, 0x39, 0x87, 0x73, 0x0a,
 
1911
                0x7e, 0xba, 0xca, 0xed, 0x63, 0xba, 0x4e, 0x4f,
 
1912
                0xf3, 0x31, 0x4b, 0xf0, 0xee, 0x91, 0xa5, 0xb4,
 
1913
                0x62, 0x01, 0x9e, 0xbd, 0xbc, 0xb3, 0x35,
 
1914
        },
 
1915
        {
 
1916
                0x16, 0x03, 0x01, 0x00, 0x2a, 0x02, 0x00, 0x00,
 
1917
                0x26, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1918
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1919
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1920
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1921
                0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x14,
 
1922
                0x03, 0x01, 0x00, 0x01, 0x01, 0x16, 0x03, 0x01,
 
1923
                0x00, 0x24, 0xc5, 0x35, 0x74, 0x19, 0x05, 0xc5,
 
1924
                0x85, 0x68, 0x48, 0xe8, 0xb5, 0xe9, 0xaf, 0x78,
 
1925
                0xbd, 0x35, 0x6f, 0xe9, 0x79, 0x34, 0x1b, 0xf0,
 
1926
                0x35, 0xd4, 0x4e, 0x55, 0x2e, 0x3c, 0xd5, 0xaf,
 
1927
                0xfc, 0xba, 0xf5, 0x1e, 0x83, 0x32,
 
1928
        },
 
1929
        {
 
1930
                0x14, 0x03, 0x01, 0x00, 0x01, 0x01, 0x16, 0x03,
 
1931
                0x01, 0x00, 0x24, 0x27, 0x28, 0x88, 0xe1, 0x7e,
 
1932
                0x0d, 0x9c, 0x12, 0x50, 0xf6, 0x7a, 0xa7, 0x32,
 
1933
                0x21, 0x68, 0xba, 0xd8, 0x0a, 0xdc, 0x39, 0xef,
 
1934
                0x68, 0x95, 0x82, 0xae, 0xbd, 0x12, 0x79, 0xa1,
 
1935
                0x99, 0xfd, 0xd0, 0x10, 0x8e, 0x4b, 0xd8,
 
1936
        },
 
1937
        {
 
1938
                0x17, 0x03, 0x01, 0x00, 0x21, 0xc5, 0x7e, 0x0a,
 
1939
                0x52, 0x6a, 0xb9, 0xaa, 0x1d, 0xae, 0x9e, 0x24,
 
1940
                0x9c, 0x34, 0x1e, 0xdb, 0x50, 0x95, 0xee, 0x76,
 
1941
                0xd7, 0x28, 0x88, 0x08, 0xe3, 0x2e, 0x58, 0xf7,
 
1942
                0xdb, 0x34, 0x75, 0xa5, 0x7f, 0x9d, 0x15, 0x03,
 
1943
                0x01, 0x00, 0x16, 0x2c, 0xc1, 0x29, 0x5f, 0x12,
 
1944
                0x1d, 0x19, 0xab, 0xb3, 0xf4, 0x35, 0x1c, 0x62,
 
1945
                0x6a, 0x80, 0x29, 0x0d, 0x0e, 0xef, 0x7d, 0x6e,
 
1946
                0x50,
 
1947
        },
 
1948
}
 
1949
 
 
1950
var clientauthRSATests = []clientauthTest{
 
1951
        // Server asks for cert with empty CA list, client doesn't give it.
 
1952
        // go test -run "TestRunServer" -serve -clientauth 1
 
1953
        {"RequestClientCert, none given", RequestClientCert, nil, [][]byte{
 
1954
                {
 
1955
                        0x16, 0x03, 0x01, 0x01, 0x1e, 0x01, 0x00, 0x01,
 
1956
                        0x1a, 0x03, 0x03, 0x51, 0xe5, 0x6c, 0xb5, 0x5a,
 
1957
                        0xc2, 0xf5, 0xf0, 0x92, 0x94, 0x8a, 0x64, 0x18,
 
1958
                        0xa4, 0x2b, 0x82, 0x07, 0xbc, 0xd9, 0xd9, 0xf9,
 
1959
                        0x7b, 0xd2, 0xd0, 0xee, 0xa2, 0x70, 0x4e, 0x23,
 
1960
                        0x88, 0x7c, 0x95, 0x00, 0x00, 0x82, 0xc0, 0x30,
 
1961
                        0xc0, 0x2c, 0xc0, 0x28, 0xc0, 0x24, 0xc0, 0x14,
 
1962
                        0xc0, 0x0a, 0x00, 0xa3, 0x00, 0x9f, 0x00, 0x6b,
 
1963
                        0x00, 0x6a, 0x00, 0x39, 0x00, 0x38, 0xc0, 0x32,
 
1964
                        0xc0, 0x2e, 0xc0, 0x2a, 0xc0, 0x26, 0xc0, 0x0f,
 
1965
                        0xc0, 0x05, 0x00, 0x9d, 0x00, 0x3d, 0x00, 0x35,
 
1966
                        0xc0, 0x12, 0xc0, 0x08, 0x00, 0x16, 0x00, 0x13,
 
1967
                        0xc0, 0x0d, 0xc0, 0x03, 0x00, 0x0a, 0xc0, 0x2f,
 
1968
                        0xc0, 0x2b, 0xc0, 0x27, 0xc0, 0x23, 0xc0, 0x13,
 
1969
                        0xc0, 0x09, 0x00, 0xa2, 0x00, 0x9e, 0x00, 0x67,
 
1970
                        0x00, 0x40, 0x00, 0x33, 0x00, 0x32, 0xc0, 0x31,
 
1971
                        0xc0, 0x2d, 0xc0, 0x29, 0xc0, 0x25, 0xc0, 0x0e,
 
1972
                        0xc0, 0x04, 0x00, 0x9c, 0x00, 0x3c, 0x00, 0x2f,
 
1973
                        0x00, 0x07, 0xc0, 0x11, 0xc0, 0x07, 0xc0, 0x0c,
 
1974
                        0xc0, 0x02, 0x00, 0x05, 0x00, 0x04, 0x00, 0x15,
 
1975
                        0x00, 0x12, 0x00, 0x09, 0x00, 0x14, 0x00, 0x11,
 
1976
                        0x00, 0x08, 0x00, 0x06, 0x00, 0x03, 0x00, 0xff,
 
1977
                        0x01, 0x00, 0x00, 0x6f, 0x00, 0x0b, 0x00, 0x04,
 
1978
                        0x03, 0x00, 0x01, 0x02, 0x00, 0x0a, 0x00, 0x34,
 
1979
                        0x00, 0x32, 0x00, 0x0e, 0x00, 0x0d, 0x00, 0x19,
 
1980
                        0x00, 0x0b, 0x00, 0x0c, 0x00, 0x18, 0x00, 0x09,
 
1981
                        0x00, 0x0a, 0x00, 0x16, 0x00, 0x17, 0x00, 0x08,
 
1982
                        0x00, 0x06, 0x00, 0x07, 0x00, 0x14, 0x00, 0x15,
 
1983
                        0x00, 0x04, 0x00, 0x05, 0x00, 0x12, 0x00, 0x13,
 
1984
                        0x00, 0x01, 0x00, 0x02, 0x00, 0x03, 0x00, 0x0f,
 
1985
                        0x00, 0x10, 0x00, 0x11, 0x00, 0x23, 0x00, 0x00,
 
1986
                        0x00, 0x0d, 0x00, 0x22, 0x00, 0x20, 0x06, 0x01,
 
1987
                        0x06, 0x02, 0x06, 0x03, 0x05, 0x01, 0x05, 0x02,
 
1988
                        0x05, 0x03, 0x04, 0x01, 0x04, 0x02, 0x04, 0x03,
 
1989
                        0x03, 0x01, 0x03, 0x02, 0x03, 0x03, 0x02, 0x01,
 
1990
                        0x02, 0x02, 0x02, 0x03, 0x01, 0x01, 0x00, 0x0f,
 
1991
                        0x00, 0x01, 0x01,
 
1992
                },
 
1993
                {
 
1994
                        0x16, 0x03, 0x01, 0x00, 0x30, 0x02, 0x00, 0x00,
 
1995
                        0x2c, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1996
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1997
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1998
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
1999
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00,
 
2000
                        0x04, 0x00, 0x23, 0x00, 0x00, 0x16, 0x03, 0x01,
 
2001
                        0x02, 0xbe, 0x0b, 0x00, 0x02, 0xba, 0x00, 0x02,
 
2002
                        0xb7, 0x00, 0x02, 0xb4, 0x30, 0x82, 0x02, 0xb0,
 
2003
                        0x30, 0x82, 0x02, 0x19, 0xa0, 0x03, 0x02, 0x01,
 
2004
                        0x02, 0x02, 0x09, 0x00, 0x85, 0xb0, 0xbb, 0xa4,
 
2005
                        0x8a, 0x7f, 0xb8, 0xca, 0x30, 0x0d, 0x06, 0x09,
 
2006
                        0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
 
2007
                        0x05, 0x05, 0x00, 0x30, 0x45, 0x31, 0x0b, 0x30,
 
2008
                        0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02,
 
2009
                        0x41, 0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03,
 
2010
                        0x55, 0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d,
 
2011
                        0x65, 0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31,
 
2012
                        0x21, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a,
 
2013
                        0x13, 0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e,
 
2014
                        0x65, 0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69,
 
2015
                        0x74, 0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c,
 
2016
                        0x74, 0x64, 0x30, 0x1e, 0x17, 0x0d, 0x31, 0x30,
 
2017
                        0x30, 0x34, 0x32, 0x34, 0x30, 0x39, 0x30, 0x39,
 
2018
                        0x33, 0x38, 0x5a, 0x17, 0x0d, 0x31, 0x31, 0x30,
 
2019
                        0x34, 0x32, 0x34, 0x30, 0x39, 0x30, 0x39, 0x33,
 
2020
                        0x38, 0x5a, 0x30, 0x45, 0x31, 0x0b, 0x30, 0x09,
 
2021
                        0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x41,
 
2022
                        0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55,
 
2023
                        0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d, 0x65,
 
2024
                        0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31, 0x21,
 
2025
                        0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13,
 
2026
                        0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65,
 
2027
                        0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69, 0x74,
 
2028
                        0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c, 0x74,
 
2029
                        0x64, 0x30, 0x81, 0x9f, 0x30, 0x0d, 0x06, 0x09,
 
2030
                        0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
 
2031
                        0x01, 0x05, 0x00, 0x03, 0x81, 0x8d, 0x00, 0x30,
 
2032
                        0x81, 0x89, 0x02, 0x81, 0x81, 0x00, 0xbb, 0x79,
 
2033
                        0xd6, 0xf5, 0x17, 0xb5, 0xe5, 0xbf, 0x46, 0x10,
 
2034
                        0xd0, 0xdc, 0x69, 0xbe, 0xe6, 0x2b, 0x07, 0x43,
 
2035
                        0x5a, 0xd0, 0x03, 0x2d, 0x8a, 0x7a, 0x43, 0x85,
 
2036
                        0xb7, 0x14, 0x52, 0xe7, 0xa5, 0x65, 0x4c, 0x2c,
 
2037
                        0x78, 0xb8, 0x23, 0x8c, 0xb5, 0xb4, 0x82, 0xe5,
 
2038
                        0xde, 0x1f, 0x95, 0x3b, 0x7e, 0x62, 0xa5, 0x2c,
 
2039
                        0xa5, 0x33, 0xd6, 0xfe, 0x12, 0x5c, 0x7a, 0x56,
 
2040
                        0xfc, 0xf5, 0x06, 0xbf, 0xfa, 0x58, 0x7b, 0x26,
 
2041
                        0x3f, 0xb5, 0xcd, 0x04, 0xd3, 0xd0, 0xc9, 0x21,
 
2042
                        0x96, 0x4a, 0xc7, 0xf4, 0x54, 0x9f, 0x5a, 0xbf,
 
2043
                        0xef, 0x42, 0x71, 0x00, 0xfe, 0x18, 0x99, 0x07,
 
2044
                        0x7f, 0x7e, 0x88, 0x7d, 0x7d, 0xf1, 0x04, 0x39,
 
2045
                        0xc4, 0xa2, 0x2e, 0xdb, 0x51, 0xc9, 0x7c, 0xe3,
 
2046
                        0xc0, 0x4c, 0x3b, 0x32, 0x66, 0x01, 0xcf, 0xaf,
 
2047
                        0xb1, 0x1d, 0xb8, 0x71, 0x9a, 0x1d, 0xdb, 0xdb,
 
2048
                        0x89, 0x6b, 0xae, 0xda, 0x2d, 0x79, 0x02, 0x03,
 
2049
                        0x01, 0x00, 0x01, 0xa3, 0x81, 0xa7, 0x30, 0x81,
 
2050
                        0xa4, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e,
 
2051
                        0x04, 0x16, 0x04, 0x14, 0xb1, 0xad, 0xe2, 0x85,
 
2052
                        0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69, 0xce, 0x23,
 
2053
                        0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18, 0x88, 0x39,
 
2054
                        0x30, 0x75, 0x06, 0x03, 0x55, 0x1d, 0x23, 0x04,
 
2055
                        0x6e, 0x30, 0x6c, 0x80, 0x14, 0xb1, 0xad, 0xe2,
 
2056
                        0x85, 0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69, 0xce,
 
2057
                        0x23, 0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18, 0x88,
 
2058
                        0x39, 0xa1, 0x49, 0xa4, 0x47, 0x30, 0x45, 0x31,
 
2059
                        0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06,
 
2060
                        0x13, 0x02, 0x41, 0x55, 0x31, 0x13, 0x30, 0x11,
 
2061
                        0x06, 0x03, 0x55, 0x04, 0x08, 0x13, 0x0a, 0x53,
 
2062
                        0x6f, 0x6d, 0x65, 0x2d, 0x53, 0x74, 0x61, 0x74,
 
2063
                        0x65, 0x31, 0x21, 0x30, 0x1f, 0x06, 0x03, 0x55,
 
2064
                        0x04, 0x0a, 0x13, 0x18, 0x49, 0x6e, 0x74, 0x65,
 
2065
                        0x72, 0x6e, 0x65, 0x74, 0x20, 0x57, 0x69, 0x64,
 
2066
                        0x67, 0x69, 0x74, 0x73, 0x20, 0x50, 0x74, 0x79,
 
2067
                        0x20, 0x4c, 0x74, 0x64, 0x82, 0x09, 0x00, 0x85,
 
2068
                        0xb0, 0xbb, 0xa4, 0x8a, 0x7f, 0xb8, 0xca, 0x30,
 
2069
                        0x0c, 0x06, 0x03, 0x55, 0x1d, 0x13, 0x04, 0x05,
 
2070
                        0x30, 0x03, 0x01, 0x01, 0xff, 0x30, 0x0d, 0x06,
 
2071
                        0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01,
 
2072
                        0x01, 0x05, 0x05, 0x00, 0x03, 0x81, 0x81, 0x00,
 
2073
                        0x08, 0x6c, 0x45, 0x24, 0xc7, 0x6b, 0xb1, 0x59,
 
2074
                        0xab, 0x0c, 0x52, 0xcc, 0xf2, 0xb0, 0x14, 0xd7,
 
2075
                        0x87, 0x9d, 0x7a, 0x64, 0x75, 0xb5, 0x5a, 0x95,
 
2076
                        0x66, 0xe4, 0xc5, 0x2b, 0x8e, 0xae, 0x12, 0x66,
 
2077
                        0x1f, 0xeb, 0x4f, 0x38, 0xb3, 0x6e, 0x60, 0xd3,
 
2078
                        0x92, 0xfd, 0xf7, 0x41, 0x08, 0xb5, 0x25, 0x13,
 
2079
                        0xb1, 0x18, 0x7a, 0x24, 0xfb, 0x30, 0x1d, 0xba,
 
2080
                        0xed, 0x98, 0xb9, 0x17, 0xec, 0xe7, 0xd7, 0x31,
 
2081
                        0x59, 0xdb, 0x95, 0xd3, 0x1d, 0x78, 0xea, 0x50,
 
2082
                        0x56, 0x5c, 0xd5, 0x82, 0x5a, 0x2d, 0x5a, 0x5f,
 
2083
                        0x33, 0xc4, 0xb6, 0xd8, 0xc9, 0x75, 0x90, 0x96,
 
2084
                        0x8c, 0x0f, 0x52, 0x98, 0xb5, 0xcd, 0x98, 0x1f,
 
2085
                        0x89, 0x20, 0x5f, 0xf2, 0xa0, 0x1c, 0xa3, 0x1b,
 
2086
                        0x96, 0x94, 0xdd, 0xa9, 0xfd, 0x57, 0xe9, 0x70,
 
2087
                        0xe8, 0x26, 0x6d, 0x71, 0x99, 0x9b, 0x26, 0x6e,
 
2088
                        0x38, 0x50, 0x29, 0x6c, 0x90, 0xa7, 0xbd, 0xd9,
 
2089
                        0x16, 0x03, 0x01, 0x00, 0x09, 0x0d, 0x00, 0x00,
 
2090
                        0x05, 0x02, 0x01, 0x40, 0x00, 0x00, 0x16, 0x03,
 
2091
                        0x01, 0x00, 0x04, 0x0e, 0x00, 0x00, 0x00,
 
2092
                },
 
2093
                {
 
2094
                        0x16, 0x03, 0x01, 0x00, 0x07, 0x0b, 0x00, 0x00,
 
2095
                        0x03, 0x00, 0x00, 0x00, 0x16, 0x03, 0x01, 0x00,
 
2096
                        0x86, 0x10, 0x00, 0x00, 0x82, 0x00, 0x80, 0x36,
 
2097
                        0xfc, 0xd8, 0xc8, 0xa2, 0x67, 0xc8, 0xc6, 0xf4,
 
2098
                        0x28, 0x70, 0xe1, 0x5a, 0x02, 0x8f, 0xef, 0x42,
 
2099
                        0xe0, 0xd3, 0xb8, 0xd6, 0x6b, 0xe4, 0xee, 0x5c,
 
2100
                        0xcf, 0x42, 0xc4, 0xfa, 0xcd, 0x0f, 0xfe, 0xf4,
 
2101
                        0x76, 0x76, 0x47, 0x73, 0xa8, 0x72, 0x8f, 0xa2,
 
2102
                        0x56, 0x81, 0x83, 0xb8, 0x84, 0x72, 0x67, 0xdd,
 
2103
                        0xbe, 0x05, 0x4b, 0x84, 0xd9, 0xd2, 0xb6, 0xc2,
 
2104
                        0xe7, 0x20, 0xac, 0x1f, 0x46, 0x9d, 0x05, 0x47,
 
2105
                        0x8e, 0x89, 0xc0, 0x42, 0x57, 0x4a, 0xa2, 0x98,
 
2106
                        0xe5, 0x39, 0x4f, 0xc4, 0x27, 0x6d, 0x43, 0xa8,
 
2107
                        0x83, 0x76, 0xe6, 0xad, 0xe3, 0x17, 0x68, 0x31,
 
2108
                        0xcb, 0x7e, 0xfc, 0xe7, 0x4b, 0x76, 0x3d, 0x3c,
 
2109
                        0xfa, 0x77, 0x65, 0xc9, 0x4c, 0x5b, 0xce, 0x5e,
 
2110
                        0xf7, 0x8b, 0xa8, 0xa6, 0xdd, 0xb2, 0xef, 0x0b,
 
2111
                        0x46, 0x83, 0xdf, 0x0a, 0x8c, 0x22, 0x12, 0x6e,
 
2112
                        0xe1, 0x45, 0x54, 0x88, 0xd1, 0xe8, 0xd2, 0x14,
 
2113
                        0x03, 0x01, 0x00, 0x01, 0x01, 0x16, 0x03, 0x01,
 
2114
                        0x00, 0x24, 0x30, 0x8c, 0x7d, 0x40, 0xfc, 0x5e,
 
2115
                        0x80, 0x9c, 0xc4, 0x7c, 0x62, 0x01, 0xa1, 0x37,
 
2116
                        0xcf, 0x1a, 0x75, 0x28, 0x8d, 0xeb, 0x63, 0xcc,
 
2117
                        0x02, 0xa6, 0x66, 0xdf, 0x36, 0x01, 0xb3, 0x9d,
 
2118
                        0x38, 0x42, 0x16, 0x91, 0xf0, 0x02,
 
2119
                },
 
2120
                {
 
2121
                        0x16, 0x03, 0x01, 0x00, 0x72, 0x04, 0x00, 0x00,
 
2122
                        0x6e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00,
 
2123
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2124
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x65,
 
2125
                        0xe8, 0x4b, 0xd1, 0xef, 0xba, 0x96, 0x9a, 0x2a,
 
2126
                        0x6c, 0x8c, 0x7e, 0x38, 0x10, 0x46, 0x86, 0x1d,
 
2127
                        0x19, 0x1d, 0x62, 0x29, 0x3f, 0x58, 0xfb, 0x6d,
 
2128
                        0x89, 0xd2, 0x81, 0x9a, 0x1c, 0xb3, 0x58, 0xb3,
 
2129
                        0x19, 0x39, 0x17, 0x47, 0x49, 0xc9, 0xfe, 0x4a,
 
2130
                        0x7a, 0x32, 0xac, 0x2c, 0x43, 0xf9, 0xa9, 0xea,
 
2131
                        0xec, 0x51, 0x46, 0xf1, 0xb8, 0x59, 0x23, 0x70,
 
2132
                        0xce, 0x7c, 0xb9, 0x47, 0x70, 0xa3, 0xc9, 0xae,
 
2133
                        0x47, 0x7b, 0x7e, 0xc7, 0xcf, 0x76, 0x12, 0x76,
 
2134
                        0x18, 0x90, 0x12, 0xcd, 0xf3, 0xd4, 0x27, 0x81,
 
2135
                        0xfc, 0x46, 0x03, 0x3e, 0x05, 0x87, 0x6f, 0x14,
 
2136
                        0x03, 0x01, 0x00, 0x01, 0x01, 0x16, 0x03, 0x01,
 
2137
                        0x00, 0x24, 0xc3, 0xa0, 0x29, 0xb1, 0x52, 0x82,
 
2138
                        0xef, 0x85, 0xa1, 0x64, 0x0f, 0xe4, 0xa3, 0xfb,
 
2139
                        0xa7, 0x1d, 0x22, 0x4c, 0xcb, 0xd6, 0x5b, 0x18,
 
2140
                        0x61, 0xc7, 0x7c, 0xf2, 0x67, 0x4a, 0xc7, 0x11,
 
2141
                        0x9d, 0x8e, 0x0e, 0x15, 0x22, 0xcf, 0x17, 0x03,
 
2142
                        0x01, 0x00, 0x21, 0xfd, 0xbb, 0xf1, 0xa9, 0x7c,
 
2143
                        0xbf, 0x92, 0xb3, 0xfa, 0x2c, 0x08, 0x6f, 0x22,
 
2144
                        0x78, 0x80, 0xf2, 0x2e, 0x86, 0x26, 0x21, 0x36,
 
2145
                        0x3f, 0x32, 0xdf, 0xb6, 0x47, 0xa5, 0xf8, 0x27,
 
2146
                        0xc1, 0xe9, 0x53, 0x90, 0x15, 0x03, 0x01, 0x00,
 
2147
                        0x16, 0xfe, 0xef, 0x2e, 0xa0, 0x5d, 0xe0, 0xce,
 
2148
                        0x94, 0x20, 0x56, 0x61, 0x6e, 0xe5, 0x62, 0xce,
 
2149
                        0x27, 0x57, 0x3e, 0x30, 0x32, 0x77, 0x53,
 
2150
                },
 
2151
        }},
 
2152
 
 
2153
        // Server asks for cert with empty CA list, client gives one
 
2154
        // go test -run "TestRunServer" -serve -clientauth 1
 
2155
        {"RequestClientCert, client gives it", RequestClientCert, []*x509.Certificate{clientCertificate}, [][]byte{
 
2156
                {
 
2157
                        0x16, 0x03, 0x01, 0x01, 0x1e, 0x01, 0x00, 0x01,
 
2158
                        0x1a, 0x03, 0x03, 0x51, 0xe5, 0x74, 0x0e, 0x95,
 
2159
                        0x6f, 0x4f, 0x4a, 0xbf, 0xb7, 0xc0, 0x6c, 0xac,
 
2160
                        0xd9, 0xfe, 0x7d, 0xd0, 0x51, 0x19, 0x62, 0x62,
 
2161
                        0x1c, 0x6e, 0x57, 0x77, 0xd2, 0x31, 0xaf, 0x88,
 
2162
                        0xb9, 0xc0, 0x1d, 0x00, 0x00, 0x82, 0xc0, 0x30,
 
2163
                        0xc0, 0x2c, 0xc0, 0x28, 0xc0, 0x24, 0xc0, 0x14,
 
2164
                        0xc0, 0x0a, 0x00, 0xa3, 0x00, 0x9f, 0x00, 0x6b,
 
2165
                        0x00, 0x6a, 0x00, 0x39, 0x00, 0x38, 0xc0, 0x32,
 
2166
                        0xc0, 0x2e, 0xc0, 0x2a, 0xc0, 0x26, 0xc0, 0x0f,
 
2167
                        0xc0, 0x05, 0x00, 0x9d, 0x00, 0x3d, 0x00, 0x35,
 
2168
                        0xc0, 0x12, 0xc0, 0x08, 0x00, 0x16, 0x00, 0x13,
 
2169
                        0xc0, 0x0d, 0xc0, 0x03, 0x00, 0x0a, 0xc0, 0x2f,
 
2170
                        0xc0, 0x2b, 0xc0, 0x27, 0xc0, 0x23, 0xc0, 0x13,
 
2171
                        0xc0, 0x09, 0x00, 0xa2, 0x00, 0x9e, 0x00, 0x67,
 
2172
                        0x00, 0x40, 0x00, 0x33, 0x00, 0x32, 0xc0, 0x31,
 
2173
                        0xc0, 0x2d, 0xc0, 0x29, 0xc0, 0x25, 0xc0, 0x0e,
 
2174
                        0xc0, 0x04, 0x00, 0x9c, 0x00, 0x3c, 0x00, 0x2f,
 
2175
                        0x00, 0x07, 0xc0, 0x11, 0xc0, 0x07, 0xc0, 0x0c,
 
2176
                        0xc0, 0x02, 0x00, 0x05, 0x00, 0x04, 0x00, 0x15,
 
2177
                        0x00, 0x12, 0x00, 0x09, 0x00, 0x14, 0x00, 0x11,
 
2178
                        0x00, 0x08, 0x00, 0x06, 0x00, 0x03, 0x00, 0xff,
 
2179
                        0x01, 0x00, 0x00, 0x6f, 0x00, 0x0b, 0x00, 0x04,
 
2180
                        0x03, 0x00, 0x01, 0x02, 0x00, 0x0a, 0x00, 0x34,
 
2181
                        0x00, 0x32, 0x00, 0x0e, 0x00, 0x0d, 0x00, 0x19,
 
2182
                        0x00, 0x0b, 0x00, 0x0c, 0x00, 0x18, 0x00, 0x09,
 
2183
                        0x00, 0x0a, 0x00, 0x16, 0x00, 0x17, 0x00, 0x08,
 
2184
                        0x00, 0x06, 0x00, 0x07, 0x00, 0x14, 0x00, 0x15,
 
2185
                        0x00, 0x04, 0x00, 0x05, 0x00, 0x12, 0x00, 0x13,
 
2186
                        0x00, 0x01, 0x00, 0x02, 0x00, 0x03, 0x00, 0x0f,
 
2187
                        0x00, 0x10, 0x00, 0x11, 0x00, 0x23, 0x00, 0x00,
 
2188
                        0x00, 0x0d, 0x00, 0x22, 0x00, 0x20, 0x06, 0x01,
 
2189
                        0x06, 0x02, 0x06, 0x03, 0x05, 0x01, 0x05, 0x02,
 
2190
                        0x05, 0x03, 0x04, 0x01, 0x04, 0x02, 0x04, 0x03,
 
2191
                        0x03, 0x01, 0x03, 0x02, 0x03, 0x03, 0x02, 0x01,
 
2192
                        0x02, 0x02, 0x02, 0x03, 0x01, 0x01, 0x00, 0x0f,
 
2193
                        0x00, 0x01, 0x01,
 
2194
                },
 
2195
                {
 
2196
                        0x16, 0x03, 0x01, 0x00, 0x30, 0x02, 0x00, 0x00,
 
2197
                        0x2c, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2198
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2199
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2200
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2201
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00,
 
2202
                        0x04, 0x00, 0x23, 0x00, 0x00, 0x16, 0x03, 0x01,
 
2203
                        0x02, 0xbe, 0x0b, 0x00, 0x02, 0xba, 0x00, 0x02,
 
2204
                        0xb7, 0x00, 0x02, 0xb4, 0x30, 0x82, 0x02, 0xb0,
 
2205
                        0x30, 0x82, 0x02, 0x19, 0xa0, 0x03, 0x02, 0x01,
 
2206
                        0x02, 0x02, 0x09, 0x00, 0x85, 0xb0, 0xbb, 0xa4,
 
2207
                        0x8a, 0x7f, 0xb8, 0xca, 0x30, 0x0d, 0x06, 0x09,
 
2208
                        0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
 
2209
                        0x05, 0x05, 0x00, 0x30, 0x45, 0x31, 0x0b, 0x30,
 
2210
                        0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02,
 
2211
                        0x41, 0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03,
 
2212
                        0x55, 0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d,
 
2213
                        0x65, 0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31,
 
2214
                        0x21, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a,
 
2215
                        0x13, 0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e,
 
2216
                        0x65, 0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69,
 
2217
                        0x74, 0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c,
 
2218
                        0x74, 0x64, 0x30, 0x1e, 0x17, 0x0d, 0x31, 0x30,
 
2219
                        0x30, 0x34, 0x32, 0x34, 0x30, 0x39, 0x30, 0x39,
 
2220
                        0x33, 0x38, 0x5a, 0x17, 0x0d, 0x31, 0x31, 0x30,
 
2221
                        0x34, 0x32, 0x34, 0x30, 0x39, 0x30, 0x39, 0x33,
 
2222
                        0x38, 0x5a, 0x30, 0x45, 0x31, 0x0b, 0x30, 0x09,
 
2223
                        0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x41,
 
2224
                        0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55,
 
2225
                        0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d, 0x65,
 
2226
                        0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31, 0x21,
 
2227
                        0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13,
 
2228
                        0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65,
 
2229
                        0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69, 0x74,
 
2230
                        0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c, 0x74,
 
2231
                        0x64, 0x30, 0x81, 0x9f, 0x30, 0x0d, 0x06, 0x09,
 
2232
                        0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
 
2233
                        0x01, 0x05, 0x00, 0x03, 0x81, 0x8d, 0x00, 0x30,
 
2234
                        0x81, 0x89, 0x02, 0x81, 0x81, 0x00, 0xbb, 0x79,
 
2235
                        0xd6, 0xf5, 0x17, 0xb5, 0xe5, 0xbf, 0x46, 0x10,
 
2236
                        0xd0, 0xdc, 0x69, 0xbe, 0xe6, 0x2b, 0x07, 0x43,
 
2237
                        0x5a, 0xd0, 0x03, 0x2d, 0x8a, 0x7a, 0x43, 0x85,
 
2238
                        0xb7, 0x14, 0x52, 0xe7, 0xa5, 0x65, 0x4c, 0x2c,
 
2239
                        0x78, 0xb8, 0x23, 0x8c, 0xb5, 0xb4, 0x82, 0xe5,
 
2240
                        0xde, 0x1f, 0x95, 0x3b, 0x7e, 0x62, 0xa5, 0x2c,
 
2241
                        0xa5, 0x33, 0xd6, 0xfe, 0x12, 0x5c, 0x7a, 0x56,
 
2242
                        0xfc, 0xf5, 0x06, 0xbf, 0xfa, 0x58, 0x7b, 0x26,
 
2243
                        0x3f, 0xb5, 0xcd, 0x04, 0xd3, 0xd0, 0xc9, 0x21,
 
2244
                        0x96, 0x4a, 0xc7, 0xf4, 0x54, 0x9f, 0x5a, 0xbf,
 
2245
                        0xef, 0x42, 0x71, 0x00, 0xfe, 0x18, 0x99, 0x07,
 
2246
                        0x7f, 0x7e, 0x88, 0x7d, 0x7d, 0xf1, 0x04, 0x39,
 
2247
                        0xc4, 0xa2, 0x2e, 0xdb, 0x51, 0xc9, 0x7c, 0xe3,
 
2248
                        0xc0, 0x4c, 0x3b, 0x32, 0x66, 0x01, 0xcf, 0xaf,
 
2249
                        0xb1, 0x1d, 0xb8, 0x71, 0x9a, 0x1d, 0xdb, 0xdb,
 
2250
                        0x89, 0x6b, 0xae, 0xda, 0x2d, 0x79, 0x02, 0x03,
 
2251
                        0x01, 0x00, 0x01, 0xa3, 0x81, 0xa7, 0x30, 0x81,
 
2252
                        0xa4, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e,
 
2253
                        0x04, 0x16, 0x04, 0x14, 0xb1, 0xad, 0xe2, 0x85,
 
2254
                        0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69, 0xce, 0x23,
 
2255
                        0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18, 0x88, 0x39,
 
2256
                        0x30, 0x75, 0x06, 0x03, 0x55, 0x1d, 0x23, 0x04,
 
2257
                        0x6e, 0x30, 0x6c, 0x80, 0x14, 0xb1, 0xad, 0xe2,
 
2258
                        0x85, 0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69, 0xce,
 
2259
                        0x23, 0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18, 0x88,
 
2260
                        0x39, 0xa1, 0x49, 0xa4, 0x47, 0x30, 0x45, 0x31,
 
2261
                        0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06,
 
2262
                        0x13, 0x02, 0x41, 0x55, 0x31, 0x13, 0x30, 0x11,
 
2263
                        0x06, 0x03, 0x55, 0x04, 0x08, 0x13, 0x0a, 0x53,
 
2264
                        0x6f, 0x6d, 0x65, 0x2d, 0x53, 0x74, 0x61, 0x74,
 
2265
                        0x65, 0x31, 0x21, 0x30, 0x1f, 0x06, 0x03, 0x55,
 
2266
                        0x04, 0x0a, 0x13, 0x18, 0x49, 0x6e, 0x74, 0x65,
 
2267
                        0x72, 0x6e, 0x65, 0x74, 0x20, 0x57, 0x69, 0x64,
 
2268
                        0x67, 0x69, 0x74, 0x73, 0x20, 0x50, 0x74, 0x79,
 
2269
                        0x20, 0x4c, 0x74, 0x64, 0x82, 0x09, 0x00, 0x85,
 
2270
                        0xb0, 0xbb, 0xa4, 0x8a, 0x7f, 0xb8, 0xca, 0x30,
 
2271
                        0x0c, 0x06, 0x03, 0x55, 0x1d, 0x13, 0x04, 0x05,
 
2272
                        0x30, 0x03, 0x01, 0x01, 0xff, 0x30, 0x0d, 0x06,
 
2273
                        0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01,
 
2274
                        0x01, 0x05, 0x05, 0x00, 0x03, 0x81, 0x81, 0x00,
 
2275
                        0x08, 0x6c, 0x45, 0x24, 0xc7, 0x6b, 0xb1, 0x59,
 
2276
                        0xab, 0x0c, 0x52, 0xcc, 0xf2, 0xb0, 0x14, 0xd7,
 
2277
                        0x87, 0x9d, 0x7a, 0x64, 0x75, 0xb5, 0x5a, 0x95,
 
2278
                        0x66, 0xe4, 0xc5, 0x2b, 0x8e, 0xae, 0x12, 0x66,
 
2279
                        0x1f, 0xeb, 0x4f, 0x38, 0xb3, 0x6e, 0x60, 0xd3,
 
2280
                        0x92, 0xfd, 0xf7, 0x41, 0x08, 0xb5, 0x25, 0x13,
 
2281
                        0xb1, 0x18, 0x7a, 0x24, 0xfb, 0x30, 0x1d, 0xba,
 
2282
                        0xed, 0x98, 0xb9, 0x17, 0xec, 0xe7, 0xd7, 0x31,
 
2283
                        0x59, 0xdb, 0x95, 0xd3, 0x1d, 0x78, 0xea, 0x50,
 
2284
                        0x56, 0x5c, 0xd5, 0x82, 0x5a, 0x2d, 0x5a, 0x5f,
 
2285
                        0x33, 0xc4, 0xb6, 0xd8, 0xc9, 0x75, 0x90, 0x96,
 
2286
                        0x8c, 0x0f, 0x52, 0x98, 0xb5, 0xcd, 0x98, 0x1f,
 
2287
                        0x89, 0x20, 0x5f, 0xf2, 0xa0, 0x1c, 0xa3, 0x1b,
 
2288
                        0x96, 0x94, 0xdd, 0xa9, 0xfd, 0x57, 0xe9, 0x70,
 
2289
                        0xe8, 0x26, 0x6d, 0x71, 0x99, 0x9b, 0x26, 0x6e,
 
2290
                        0x38, 0x50, 0x29, 0x6c, 0x90, 0xa7, 0xbd, 0xd9,
 
2291
                        0x16, 0x03, 0x01, 0x00, 0x09, 0x0d, 0x00, 0x00,
 
2292
                        0x05, 0x02, 0x01, 0x40, 0x00, 0x00, 0x16, 0x03,
 
2293
                        0x01, 0x00, 0x04, 0x0e, 0x00, 0x00, 0x00,
 
2294
                },
 
2295
                {
 
2296
                        0x16, 0x03, 0x01, 0x01, 0xfb, 0x0b, 0x00, 0x01,
 
2297
                        0xf7, 0x00, 0x01, 0xf4, 0x00, 0x01, 0xf1, 0x30,
 
2298
                        0x82, 0x01, 0xed, 0x30, 0x82, 0x01, 0x58, 0xa0,
 
2299
                        0x03, 0x02, 0x01, 0x02, 0x02, 0x01, 0x00, 0x30,
 
2300
                        0x0b, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7,
 
2301
                        0x0d, 0x01, 0x01, 0x05, 0x30, 0x26, 0x31, 0x10,
 
2302
                        0x30, 0x0e, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13,
 
2303
                        0x07, 0x41, 0x63, 0x6d, 0x65, 0x20, 0x43, 0x6f,
 
2304
                        0x31, 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04,
 
2305
                        0x03, 0x13, 0x09, 0x31, 0x32, 0x37, 0x2e, 0x30,
 
2306
                        0x2e, 0x30, 0x2e, 0x31, 0x30, 0x1e, 0x17, 0x0d,
 
2307
                        0x31, 0x31, 0x31, 0x32, 0x30, 0x38, 0x30, 0x37,
 
2308
                        0x35, 0x35, 0x31, 0x32, 0x5a, 0x17, 0x0d, 0x31,
 
2309
                        0x32, 0x31, 0x32, 0x30, 0x37, 0x30, 0x38, 0x30,
 
2310
                        0x30, 0x31, 0x32, 0x5a, 0x30, 0x26, 0x31, 0x10,
 
2311
                        0x30, 0x0e, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13,
 
2312
                        0x07, 0x41, 0x63, 0x6d, 0x65, 0x20, 0x43, 0x6f,
 
2313
                        0x31, 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04,
 
2314
                        0x03, 0x13, 0x09, 0x31, 0x32, 0x37, 0x2e, 0x30,
 
2315
                        0x2e, 0x30, 0x2e, 0x31, 0x30, 0x81, 0x9c, 0x30,
 
2316
                        0x0b, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7,
 
2317
                        0x0d, 0x01, 0x01, 0x01, 0x03, 0x81, 0x8c, 0x00,
 
2318
                        0x30, 0x81, 0x88, 0x02, 0x81, 0x80, 0x4e, 0xd0,
 
2319
                        0x7b, 0x31, 0xe3, 0x82, 0x64, 0xd9, 0x59, 0xc0,
 
2320
                        0xc2, 0x87, 0xa4, 0x5e, 0x1e, 0x8b, 0x73, 0x33,
 
2321
                        0xc7, 0x63, 0x53, 0xdf, 0x66, 0x92, 0x06, 0x84,
 
2322
                        0xf6, 0x64, 0xd5, 0x8f, 0xe4, 0x36, 0xa7, 0x1d,
 
2323
                        0x2b, 0xe8, 0xb3, 0x20, 0x36, 0x45, 0x23, 0xb5,
 
2324
                        0xe3, 0x95, 0xae, 0xed, 0xe0, 0xf5, 0x20, 0x9c,
 
2325
                        0x8d, 0x95, 0xdf, 0x7f, 0x5a, 0x12, 0xef, 0x87,
 
2326
                        0xe4, 0x5b, 0x68, 0xe4, 0xe9, 0x0e, 0x74, 0xec,
 
2327
                        0x04, 0x8a, 0x7f, 0xde, 0x93, 0x27, 0xc4, 0x01,
 
2328
                        0x19, 0x7a, 0xbd, 0xf2, 0xdc, 0x3d, 0x14, 0xab,
 
2329
                        0xd0, 0x54, 0xca, 0x21, 0x0c, 0xd0, 0x4d, 0x6e,
 
2330
                        0x87, 0x2e, 0x5c, 0xc5, 0xd2, 0xbb, 0x4d, 0x4b,
 
2331
                        0x4f, 0xce, 0xb6, 0x2c, 0xf7, 0x7e, 0x88, 0xec,
 
2332
                        0x7c, 0xd7, 0x02, 0x91, 0x74, 0xa6, 0x1e, 0x0c,
 
2333
                        0x1a, 0xda, 0xe3, 0x4a, 0x5a, 0x2e, 0xde, 0x13,
 
2334
                        0x9c, 0x4c, 0x40, 0x88, 0x59, 0x93, 0x02, 0x03,
 
2335
                        0x01, 0x00, 0x01, 0xa3, 0x32, 0x30, 0x30, 0x30,
 
2336
                        0x0e, 0x06, 0x03, 0x55, 0x1d, 0x0f, 0x01, 0x01,
 
2337
                        0xff, 0x04, 0x04, 0x03, 0x02, 0x00, 0xa0, 0x30,
 
2338
                        0x0d, 0x06, 0x03, 0x55, 0x1d, 0x0e, 0x04, 0x06,
 
2339
                        0x04, 0x04, 0x01, 0x02, 0x03, 0x04, 0x30, 0x0f,
 
2340
                        0x06, 0x03, 0x55, 0x1d, 0x23, 0x04, 0x08, 0x30,
 
2341
                        0x06, 0x80, 0x04, 0x01, 0x02, 0x03, 0x04, 0x30,
 
2342
                        0x0b, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7,
 
2343
                        0x0d, 0x01, 0x01, 0x05, 0x03, 0x81, 0x81, 0x00,
 
2344
                        0x36, 0x1f, 0xb3, 0x7a, 0x0c, 0x75, 0xc9, 0x6e,
 
2345
                        0x37, 0x46, 0x61, 0x2b, 0xd5, 0xbd, 0xc0, 0xa7,
 
2346
                        0x4b, 0xcc, 0x46, 0x9a, 0x81, 0x58, 0x7c, 0x85,
 
2347
                        0x79, 0x29, 0xc8, 0xc8, 0xc6, 0x67, 0xdd, 0x32,
 
2348
                        0x56, 0x45, 0x2b, 0x75, 0xb6, 0xe9, 0x24, 0xa9,
 
2349
                        0x50, 0x9a, 0xbe, 0x1f, 0x5a, 0xfa, 0x1a, 0x15,
 
2350
                        0xd9, 0xcc, 0x55, 0x95, 0x72, 0x16, 0x83, 0xb9,
 
2351
                        0xc2, 0xb6, 0x8f, 0xfd, 0x88, 0x8c, 0x38, 0x84,
 
2352
                        0x1d, 0xab, 0x5d, 0x92, 0x31, 0x13, 0x4f, 0xfd,
 
2353
                        0x83, 0x3b, 0xc6, 0x9d, 0xf1, 0x11, 0x62, 0xb6,
 
2354
                        0x8b, 0xec, 0xab, 0x67, 0xbe, 0xc8, 0x64, 0xb0,
 
2355
                        0x11, 0x50, 0x46, 0x58, 0x17, 0x6b, 0x99, 0x1c,
 
2356
                        0xd3, 0x1d, 0xfc, 0x06, 0xf1, 0x0e, 0xe5, 0x96,
 
2357
                        0xa8, 0x0c, 0xf9, 0x78, 0x20, 0xb7, 0x44, 0x18,
 
2358
                        0x51, 0x8d, 0x10, 0x7e, 0x4f, 0x94, 0x67, 0xdf,
 
2359
                        0xa3, 0x4e, 0x70, 0x73, 0x8e, 0x90, 0x91, 0x85,
 
2360
                        0x16, 0x03, 0x01, 0x00, 0x86, 0x10, 0x00, 0x00,
 
2361
                        0x82, 0x00, 0x80, 0x0a, 0x4e, 0x89, 0xdf, 0x3a,
 
2362
                        0x3f, 0xf0, 0x4f, 0xef, 0x1a, 0x90, 0xd4, 0x3c,
 
2363
                        0xaf, 0x10, 0x57, 0xb0, 0xa1, 0x5f, 0xcd, 0x62,
 
2364
                        0x01, 0xe9, 0x0c, 0x36, 0x42, 0xfd, 0xaf, 0x23,
 
2365
                        0xf9, 0x14, 0xa6, 0x72, 0x26, 0x4e, 0x01, 0xdb,
 
2366
                        0xac, 0xb7, 0x4c, 0xe6, 0xa9, 0x52, 0xe2, 0xec,
 
2367
                        0x26, 0x8c, 0x7a, 0x64, 0xf8, 0x0b, 0x4c, 0x2f,
 
2368
                        0xa9, 0xcb, 0x75, 0xaf, 0x60, 0xd4, 0xb4, 0xe6,
 
2369
                        0xe8, 0xdb, 0x78, 0x78, 0x85, 0xf6, 0x0c, 0x95,
 
2370
                        0xcc, 0xb6, 0x55, 0xb9, 0xba, 0x9e, 0x91, 0xbc,
 
2371
                        0x66, 0xdb, 0x1e, 0x28, 0xab, 0x73, 0xce, 0x8b,
 
2372
                        0xd0, 0xd3, 0xe8, 0xbc, 0xd0, 0x21, 0x28, 0xbd,
 
2373
                        0xfb, 0x74, 0x64, 0xde, 0x3b, 0x3b, 0xd3, 0x4c,
 
2374
                        0x32, 0x40, 0x82, 0xba, 0x91, 0x1e, 0xe8, 0x47,
 
2375
                        0xc2, 0x09, 0xb7, 0x16, 0xaa, 0x25, 0xa9, 0x3c,
 
2376
                        0x6c, 0xa7, 0xf8, 0xc9, 0x54, 0x84, 0xc6, 0xf7,
 
2377
                        0x56, 0x05, 0xa4, 0x16, 0x03, 0x01, 0x00, 0x86,
 
2378
                        0x0f, 0x00, 0x00, 0x82, 0x00, 0x80, 0x4b, 0xab,
 
2379
                        0xda, 0xac, 0x2a, 0xb3, 0xe6, 0x34, 0x55, 0xcd,
 
2380
                        0xf2, 0x4b, 0x67, 0xe3, 0xd3, 0xff, 0xa3, 0xf4,
 
2381
                        0x79, 0x82, 0x01, 0x47, 0x8a, 0xe3, 0x9f, 0x89,
 
2382
                        0x70, 0xbe, 0x24, 0x24, 0xb7, 0x69, 0x60, 0xed,
 
2383
                        0x55, 0xa0, 0xca, 0x72, 0xb6, 0x4a, 0xbc, 0x1d,
 
2384
                        0xe2, 0x3f, 0xb5, 0x31, 0xda, 0x02, 0xf6, 0x37,
 
2385
                        0x51, 0xf8, 0x4c, 0x88, 0x2e, 0xb3, 0x8a, 0xe8,
 
2386
                        0x7b, 0x4a, 0x90, 0x36, 0xe4, 0xa6, 0x31, 0x95,
 
2387
                        0x8b, 0xa0, 0xc6, 0x91, 0x12, 0xb9, 0x35, 0x4e,
 
2388
                        0x72, 0xeb, 0x5c, 0xa2, 0xe8, 0x4c, 0x68, 0xf9,
 
2389
                        0x69, 0xfa, 0x70, 0x60, 0x6c, 0x7f, 0x32, 0x99,
 
2390
                        0xf1, 0xc3, 0x2d, 0xb4, 0x59, 0x58, 0x87, 0xaf,
 
2391
                        0x67, 0x62, 0x90, 0xe7, 0x8d, 0xd0, 0xa3, 0x77,
 
2392
                        0x33, 0xc2, 0x9b, 0xd5, 0x9c, 0xc7, 0xea, 0x25,
 
2393
                        0x98, 0x76, 0x9c, 0xe0, 0x6a, 0x03, 0x3a, 0x10,
 
2394
                        0xfd, 0x10, 0x3d, 0x55, 0x53, 0xa0, 0x14, 0x03,
 
2395
                        0x01, 0x00, 0x01, 0x01, 0x16, 0x03, 0x01, 0x00,
 
2396
                        0x24, 0xd5, 0x12, 0xfc, 0xb9, 0x5a, 0xe3, 0x27,
 
2397
                        0x01, 0xbe, 0xc3, 0x77, 0x17, 0x1a, 0xbb, 0x4f,
 
2398
                        0xae, 0xd5, 0xa7, 0xee, 0x56, 0x61, 0x0d, 0x40,
 
2399
                        0xf4, 0xa4, 0xb5, 0xcc, 0x76, 0xfd, 0xbd, 0x13,
 
2400
                        0x04, 0xe1, 0xb8, 0xc7, 0x36,
 
2401
                },
 
2402
                {
 
2403
                        0x16, 0x03, 0x01, 0x02, 0x67, 0x04, 0x00, 0x02,
 
2404
                        0x63, 0x00, 0x00, 0x00, 0x00, 0x02, 0x5d, 0x00,
 
2405
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2406
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x65,
 
2407
                        0xe8, 0x4b, 0xd1, 0xef, 0xba, 0x1f, 0xe2, 0x69,
 
2408
                        0x07, 0x7f, 0x85, 0x2d, 0x4e, 0x2a, 0x2e, 0xbd,
 
2409
                        0x05, 0xe9, 0xc1, 0x6c, 0x9e, 0xbf, 0x47, 0x18,
 
2410
                        0x91, 0x77, 0xf7, 0xe8, 0xb6, 0x27, 0x37, 0xa6,
 
2411
                        0x6b, 0x87, 0x29, 0xbb, 0x3b, 0xe5, 0x68, 0x62,
 
2412
                        0x04, 0x3e, 0xad, 0x4d, 0xff, 0xad, 0xf1, 0x22,
 
2413
                        0x87, 0x8d, 0xf6, 0x04, 0x3b, 0x59, 0x22, 0xf7,
 
2414
                        0xfd, 0x88, 0x0e, 0xa4, 0x09, 0xc0, 0x0d, 0x10,
 
2415
                        0x80, 0x10, 0x79, 0xee, 0x70, 0x96, 0xdb, 0x22,
 
2416
                        0x8b, 0xb7, 0xac, 0xe0, 0x98, 0xad, 0xe9, 0xe3,
 
2417
                        0xcb, 0xea, 0x9f, 0xe6, 0x83, 0x28, 0x7c, 0x7e,
 
2418
                        0x4e, 0x9a, 0x8d, 0xd9, 0xf3, 0x86, 0xf4, 0x89,
 
2419
                        0x8b, 0x79, 0x8f, 0xbb, 0xe9, 0x74, 0x02, 0x02,
 
2420
                        0x14, 0x04, 0xea, 0xba, 0x16, 0x10, 0xa1, 0x85,
 
2421
                        0xbe, 0x4e, 0x4e, 0x92, 0xc5, 0x83, 0xf6, 0x1e,
 
2422
                        0x1f, 0xd4, 0x25, 0xc2, 0xc2, 0xb9, 0xce, 0x33,
 
2423
                        0x63, 0x66, 0x79, 0x1f, 0x54, 0x35, 0xc1, 0xe8,
 
2424
                        0x89, 0x34, 0x78, 0x94, 0x36, 0x14, 0xef, 0x01,
 
2425
                        0x1f, 0xf1, 0xbd, 0x77, 0x2c, 0x4d, 0xac, 0x5c,
 
2426
                        0x5c, 0x4a, 0xc6, 0xed, 0xd8, 0x0e, 0x72, 0x84,
 
2427
                        0x83, 0xdc, 0x56, 0x84, 0xc8, 0xf3, 0x89, 0x56,
 
2428
                        0xfd, 0x89, 0xc1, 0xc9, 0x9a, 0x29, 0x91, 0x7e,
 
2429
                        0x19, 0xe9, 0x8b, 0x5b, 0x11, 0x15, 0x4e, 0x6c,
 
2430
                        0xf4, 0x89, 0xe7, 0x6d, 0x68, 0x1e, 0xf9, 0x6c,
 
2431
                        0x23, 0x72, 0x05, 0x68, 0x82, 0x60, 0x84, 0x1f,
 
2432
                        0x83, 0x20, 0x09, 0x86, 0x10, 0x81, 0xec, 0xec,
 
2433
                        0xdc, 0x25, 0x53, 0x20, 0xfa, 0xa9, 0x41, 0x64,
 
2434
                        0xd6, 0x20, 0xf3, 0xf4, 0x52, 0xf2, 0x80, 0x62,
 
2435
                        0x83, 0xc9, 0x23, 0x66, 0x44, 0x95, 0x5a, 0x99,
 
2436
                        0x8a, 0xe1, 0x26, 0x63, 0xc1, 0x8b, 0x31, 0xf9,
 
2437
                        0x21, 0x06, 0x77, 0x04, 0x27, 0xf2, 0x0c, 0x63,
 
2438
                        0x83, 0x45, 0xa0, 0xa9, 0x7b, 0xcf, 0xdf, 0xd7,
 
2439
                        0x56, 0x75, 0xbc, 0xdd, 0x95, 0x36, 0xb1, 0x75,
 
2440
                        0x39, 0x05, 0x00, 0x3c, 0x8a, 0x79, 0xd6, 0xe9,
 
2441
                        0xf0, 0x4b, 0xdc, 0x51, 0x6b, 0x01, 0x94, 0x16,
 
2442
                        0x87, 0x12, 0x92, 0x6c, 0x07, 0xc1, 0xf5, 0x58,
 
2443
                        0xb7, 0x2a, 0x81, 0xf5, 0xa0, 0x37, 0x8b, 0xa6,
 
2444
                        0x22, 0xfe, 0x28, 0x0a, 0x7e, 0x68, 0xe2, 0xda,
 
2445
                        0x6c, 0x53, 0xee, 0x0e, 0x8d, 0x2d, 0x8b, 0x0b,
 
2446
                        0xda, 0xf8, 0x99, 0x3e, 0x0e, 0xed, 0x9f, 0xc1,
 
2447
                        0x2b, 0xf6, 0xfe, 0xe9, 0x52, 0x38, 0x7b, 0x83,
 
2448
                        0x9a, 0x50, 0xa6, 0xd7, 0x49, 0x83, 0x43, 0x7e,
 
2449
                        0x82, 0xec, 0xc7, 0x09, 0x3d, 0x3d, 0xb1, 0xee,
 
2450
                        0xe8, 0xc5, 0x6a, 0xc3, 0x3d, 0x4b, 0x4c, 0x6a,
 
2451
                        0xbb, 0x0b, 0x2c, 0x24, 0x2e, 0xdb, 0x7d, 0x57,
 
2452
                        0x87, 0xb4, 0x80, 0xa5, 0xae, 0xff, 0x54, 0xa8,
 
2453
                        0xa5, 0x27, 0x69, 0x95, 0xc8, 0xe7, 0x79, 0xc7,
 
2454
                        0x89, 0x2a, 0x73, 0x49, 0xcb, 0xf5, 0xc5, 0xbc,
 
2455
                        0x4a, 0xe0, 0x73, 0xa9, 0xbc, 0x88, 0x64, 0x96,
 
2456
                        0x98, 0xa5, 0x1e, 0xe3, 0x43, 0xc1, 0x7d, 0x78,
 
2457
                        0xc7, 0x94, 0x72, 0xd4, 0x2c, 0x6e, 0x85, 0x39,
 
2458
                        0x9a, 0xaf, 0xdb, 0xa1, 0xe9, 0xe2, 0xcb, 0x37,
 
2459
                        0x04, 0xc6, 0x8c, 0x81, 0xd3, 0x2a, 0xb7, 0xbe,
 
2460
                        0x6c, 0x07, 0x1f, 0x5e, 0xd9, 0x00, 0xd2, 0xf7,
 
2461
                        0xe1, 0xa7, 0xbc, 0x0c, 0xb6, 0x6d, 0xfb, 0x3f,
 
2462
                        0x3d, 0x24, 0xaa, 0xfb, 0x7e, 0xe1, 0xb5, 0x1b,
 
2463
                        0xff, 0x38, 0xaa, 0x69, 0x59, 0x38, 0x52, 0x9a,
 
2464
                        0x0e, 0x6d, 0xbc, 0xde, 0x4f, 0x13, 0x09, 0x17,
 
2465
                        0xc4, 0xa9, 0x05, 0x84, 0xbc, 0x50, 0xef, 0x40,
 
2466
                        0xb0, 0x4c, 0x24, 0x32, 0xed, 0x94, 0x2c, 0xdd,
 
2467
                        0xda, 0x20, 0x24, 0x67, 0xe2, 0xea, 0x71, 0x3d,
 
2468
                        0x4a, 0x04, 0x0d, 0x98, 0x29, 0x20, 0x4c, 0xeb,
 
2469
                        0x70, 0xce, 0x45, 0x9e, 0x5a, 0xaf, 0xb6, 0xa3,
 
2470
                        0x92, 0xc8, 0x28, 0xf2, 0xe3, 0xe8, 0x8a, 0x5d,
 
2471
                        0x0a, 0x33, 0x79, 0x9b, 0x6a, 0xf3, 0x30, 0x01,
 
2472
                        0x1d, 0x47, 0xbd, 0x01, 0xcc, 0x4d, 0x71, 0xc0,
 
2473
                        0x56, 0xfa, 0xfd, 0x37, 0xed, 0x0f, 0x27, 0xc0,
 
2474
                        0xbb, 0xa0, 0xee, 0xc3, 0x79, 0x8b, 0xe7, 0x41,
 
2475
                        0x8f, 0xfa, 0x3a, 0xcb, 0x45, 0x3b, 0x85, 0x9f,
 
2476
                        0x06, 0x90, 0xb2, 0x51, 0x7a, 0xc3, 0x11, 0x41,
 
2477
                        0x4b, 0xe3, 0x26, 0x94, 0x3e, 0xa2, 0xfd, 0x0a,
 
2478
                        0xda, 0x50, 0xf6, 0x50, 0x78, 0x19, 0x6c, 0x52,
 
2479
                        0xd1, 0x12, 0x76, 0xc2, 0x50, 0x2f, 0x0b, 0xca,
 
2480
                        0x33, 0xe5, 0x79, 0x93, 0x14, 0x03, 0x01, 0x00,
 
2481
                        0x01, 0x01, 0x16, 0x03, 0x01, 0x00, 0x24, 0x2b,
 
2482
                        0x51, 0x42, 0x95, 0x6b, 0xca, 0x9f, 0x42, 0x5d,
 
2483
                        0xd2, 0xd9, 0x67, 0xf9, 0x49, 0x30, 0xfd, 0x2a,
 
2484
                        0x46, 0xd3, 0x04, 0xf4, 0x86, 0xf9, 0x11, 0x34,
 
2485
                        0x82, 0xac, 0xe2, 0xc2, 0x2d, 0xc4, 0xd0, 0xfe,
 
2486
                        0xa9, 0xc9, 0x4b, 0x17, 0x03, 0x01, 0x00, 0x21,
 
2487
                        0x65, 0x1c, 0xe9, 0x5c, 0xb6, 0xe2, 0x7c, 0x8e,
 
2488
                        0x49, 0x12, 0x1b, 0xe6, 0x40, 0xd3, 0x97, 0x21,
 
2489
                        0x76, 0x01, 0xe5, 0x80, 0x5e, 0xf3, 0x11, 0x47,
 
2490
                        0x25, 0x02, 0x78, 0x8e, 0x6b, 0xae, 0xb3, 0xf3,
 
2491
                        0x59, 0x15, 0x03, 0x01, 0x00, 0x16, 0x38, 0xc1,
 
2492
                        0x99, 0x2e, 0xf8, 0x6f, 0x45, 0xa4, 0x10, 0x79,
 
2493
                        0x5b, 0xc1, 0x47, 0x9a, 0xf6, 0x5c, 0x90, 0xeb,
 
2494
                        0xa6, 0xe3, 0x1a, 0x24,
 
2495
                },
 
2496
        }},
 
2497
}
 
2498
 
 
2499
var tls11ECDHEAESServerScript = [][]byte{
 
2500
        {
 
2501
                0x16, 0x03, 0x01, 0x01, 0x46, 0x01, 0x00, 0x01,
 
2502
                0x42, 0x03, 0x03, 0x51, 0x9f, 0xa3, 0xb0, 0xb7,
 
2503
                0x1d, 0x26, 0x93, 0x36, 0xc0, 0x8d, 0x7e, 0xf8,
 
2504
                0x4f, 0x6f, 0xc9, 0x3c, 0x31, 0x1e, 0x7f, 0xb1,
 
2505
                0xf0, 0xc1, 0x0f, 0xf9, 0x0c, 0xa2, 0xd5, 0xca,
 
2506
                0x48, 0xe5, 0x35, 0x00, 0x00, 0xd0, 0xc0, 0x30,
 
2507
                0xc0, 0x2c, 0xc0, 0x28, 0xc0, 0x24, 0xc0, 0x14,
 
2508
                0xc0, 0x0a, 0xc0, 0x22, 0xc0, 0x21, 0x00, 0xa5,
 
2509
                0x00, 0xa3, 0x00, 0xa1, 0x00, 0x9f, 0x00, 0x6b,
 
2510
                0x00, 0x6a, 0x00, 0x69, 0x00, 0x68, 0x00, 0x39,
 
2511
                0x00, 0x38, 0x00, 0x37, 0x00, 0x36, 0x00, 0x88,
 
2512
                0x00, 0x87, 0x00, 0x86, 0x00, 0x85, 0xc0, 0x32,
 
2513
                0xc0, 0x2e, 0xc0, 0x2a, 0xc0, 0x26, 0xc0, 0x0f,
 
2514
                0xc0, 0x05, 0x00, 0x9d, 0x00, 0x3d, 0x00, 0x35,
 
2515
                0x00, 0x84, 0xc0, 0x12, 0xc0, 0x08, 0xc0, 0x1c,
 
2516
                0xc0, 0x1b, 0x00, 0x16, 0x00, 0x13, 0x00, 0x10,
 
2517
                0x00, 0x0d, 0xc0, 0x0d, 0xc0, 0x03, 0x00, 0x0a,
 
2518
                0xc0, 0x2f, 0xc0, 0x2b, 0xc0, 0x27, 0xc0, 0x23,
 
2519
                0xc0, 0x13, 0xc0, 0x09, 0xc0, 0x1f, 0xc0, 0x1e,
 
2520
                0x00, 0xa4, 0x00, 0xa2, 0x00, 0xa0, 0x00, 0x9e,
 
2521
                0x00, 0x67, 0x00, 0x40, 0x00, 0x3f, 0x00, 0x3e,
 
2522
                0x00, 0x33, 0x00, 0x32, 0x00, 0x31, 0x00, 0x30,
 
2523
                0x00, 0x9a, 0x00, 0x99, 0x00, 0x98, 0x00, 0x97,
 
2524
                0x00, 0x45, 0x00, 0x44, 0x00, 0x43, 0x00, 0x42,
 
2525
                0xc0, 0x31, 0xc0, 0x2d, 0xc0, 0x29, 0xc0, 0x25,
 
2526
                0xc0, 0x0e, 0xc0, 0x04, 0x00, 0x9c, 0x00, 0x3c,
 
2527
                0x00, 0x2f, 0x00, 0x96, 0x00, 0x41, 0x00, 0x07,
 
2528
                0xc0, 0x11, 0xc0, 0x07, 0xc0, 0x0c, 0xc0, 0x02,
 
2529
                0x00, 0x05, 0x00, 0x04, 0x00, 0x15, 0x00, 0x12,
 
2530
                0x00, 0x0f, 0x00, 0x0c, 0x00, 0x09, 0x00, 0x14,
 
2531
                0x00, 0x11, 0x00, 0x0e, 0x00, 0x0b, 0x00, 0x08,
 
2532
                0x00, 0x06, 0x00, 0x03, 0x00, 0xff, 0x01, 0x00,
 
2533
                0x00, 0x49, 0x00, 0x0b, 0x00, 0x04, 0x03, 0x00,
 
2534
                0x01, 0x02, 0x00, 0x0a, 0x00, 0x34, 0x00, 0x32,
 
2535
                0x00, 0x0e, 0x00, 0x0d, 0x00, 0x19, 0x00, 0x0b,
 
2536
                0x00, 0x0c, 0x00, 0x18, 0x00, 0x09, 0x00, 0x0a,
 
2537
                0x00, 0x16, 0x00, 0x17, 0x00, 0x08, 0x00, 0x06,
 
2538
                0x00, 0x07, 0x00, 0x14, 0x00, 0x15, 0x00, 0x04,
 
2539
                0x00, 0x05, 0x00, 0x12, 0x00, 0x13, 0x00, 0x01,
 
2540
                0x00, 0x02, 0x00, 0x03, 0x00, 0x0f, 0x00, 0x10,
 
2541
                0x00, 0x11, 0x00, 0x23, 0x00, 0x00, 0x00, 0x0f,
 
2542
                0x00, 0x01, 0x01,
 
2543
        },
 
2544
        {
 
2545
                0x16, 0x03, 0x02, 0x00, 0x30, 0x02, 0x00, 0x00,
 
2546
                0x2c, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2547
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2548
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2549
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2550
                0x00, 0x00, 0x00, 0x00, 0xc0, 0x13, 0x00, 0x00,
 
2551
                0x04, 0x00, 0x23, 0x00, 0x00, 0x16, 0x03, 0x02,
 
2552
                0x02, 0xbe, 0x0b, 0x00, 0x02, 0xba, 0x00, 0x02,
 
2553
                0xb7, 0x00, 0x02, 0xb4, 0x30, 0x82, 0x02, 0xb0,
 
2554
                0x30, 0x82, 0x02, 0x19, 0xa0, 0x03, 0x02, 0x01,
 
2555
                0x02, 0x02, 0x09, 0x00, 0x85, 0xb0, 0xbb, 0xa4,
 
2556
                0x8a, 0x7f, 0xb8, 0xca, 0x30, 0x0d, 0x06, 0x09,
 
2557
                0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
 
2558
                0x05, 0x05, 0x00, 0x30, 0x45, 0x31, 0x0b, 0x30,
 
2559
                0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02,
 
2560
                0x41, 0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03,
 
2561
                0x55, 0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d,
 
2562
                0x65, 0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31,
 
2563
                0x21, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a,
 
2564
                0x13, 0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e,
 
2565
                0x65, 0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69,
 
2566
                0x74, 0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c,
 
2567
                0x74, 0x64, 0x30, 0x1e, 0x17, 0x0d, 0x31, 0x30,
 
2568
                0x30, 0x34, 0x32, 0x34, 0x30, 0x39, 0x30, 0x39,
 
2569
                0x33, 0x38, 0x5a, 0x17, 0x0d, 0x31, 0x31, 0x30,
 
2570
                0x34, 0x32, 0x34, 0x30, 0x39, 0x30, 0x39, 0x33,
 
2571
                0x38, 0x5a, 0x30, 0x45, 0x31, 0x0b, 0x30, 0x09,
 
2572
                0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x41,
 
2573
                0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55,
 
2574
                0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d, 0x65,
 
2575
                0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31, 0x21,
 
2576
                0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13,
 
2577
                0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65,
 
2578
                0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69, 0x74,
 
2579
                0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c, 0x74,
 
2580
                0x64, 0x30, 0x81, 0x9f, 0x30, 0x0d, 0x06, 0x09,
 
2581
                0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
 
2582
                0x01, 0x05, 0x00, 0x03, 0x81, 0x8d, 0x00, 0x30,
 
2583
                0x81, 0x89, 0x02, 0x81, 0x81, 0x00, 0xbb, 0x79,
 
2584
                0xd6, 0xf5, 0x17, 0xb5, 0xe5, 0xbf, 0x46, 0x10,
 
2585
                0xd0, 0xdc, 0x69, 0xbe, 0xe6, 0x2b, 0x07, 0x43,
 
2586
                0x5a, 0xd0, 0x03, 0x2d, 0x8a, 0x7a, 0x43, 0x85,
 
2587
                0xb7, 0x14, 0x52, 0xe7, 0xa5, 0x65, 0x4c, 0x2c,
 
2588
                0x78, 0xb8, 0x23, 0x8c, 0xb5, 0xb4, 0x82, 0xe5,
 
2589
                0xde, 0x1f, 0x95, 0x3b, 0x7e, 0x62, 0xa5, 0x2c,
 
2590
                0xa5, 0x33, 0xd6, 0xfe, 0x12, 0x5c, 0x7a, 0x56,
 
2591
                0xfc, 0xf5, 0x06, 0xbf, 0xfa, 0x58, 0x7b, 0x26,
 
2592
                0x3f, 0xb5, 0xcd, 0x04, 0xd3, 0xd0, 0xc9, 0x21,
 
2593
                0x96, 0x4a, 0xc7, 0xf4, 0x54, 0x9f, 0x5a, 0xbf,
 
2594
                0xef, 0x42, 0x71, 0x00, 0xfe, 0x18, 0x99, 0x07,
 
2595
                0x7f, 0x7e, 0x88, 0x7d, 0x7d, 0xf1, 0x04, 0x39,
 
2596
                0xc4, 0xa2, 0x2e, 0xdb, 0x51, 0xc9, 0x7c, 0xe3,
 
2597
                0xc0, 0x4c, 0x3b, 0x32, 0x66, 0x01, 0xcf, 0xaf,
 
2598
                0xb1, 0x1d, 0xb8, 0x71, 0x9a, 0x1d, 0xdb, 0xdb,
 
2599
                0x89, 0x6b, 0xae, 0xda, 0x2d, 0x79, 0x02, 0x03,
 
2600
                0x01, 0x00, 0x01, 0xa3, 0x81, 0xa7, 0x30, 0x81,
 
2601
                0xa4, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e,
 
2602
                0x04, 0x16, 0x04, 0x14, 0xb1, 0xad, 0xe2, 0x85,
 
2603
                0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69, 0xce, 0x23,
 
2604
                0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18, 0x88, 0x39,
 
2605
                0x30, 0x75, 0x06, 0x03, 0x55, 0x1d, 0x23, 0x04,
 
2606
                0x6e, 0x30, 0x6c, 0x80, 0x14, 0xb1, 0xad, 0xe2,
 
2607
                0x85, 0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69, 0xce,
 
2608
                0x23, 0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18, 0x88,
 
2609
                0x39, 0xa1, 0x49, 0xa4, 0x47, 0x30, 0x45, 0x31,
 
2610
                0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06,
 
2611
                0x13, 0x02, 0x41, 0x55, 0x31, 0x13, 0x30, 0x11,
 
2612
                0x06, 0x03, 0x55, 0x04, 0x08, 0x13, 0x0a, 0x53,
 
2613
                0x6f, 0x6d, 0x65, 0x2d, 0x53, 0x74, 0x61, 0x74,
 
2614
                0x65, 0x31, 0x21, 0x30, 0x1f, 0x06, 0x03, 0x55,
 
2615
                0x04, 0x0a, 0x13, 0x18, 0x49, 0x6e, 0x74, 0x65,
 
2616
                0x72, 0x6e, 0x65, 0x74, 0x20, 0x57, 0x69, 0x64,
 
2617
                0x67, 0x69, 0x74, 0x73, 0x20, 0x50, 0x74, 0x79,
 
2618
                0x20, 0x4c, 0x74, 0x64, 0x82, 0x09, 0x00, 0x85,
 
2619
                0xb0, 0xbb, 0xa4, 0x8a, 0x7f, 0xb8, 0xca, 0x30,
 
2620
                0x0c, 0x06, 0x03, 0x55, 0x1d, 0x13, 0x04, 0x05,
 
2621
                0x30, 0x03, 0x01, 0x01, 0xff, 0x30, 0x0d, 0x06,
 
2622
                0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01,
 
2623
                0x01, 0x05, 0x05, 0x00, 0x03, 0x81, 0x81, 0x00,
 
2624
                0x08, 0x6c, 0x45, 0x24, 0xc7, 0x6b, 0xb1, 0x59,
 
2625
                0xab, 0x0c, 0x52, 0xcc, 0xf2, 0xb0, 0x14, 0xd7,
 
2626
                0x87, 0x9d, 0x7a, 0x64, 0x75, 0xb5, 0x5a, 0x95,
 
2627
                0x66, 0xe4, 0xc5, 0x2b, 0x8e, 0xae, 0x12, 0x66,
 
2628
                0x1f, 0xeb, 0x4f, 0x38, 0xb3, 0x6e, 0x60, 0xd3,
 
2629
                0x92, 0xfd, 0xf7, 0x41, 0x08, 0xb5, 0x25, 0x13,
 
2630
                0xb1, 0x18, 0x7a, 0x24, 0xfb, 0x30, 0x1d, 0xba,
 
2631
                0xed, 0x98, 0xb9, 0x17, 0xec, 0xe7, 0xd7, 0x31,
 
2632
                0x59, 0xdb, 0x95, 0xd3, 0x1d, 0x78, 0xea, 0x50,
 
2633
                0x56, 0x5c, 0xd5, 0x82, 0x5a, 0x2d, 0x5a, 0x5f,
 
2634
                0x33, 0xc4, 0xb6, 0xd8, 0xc9, 0x75, 0x90, 0x96,
 
2635
                0x8c, 0x0f, 0x52, 0x98, 0xb5, 0xcd, 0x98, 0x1f,
 
2636
                0x89, 0x20, 0x5f, 0xf2, 0xa0, 0x1c, 0xa3, 0x1b,
 
2637
                0x96, 0x94, 0xdd, 0xa9, 0xfd, 0x57, 0xe9, 0x70,
 
2638
                0xe8, 0x26, 0x6d, 0x71, 0x99, 0x9b, 0x26, 0x6e,
 
2639
                0x38, 0x50, 0x29, 0x6c, 0x90, 0xa7, 0xbd, 0xd9,
 
2640
                0x16, 0x03, 0x02, 0x01, 0x0f, 0x0c, 0x00, 0x01,
 
2641
                0x0b, 0x03, 0x00, 0x19, 0x85, 0x04, 0x01, 0x39,
 
2642
                0xdc, 0xee, 0x44, 0x17, 0x5e, 0xdb, 0xd7, 0x27,
 
2643
                0xaf, 0xb6, 0x56, 0xd9, 0xb4, 0x43, 0x5a, 0x99,
 
2644
                0xcf, 0xaa, 0x31, 0x37, 0x0c, 0x6f, 0x3a, 0xa0,
 
2645
                0xf8, 0x53, 0xc4, 0x74, 0xd1, 0x91, 0x0a, 0x46,
 
2646
                0xf5, 0x38, 0x3b, 0x5c, 0x09, 0xd8, 0x97, 0xdc,
 
2647
                0x4b, 0xaa, 0x70, 0x26, 0x48, 0xf2, 0xd6, 0x0b,
 
2648
                0x31, 0xc9, 0xf8, 0xd4, 0x98, 0x43, 0xe1, 0x6c,
 
2649
                0xd5, 0xc7, 0xb2, 0x8e, 0x0b, 0x01, 0xe6, 0xb6,
 
2650
                0x00, 0x28, 0x80, 0x7b, 0xfc, 0x96, 0x8f, 0x0d,
 
2651
                0xa2, 0x4f, 0xb0, 0x79, 0xaf, 0xdc, 0x61, 0x28,
 
2652
                0x63, 0x33, 0x78, 0xf6, 0x31, 0x39, 0xfd, 0x8a,
 
2653
                0xf4, 0x15, 0x18, 0x11, 0xfe, 0xdb, 0xd5, 0x07,
 
2654
                0xda, 0x2c, 0xed, 0x49, 0xa0, 0x23, 0xbf, 0xd0,
 
2655
                0x3a, 0x38, 0x1d, 0x54, 0xae, 0x1c, 0x7b, 0xea,
 
2656
                0x29, 0xee, 0xd0, 0x38, 0xc1, 0x76, 0xa7, 0x7f,
 
2657
                0x2a, 0xf4, 0xce, 0x1e, 0xac, 0xcc, 0x94, 0x79,
 
2658
                0x90, 0x33, 0x00, 0x80, 0x16, 0x83, 0x9b, 0xf9,
 
2659
                0x72, 0xdb, 0x9f, 0x55, 0x02, 0xe1, 0x04, 0xf7,
 
2660
                0xb5, 0x3f, 0x4c, 0x71, 0x13, 0x5a, 0x91, 0xe9,
 
2661
                0x1d, 0xeb, 0x9d, 0x9c, 0xfb, 0x88, 0xef, 0xca,
 
2662
                0xec, 0x7d, 0x9b, 0xdd, 0xd9, 0xee, 0x2b, 0x8e,
 
2663
                0xef, 0xf8, 0xb6, 0xc7, 0x7d, 0xfe, 0xda, 0x7f,
 
2664
                0x90, 0x2e, 0x53, 0xf1, 0x64, 0x95, 0xfc, 0x66,
 
2665
                0xfc, 0x87, 0x27, 0xb6, 0x9f, 0xc8, 0x3a, 0x95,
 
2666
                0x68, 0x17, 0xe1, 0x7d, 0xf1, 0x88, 0xe8, 0x17,
 
2667
                0x5f, 0x99, 0x90, 0x3f, 0x47, 0x47, 0x81, 0x06,
 
2668
                0xe2, 0x8e, 0x22, 0x56, 0x8f, 0xc2, 0x14, 0xe5,
 
2669
                0x62, 0xa7, 0x0d, 0x41, 0x3c, 0xc7, 0x4a, 0x0a,
 
2670
                0x74, 0x4b, 0xda, 0x00, 0x8e, 0x4f, 0x90, 0xe6,
 
2671
                0xd7, 0x68, 0xe5, 0x8b, 0xf2, 0x3f, 0x53, 0x1d,
 
2672
                0x7a, 0xe6, 0xb3, 0xe9, 0x8a, 0xc9, 0x4d, 0x19,
 
2673
                0xa6, 0xcf, 0xf9, 0xed, 0x5e, 0x26, 0xdc, 0x90,
 
2674
                0x1c, 0x41, 0xad, 0x7c, 0x16, 0x03, 0x02, 0x00,
 
2675
                0x04, 0x0e, 0x00, 0x00, 0x00,
 
2676
        },
 
2677
        {
 
2678
                0x16, 0x03, 0x02, 0x00, 0x8a, 0x10, 0x00, 0x00,
 
2679
                0x86, 0x85, 0x04, 0x01, 0x11, 0xf2, 0xa4, 0x2d,
 
2680
                0x1a, 0x75, 0x6c, 0xbc, 0x2d, 0x91, 0x95, 0x07,
 
2681
                0xbe, 0xd6, 0x41, 0x7a, 0xbb, 0xc2, 0x7b, 0xa6,
 
2682
                0x9b, 0xe3, 0xdc, 0x41, 0x7f, 0x1e, 0x2e, 0xcc,
 
2683
                0x6d, 0xa3, 0x85, 0x53, 0x98, 0x9f, 0x2d, 0xe6,
 
2684
                0x3c, 0xb9, 0x82, 0xa6, 0x80, 0x53, 0x9b, 0x71,
 
2685
                0xfd, 0x27, 0xe5, 0xe5, 0xdf, 0x13, 0xba, 0x56,
 
2686
                0x62, 0x30, 0x4a, 0x57, 0x27, 0xa7, 0xcc, 0x26,
 
2687
                0x54, 0xe8, 0x65, 0x6e, 0x4d, 0x00, 0xbf, 0x8a,
 
2688
                0xcc, 0x89, 0x6a, 0x6c, 0x88, 0xda, 0x79, 0x4f,
 
2689
                0xc5, 0xad, 0x6d, 0x1d, 0x7c, 0x53, 0x7b, 0x1a,
 
2690
                0x96, 0xf2, 0xf8, 0x30, 0x01, 0x0b, 0xc2, 0xf0,
 
2691
                0x78, 0x41, 0xf4, 0x0d, 0xe0, 0xbe, 0xb9, 0x36,
 
2692
                0xe0, 0xb7, 0xee, 0x16, 0xeb, 0x25, 0x67, 0x04,
 
2693
                0xc0, 0x2e, 0xd8, 0x34, 0x4a, 0x65, 0xa5, 0xf1,
 
2694
                0x95, 0x75, 0xc7, 0x39, 0xa9, 0x68, 0xa9, 0x53,
 
2695
                0x93, 0x5b, 0xca, 0x7b, 0x7f, 0xc0, 0x63, 0x14,
 
2696
                0x03, 0x02, 0x00, 0x01, 0x01, 0x16, 0x03, 0x02,
 
2697
                0x00, 0x40, 0x01, 0xb1, 0xae, 0x1b, 0x8a, 0x65,
 
2698
                0xf8, 0x37, 0x50, 0x39, 0x76, 0xef, 0xaa, 0xda,
 
2699
                0x84, 0xc9, 0x5f, 0x80, 0xdc, 0xfa, 0xe0, 0x46,
 
2700
                0x5a, 0xc7, 0x77, 0x9d, 0x76, 0x03, 0xa6, 0xd5,
 
2701
                0x0e, 0xbf, 0x25, 0x30, 0x5c, 0x99, 0x7d, 0xcd,
 
2702
                0x2b, 0xaa, 0x2e, 0x8c, 0xdd, 0xda, 0xaa, 0xd7,
 
2703
                0xf1, 0xf6, 0x33, 0x47, 0x51, 0x1e, 0x83, 0xa1,
 
2704
                0x83, 0x04, 0xd2, 0xb2, 0xc8, 0xbc, 0x11, 0xc5,
 
2705
                0x1a, 0x87,
 
2706
        },
 
2707
        {
 
2708
                0x16, 0x03, 0x02, 0x00, 0x72, 0x04, 0x00, 0x00,
 
2709
                0x6e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00,
 
2710
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2711
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x65,
 
2712
                0xeb, 0x8b, 0xc7, 0xef, 0xba, 0xe8, 0x0f, 0x69,
 
2713
                0xfe, 0xfb, 0xc3, 0x3d, 0x90, 0x5d, 0xd7, 0xb2,
 
2714
                0x51, 0x64, 0xac, 0xc3, 0xae, 0x33, 0x03, 0x42,
 
2715
                0x45, 0x2d, 0xa7, 0x57, 0xbd, 0xa3, 0x85, 0x64,
 
2716
                0xa6, 0xfe, 0x5c, 0x33, 0x04, 0x93, 0xf2, 0x7c,
 
2717
                0x06, 0x6d, 0xd7, 0xd7, 0xcf, 0x4a, 0xaf, 0xb2,
 
2718
                0xdd, 0x06, 0xdc, 0x28, 0x14, 0x59, 0x23, 0x02,
 
2719
                0xef, 0x97, 0x6a, 0xe8, 0xec, 0xca, 0x10, 0x44,
 
2720
                0xcd, 0xb8, 0x50, 0x16, 0x46, 0x5a, 0x05, 0xda,
 
2721
                0x04, 0xb3, 0x0e, 0xe9, 0xf0, 0x74, 0xc5, 0x23,
 
2722
                0xc2, 0x0e, 0xa1, 0x54, 0x66, 0x7b, 0xe8, 0x14,
 
2723
                0x03, 0x02, 0x00, 0x01, 0x01, 0x16, 0x03, 0x02,
 
2724
                0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2725
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2726
                0x00, 0x00, 0x6b, 0x43, 0x1c, 0x58, 0xbc, 0x85,
 
2727
                0xf7, 0xc1, 0x76, 0xbc, 0x72, 0x33, 0x41, 0x6b,
 
2728
                0xb8, 0xf8, 0xfd, 0x53, 0x21, 0xc2, 0x41, 0x1b,
 
2729
                0x72, 0x4f, 0xce, 0x97, 0xca, 0x14, 0x23, 0x4d,
 
2730
                0xbc, 0x44, 0xd6, 0xd7, 0xfc, 0xbc, 0xfd, 0xfd,
 
2731
                0x5d, 0x33, 0x42, 0x1b, 0x52, 0x40, 0x0a, 0x2b,
 
2732
                0x6c, 0x98, 0x17, 0x03, 0x02, 0x00, 0x40, 0x00,
 
2733
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2734
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1d,
 
2735
                0x31, 0xef, 0x03, 0x7d, 0xa5, 0x74, 0x92, 0x24,
 
2736
                0x34, 0xae, 0x4e, 0xc9, 0xfc, 0x59, 0xcb, 0x64,
 
2737
                0xf4, 0x45, 0xb1, 0xac, 0x02, 0xf2, 0x87, 0xe7,
 
2738
                0x2f, 0xfd, 0x01, 0xca, 0x78, 0x02, 0x2e, 0x3a,
 
2739
                0x38, 0xcd, 0xb1, 0xe0, 0xf2, 0x2e, 0xf6, 0x27,
 
2740
                0xa0, 0xac, 0x1f, 0x91, 0x43, 0xc2, 0x3d, 0x15,
 
2741
                0x03, 0x02, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00,
 
2742
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2743
                0x00, 0x00, 0x00, 0x00, 0x9f, 0x30, 0x24, 0x56,
 
2744
                0x2c, 0xde, 0xa0, 0xe6, 0x44, 0x35, 0x30, 0x51,
 
2745
                0xec, 0xd4, 0x69, 0x2d, 0x46, 0x64, 0x04, 0x21,
 
2746
                0xfe, 0x7c, 0x4d, 0xc5, 0xd0, 0x8c, 0xf9, 0xd2,
 
2747
                0x3f, 0x88, 0x69, 0xd5,
 
2748
        },
 
2749
}
 
2750
 
 
2751
// $ go test -run TestRunServer -serve -clientauth 1 \
 
2752
//     -ciphersuites=0xc011 -minversion=0x0303 -maxversion=0x0303
 
2753
var tls12ServerScript = [][]byte{
 
2754
        {
 
2755
                0x16, 0x03, 0x01, 0x01, 0x1e, 0x01, 0x00, 0x01,
 
2756
                0x1a, 0x03, 0x03, 0x51, 0xe5, 0x76, 0x84, 0x0e,
 
2757
                0xb9, 0x17, 0xca, 0x08, 0x47, 0xd9, 0xbd, 0xd0,
 
2758
                0x94, 0xd1, 0x97, 0xca, 0x5b, 0xe7, 0x20, 0xac,
 
2759
                0x8e, 0xbb, 0xc7, 0x29, 0xe9, 0x26, 0xcf, 0x7d,
 
2760
                0xb3, 0xdc, 0x99, 0x00, 0x00, 0x82, 0xc0, 0x30,
 
2761
                0xc0, 0x2c, 0xc0, 0x28, 0xc0, 0x24, 0xc0, 0x14,
 
2762
                0xc0, 0x0a, 0x00, 0xa3, 0x00, 0x9f, 0x00, 0x6b,
 
2763
                0x00, 0x6a, 0x00, 0x39, 0x00, 0x38, 0xc0, 0x32,
 
2764
                0xc0, 0x2e, 0xc0, 0x2a, 0xc0, 0x26, 0xc0, 0x0f,
 
2765
                0xc0, 0x05, 0x00, 0x9d, 0x00, 0x3d, 0x00, 0x35,
 
2766
                0xc0, 0x12, 0xc0, 0x08, 0x00, 0x16, 0x00, 0x13,
 
2767
                0xc0, 0x0d, 0xc0, 0x03, 0x00, 0x0a, 0xc0, 0x2f,
 
2768
                0xc0, 0x2b, 0xc0, 0x27, 0xc0, 0x23, 0xc0, 0x13,
 
2769
                0xc0, 0x09, 0x00, 0xa2, 0x00, 0x9e, 0x00, 0x67,
 
2770
                0x00, 0x40, 0x00, 0x33, 0x00, 0x32, 0xc0, 0x31,
 
2771
                0xc0, 0x2d, 0xc0, 0x29, 0xc0, 0x25, 0xc0, 0x0e,
 
2772
                0xc0, 0x04, 0x00, 0x9c, 0x00, 0x3c, 0x00, 0x2f,
 
2773
                0x00, 0x07, 0xc0, 0x11, 0xc0, 0x07, 0xc0, 0x0c,
 
2774
                0xc0, 0x02, 0x00, 0x05, 0x00, 0x04, 0x00, 0x15,
 
2775
                0x00, 0x12, 0x00, 0x09, 0x00, 0x14, 0x00, 0x11,
 
2776
                0x00, 0x08, 0x00, 0x06, 0x00, 0x03, 0x00, 0xff,
 
2777
                0x01, 0x00, 0x00, 0x6f, 0x00, 0x0b, 0x00, 0x04,
 
2778
                0x03, 0x00, 0x01, 0x02, 0x00, 0x0a, 0x00, 0x34,
 
2779
                0x00, 0x32, 0x00, 0x0e, 0x00, 0x0d, 0x00, 0x19,
 
2780
                0x00, 0x0b, 0x00, 0x0c, 0x00, 0x18, 0x00, 0x09,
 
2781
                0x00, 0x0a, 0x00, 0x16, 0x00, 0x17, 0x00, 0x08,
 
2782
                0x00, 0x06, 0x00, 0x07, 0x00, 0x14, 0x00, 0x15,
 
2783
                0x00, 0x04, 0x00, 0x05, 0x00, 0x12, 0x00, 0x13,
 
2784
                0x00, 0x01, 0x00, 0x02, 0x00, 0x03, 0x00, 0x0f,
 
2785
                0x00, 0x10, 0x00, 0x11, 0x00, 0x23, 0x00, 0x00,
 
2786
                0x00, 0x0d, 0x00, 0x22, 0x00, 0x20, 0x06, 0x01,
 
2787
                0x06, 0x02, 0x06, 0x03, 0x05, 0x01, 0x05, 0x02,
 
2788
                0x05, 0x03, 0x04, 0x01, 0x04, 0x02, 0x04, 0x03,
 
2789
                0x03, 0x01, 0x03, 0x02, 0x03, 0x03, 0x02, 0x01,
 
2790
                0x02, 0x02, 0x02, 0x03, 0x01, 0x01, 0x00, 0x0f,
 
2791
                0x00, 0x01, 0x01,
 
2792
        },
 
2793
        {
 
2794
                0x16, 0x03, 0x03, 0x00, 0x30, 0x02, 0x00, 0x00,
 
2795
                0x2c, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2796
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2797
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2798
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
2799
                0x00, 0x00, 0x00, 0x00, 0xc0, 0x11, 0x00, 0x00,
 
2800
                0x04, 0x00, 0x23, 0x00, 0x00, 0x16, 0x03, 0x03,
 
2801
                0x02, 0xbe, 0x0b, 0x00, 0x02, 0xba, 0x00, 0x02,
 
2802
                0xb7, 0x00, 0x02, 0xb4, 0x30, 0x82, 0x02, 0xb0,
 
2803
                0x30, 0x82, 0x02, 0x19, 0xa0, 0x03, 0x02, 0x01,
 
2804
                0x02, 0x02, 0x09, 0x00, 0x85, 0xb0, 0xbb, 0xa4,
 
2805
                0x8a, 0x7f, 0xb8, 0xca, 0x30, 0x0d, 0x06, 0x09,
 
2806
                0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
 
2807
                0x05, 0x05, 0x00, 0x30, 0x45, 0x31, 0x0b, 0x30,
 
2808
                0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02,
 
2809
                0x41, 0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03,
 
2810
                0x55, 0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d,
 
2811
                0x65, 0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31,
 
2812
                0x21, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a,
 
2813
                0x13, 0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e,
 
2814
                0x65, 0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69,
 
2815
                0x74, 0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c,
 
2816
                0x74, 0x64, 0x30, 0x1e, 0x17, 0x0d, 0x31, 0x30,
 
2817
                0x30, 0x34, 0x32, 0x34, 0x30, 0x39, 0x30, 0x39,
 
2818
                0x33, 0x38, 0x5a, 0x17, 0x0d, 0x31, 0x31, 0x30,
 
2819
                0x34, 0x32, 0x34, 0x30, 0x39, 0x30, 0x39, 0x33,
 
2820
                0x38, 0x5a, 0x30, 0x45, 0x31, 0x0b, 0x30, 0x09,
 
2821
                0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x41,
 
2822
                0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55,
 
2823
                0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d, 0x65,
 
2824
                0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31, 0x21,
 
2825
                0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13,
 
2826
                0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65,
 
2827
                0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69, 0x74,
 
2828
                0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c, 0x74,
 
2829
                0x64, 0x30, 0x81, 0x9f, 0x30, 0x0d, 0x06, 0x09,
 
2830
                0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
 
2831
                0x01, 0x05, 0x00, 0x03, 0x81, 0x8d, 0x00, 0x30,
 
2832
                0x81, 0x89, 0x02, 0x81, 0x81, 0x00, 0xbb, 0x79,
 
2833
                0xd6, 0xf5, 0x17, 0xb5, 0xe5, 0xbf, 0x46, 0x10,
 
2834
                0xd0, 0xdc, 0x69, 0xbe, 0xe6, 0x2b, 0x07, 0x43,
 
2835
                0x5a, 0xd0, 0x03, 0x2d, 0x8a, 0x7a, 0x43, 0x85,
 
2836
                0xb7, 0x14, 0x52, 0xe7, 0xa5, 0x65, 0x4c, 0x2c,
 
2837
                0x78, 0xb8, 0x23, 0x8c, 0xb5, 0xb4, 0x82, 0xe5,
 
2838
                0xde, 0x1f, 0x95, 0x3b, 0x7e, 0x62, 0xa5, 0x2c,
 
2839
                0xa5, 0x33, 0xd6, 0xfe, 0x12, 0x5c, 0x7a, 0x56,
 
2840
                0xfc, 0xf5, 0x06, 0xbf, 0xfa, 0x58, 0x7b, 0x26,
 
2841
                0x3f, 0xb5, 0xcd, 0x04, 0xd3, 0xd0, 0xc9, 0x21,
 
2842
                0x96, 0x4a, 0xc7, 0xf4, 0x54, 0x9f, 0x5a, 0xbf,
 
2843
                0xef, 0x42, 0x71, 0x00, 0xfe, 0x18, 0x99, 0x07,
 
2844
                0x7f, 0x7e, 0x88, 0x7d, 0x7d, 0xf1, 0x04, 0x39,
 
2845
                0xc4, 0xa2, 0x2e, 0xdb, 0x51, 0xc9, 0x7c, 0xe3,
 
2846
                0xc0, 0x4c, 0x3b, 0x32, 0x66, 0x01, 0xcf, 0xaf,
 
2847
                0xb1, 0x1d, 0xb8, 0x71, 0x9a, 0x1d, 0xdb, 0xdb,
 
2848
                0x89, 0x6b, 0xae, 0xda, 0x2d, 0x79, 0x02, 0x03,
 
2849
                0x01, 0x00, 0x01, 0xa3, 0x81, 0xa7, 0x30, 0x81,
 
2850
                0xa4, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e,
 
2851
                0x04, 0x16, 0x04, 0x14, 0xb1, 0xad, 0xe2, 0x85,
 
2852
                0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69, 0xce, 0x23,
 
2853
                0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18, 0x88, 0x39,
 
2854
                0x30, 0x75, 0x06, 0x03, 0x55, 0x1d, 0x23, 0x04,
 
2855
                0x6e, 0x30, 0x6c, 0x80, 0x14, 0xb1, 0xad, 0xe2,
 
2856
                0x85, 0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69, 0xce,
 
2857
                0x23, 0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18, 0x88,
 
2858
                0x39, 0xa1, 0x49, 0xa4, 0x47, 0x30, 0x45, 0x31,
 
2859
                0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06,
 
2860
                0x13, 0x02, 0x41, 0x55, 0x31, 0x13, 0x30, 0x11,
 
2861
                0x06, 0x03, 0x55, 0x04, 0x08, 0x13, 0x0a, 0x53,
 
2862
                0x6f, 0x6d, 0x65, 0x2d, 0x53, 0x74, 0x61, 0x74,
 
2863
                0x65, 0x31, 0x21, 0x30, 0x1f, 0x06, 0x03, 0x55,
 
2864
                0x04, 0x0a, 0x13, 0x18, 0x49, 0x6e, 0x74, 0x65,
 
2865
                0x72, 0x6e, 0x65, 0x74, 0x20, 0x57, 0x69, 0x64,
 
2866
                0x67, 0x69, 0x74, 0x73, 0x20, 0x50, 0x74, 0x79,
 
2867
                0x20, 0x4c, 0x74, 0x64, 0x82, 0x09, 0x00, 0x85,
 
2868
                0xb0, 0xbb, 0xa4, 0x8a, 0x7f, 0xb8, 0xca, 0x30,
 
2869
                0x0c, 0x06, 0x03, 0x55, 0x1d, 0x13, 0x04, 0x05,
 
2870
                0x30, 0x03, 0x01, 0x01, 0xff, 0x30, 0x0d, 0x06,
 
2871
                0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01,
 
2872
                0x01, 0x05, 0x05, 0x00, 0x03, 0x81, 0x81, 0x00,
 
2873
                0x08, 0x6c, 0x45, 0x24, 0xc7, 0x6b, 0xb1, 0x59,
 
2874
                0xab, 0x0c, 0x52, 0xcc, 0xf2, 0xb0, 0x14, 0xd7,
 
2875
                0x87, 0x9d, 0x7a, 0x64, 0x75, 0xb5, 0x5a, 0x95,
 
2876
                0x66, 0xe4, 0xc5, 0x2b, 0x8e, 0xae, 0x12, 0x66,
 
2877
                0x1f, 0xeb, 0x4f, 0x38, 0xb3, 0x6e, 0x60, 0xd3,
 
2878
                0x92, 0xfd, 0xf7, 0x41, 0x08, 0xb5, 0x25, 0x13,
 
2879
                0xb1, 0x18, 0x7a, 0x24, 0xfb, 0x30, 0x1d, 0xba,
 
2880
                0xed, 0x98, 0xb9, 0x17, 0xec, 0xe7, 0xd7, 0x31,
 
2881
                0x59, 0xdb, 0x95, 0xd3, 0x1d, 0x78, 0xea, 0x50,
 
2882
                0x56, 0x5c, 0xd5, 0x82, 0x5a, 0x2d, 0x5a, 0x5f,
 
2883
                0x33, 0xc4, 0xb6, 0xd8, 0xc9, 0x75, 0x90, 0x96,
 
2884
                0x8c, 0x0f, 0x52, 0x98, 0xb5, 0xcd, 0x98, 0x1f,
 
2885
                0x89, 0x20, 0x5f, 0xf2, 0xa0, 0x1c, 0xa3, 0x1b,
 
2886
                0x96, 0x94, 0xdd, 0xa9, 0xfd, 0x57, 0xe9, 0x70,
 
2887
                0xe8, 0x26, 0x6d, 0x71, 0x99, 0x9b, 0x26, 0x6e,
 
2888
                0x38, 0x50, 0x29, 0x6c, 0x90, 0xa7, 0xbd, 0xd9,
 
2889
                0x16, 0x03, 0x03, 0x01, 0x11, 0x0c, 0x00, 0x01,
 
2890
                0x0d, 0x03, 0x00, 0x19, 0x85, 0x04, 0x01, 0x39,
 
2891
                0xdc, 0xee, 0x44, 0x17, 0x5e, 0xdb, 0xd7, 0x27,
 
2892
                0xaf, 0xb6, 0x56, 0xd9, 0xb4, 0x43, 0x5a, 0x99,
 
2893
                0xcf, 0xaa, 0x31, 0x37, 0x0c, 0x6f, 0x3a, 0xa0,
 
2894
                0xf8, 0x53, 0xc4, 0x74, 0xd1, 0x91, 0x0a, 0x46,
 
2895
                0xf5, 0x38, 0x3b, 0x5c, 0x09, 0xd8, 0x97, 0xdc,
 
2896
                0x4b, 0xaa, 0x70, 0x26, 0x48, 0xf2, 0xd6, 0x0b,
 
2897
                0x31, 0xc9, 0xf8, 0xd4, 0x98, 0x43, 0xe1, 0x6c,
 
2898
                0xd5, 0xc7, 0xb2, 0x8e, 0x0b, 0x01, 0xe6, 0xb6,
 
2899
                0x00, 0x28, 0x80, 0x7b, 0xfc, 0x96, 0x8f, 0x0d,
 
2900
                0xa2, 0x4f, 0xb0, 0x79, 0xaf, 0xdc, 0x61, 0x28,
 
2901
                0x63, 0x33, 0x78, 0xf6, 0x31, 0x39, 0xfd, 0x8a,
 
2902
                0xf4, 0x15, 0x18, 0x11, 0xfe, 0xdb, 0xd5, 0x07,
 
2903
                0xda, 0x2c, 0xed, 0x49, 0xa0, 0x23, 0xbf, 0xd0,
 
2904
                0x3a, 0x38, 0x1d, 0x54, 0xae, 0x1c, 0x7b, 0xea,
 
2905
                0x29, 0xee, 0xd0, 0x38, 0xc1, 0x76, 0xa7, 0x7f,
 
2906
                0x2a, 0xf4, 0xce, 0x1e, 0xac, 0xcc, 0x94, 0x79,
 
2907
                0x90, 0x33, 0x04, 0x01, 0x00, 0x80, 0x4a, 0xf9,
 
2908
                0xf5, 0x0a, 0x61, 0x37, 0x7e, 0x4e, 0x92, 0xb5,
 
2909
                0x1c, 0x91, 0x21, 0xb2, 0xb5, 0x17, 0x00, 0xbf,
 
2910
                0x01, 0x5f, 0x30, 0xec, 0x62, 0x08, 0xd6, 0x9d,
 
2911
                0x1a, 0x08, 0x05, 0x72, 0x8b, 0xf4, 0x49, 0x85,
 
2912
                0xa7, 0xbf, 0x3f, 0x75, 0x58, 0x3e, 0x26, 0x82,
 
2913
                0xc3, 0x28, 0x07, 0xf9, 0x41, 0x7d, 0x03, 0x14,
 
2914
                0x3b, 0xc3, 0x05, 0x64, 0xff, 0x52, 0xf4, 0x75,
 
2915
                0x6a, 0x87, 0xcd, 0xdf, 0x93, 0x31, 0x0a, 0x71,
 
2916
                0x60, 0x17, 0xc6, 0x33, 0xf0, 0x79, 0xb6, 0x7b,
 
2917
                0xd0, 0x9c, 0xa0, 0x5f, 0x74, 0x14, 0x2c, 0x5a,
 
2918
                0xb4, 0x3f, 0x39, 0xf5, 0xe4, 0x9f, 0xbe, 0x6d,
 
2919
                0x21, 0xd2, 0xa9, 0x42, 0xf7, 0xdc, 0xa6, 0x65,
 
2920
                0xb7, 0x6a, 0x7e, 0x2e, 0x14, 0xd3, 0xf6, 0xf3,
 
2921
                0x4b, 0x4c, 0x5b, 0x1a, 0x70, 0x7a, 0xbc, 0xb0,
 
2922
                0x12, 0xf3, 0x6e, 0x0c, 0xcf, 0x43, 0x22, 0xae,
 
2923
                0x5b, 0xba, 0x00, 0xf8, 0xfd, 0xaf, 0x16, 0x03,
 
2924
                0x03, 0x00, 0x0f, 0x0d, 0x00, 0x00, 0x0b, 0x02,
 
2925
                0x01, 0x40, 0x00, 0x04, 0x04, 0x01, 0x04, 0x03,
 
2926
                0x00, 0x00, 0x16, 0x03, 0x03, 0x00, 0x04, 0x0e,
 
2927
                0x00, 0x00, 0x00,
 
2928
        },
 
2929
        {
 
2930
                0x16, 0x03, 0x03, 0x01, 0xfb, 0x0b, 0x00, 0x01,
 
2931
                0xf7, 0x00, 0x01, 0xf4, 0x00, 0x01, 0xf1, 0x30,
 
2932
                0x82, 0x01, 0xed, 0x30, 0x82, 0x01, 0x58, 0xa0,
 
2933
                0x03, 0x02, 0x01, 0x02, 0x02, 0x01, 0x00, 0x30,
 
2934
                0x0b, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7,
 
2935
                0x0d, 0x01, 0x01, 0x05, 0x30, 0x26, 0x31, 0x10,
 
2936
                0x30, 0x0e, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13,
 
2937
                0x07, 0x41, 0x63, 0x6d, 0x65, 0x20, 0x43, 0x6f,
 
2938
                0x31, 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04,
 
2939
                0x03, 0x13, 0x09, 0x31, 0x32, 0x37, 0x2e, 0x30,
 
2940
                0x2e, 0x30, 0x2e, 0x31, 0x30, 0x1e, 0x17, 0x0d,
 
2941
                0x31, 0x31, 0x31, 0x32, 0x30, 0x38, 0x30, 0x37,
 
2942
                0x35, 0x35, 0x31, 0x32, 0x5a, 0x17, 0x0d, 0x31,
 
2943
                0x32, 0x31, 0x32, 0x30, 0x37, 0x30, 0x38, 0x30,
 
2944
                0x30, 0x31, 0x32, 0x5a, 0x30, 0x26, 0x31, 0x10,
 
2945
                0x30, 0x0e, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13,
 
2946
                0x07, 0x41, 0x63, 0x6d, 0x65, 0x20, 0x43, 0x6f,
 
2947
                0x31, 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04,
 
2948
                0x03, 0x13, 0x09, 0x31, 0x32, 0x37, 0x2e, 0x30,
 
2949
                0x2e, 0x30, 0x2e, 0x31, 0x30, 0x81, 0x9c, 0x30,
 
2950
                0x0b, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7,
 
2951
                0x0d, 0x01, 0x01, 0x01, 0x03, 0x81, 0x8c, 0x00,
 
2952
                0x30, 0x81, 0x88, 0x02, 0x81, 0x80, 0x4e, 0xd0,
 
2953
                0x7b, 0x31, 0xe3, 0x82, 0x64, 0xd9, 0x59, 0xc0,
 
2954
                0xc2, 0x87, 0xa4, 0x5e, 0x1e, 0x8b, 0x73, 0x33,
 
2955
                0xc7, 0x63, 0x53, 0xdf, 0x66, 0x92, 0x06, 0x84,
 
2956
                0xf6, 0x64, 0xd5, 0x8f, 0xe4, 0x36, 0xa7, 0x1d,
 
2957
                0x2b, 0xe8, 0xb3, 0x20, 0x36, 0x45, 0x23, 0xb5,
 
2958
                0xe3, 0x95, 0xae, 0xed, 0xe0, 0xf5, 0x20, 0x9c,
 
2959
                0x8d, 0x95, 0xdf, 0x7f, 0x5a, 0x12, 0xef, 0x87,
 
2960
                0xe4, 0x5b, 0x68, 0xe4, 0xe9, 0x0e, 0x74, 0xec,
 
2961
                0x04, 0x8a, 0x7f, 0xde, 0x93, 0x27, 0xc4, 0x01,
 
2962
                0x19, 0x7a, 0xbd, 0xf2, 0xdc, 0x3d, 0x14, 0xab,
 
2963
                0xd0, 0x54, 0xca, 0x21, 0x0c, 0xd0, 0x4d, 0x6e,
 
2964
                0x87, 0x2e, 0x5c, 0xc5, 0xd2, 0xbb, 0x4d, 0x4b,
 
2965
                0x4f, 0xce, 0xb6, 0x2c, 0xf7, 0x7e, 0x88, 0xec,
 
2966
                0x7c, 0xd7, 0x02, 0x91, 0x74, 0xa6, 0x1e, 0x0c,
 
2967
                0x1a, 0xda, 0xe3, 0x4a, 0x5a, 0x2e, 0xde, 0x13,
 
2968
                0x9c, 0x4c, 0x40, 0x88, 0x59, 0x93, 0x02, 0x03,
 
2969
                0x01, 0x00, 0x01, 0xa3, 0x32, 0x30, 0x30, 0x30,
 
2970
                0x0e, 0x06, 0x03, 0x55, 0x1d, 0x0f, 0x01, 0x01,
 
2971
                0xff, 0x04, 0x04, 0x03, 0x02, 0x00, 0xa0, 0x30,
 
2972
                0x0d, 0x06, 0x03, 0x55, 0x1d, 0x0e, 0x04, 0x06,
 
2973
                0x04, 0x04, 0x01, 0x02, 0x03, 0x04, 0x30, 0x0f,
 
2974
                0x06, 0x03, 0x55, 0x1d, 0x23, 0x04, 0x08, 0x30,
 
2975
                0x06, 0x80, 0x04, 0x01, 0x02, 0x03, 0x04, 0x30,
 
2976
                0x0b, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7,
 
2977
                0x0d, 0x01, 0x01, 0x05, 0x03, 0x81, 0x81, 0x00,
 
2978
                0x36, 0x1f, 0xb3, 0x7a, 0x0c, 0x75, 0xc9, 0x6e,
 
2979
                0x37, 0x46, 0x61, 0x2b, 0xd5, 0xbd, 0xc0, 0xa7,
 
2980
                0x4b, 0xcc, 0x46, 0x9a, 0x81, 0x58, 0x7c, 0x85,
 
2981
                0x79, 0x29, 0xc8, 0xc8, 0xc6, 0x67, 0xdd, 0x32,
 
2982
                0x56, 0x45, 0x2b, 0x75, 0xb6, 0xe9, 0x24, 0xa9,
 
2983
                0x50, 0x9a, 0xbe, 0x1f, 0x5a, 0xfa, 0x1a, 0x15,
 
2984
                0xd9, 0xcc, 0x55, 0x95, 0x72, 0x16, 0x83, 0xb9,
 
2985
                0xc2, 0xb6, 0x8f, 0xfd, 0x88, 0x8c, 0x38, 0x84,
 
2986
                0x1d, 0xab, 0x5d, 0x92, 0x31, 0x13, 0x4f, 0xfd,
 
2987
                0x83, 0x3b, 0xc6, 0x9d, 0xf1, 0x11, 0x62, 0xb6,
 
2988
                0x8b, 0xec, 0xab, 0x67, 0xbe, 0xc8, 0x64, 0xb0,
 
2989
                0x11, 0x50, 0x46, 0x58, 0x17, 0x6b, 0x99, 0x1c,
 
2990
                0xd3, 0x1d, 0xfc, 0x06, 0xf1, 0x0e, 0xe5, 0x96,
 
2991
                0xa8, 0x0c, 0xf9, 0x78, 0x20, 0xb7, 0x44, 0x18,
 
2992
                0x51, 0x8d, 0x10, 0x7e, 0x4f, 0x94, 0x67, 0xdf,
 
2993
                0xa3, 0x4e, 0x70, 0x73, 0x8e, 0x90, 0x91, 0x85,
 
2994
                0x16, 0x03, 0x03, 0x00, 0x8a, 0x10, 0x00, 0x00,
 
2995
                0x86, 0x85, 0x04, 0x01, 0x5d, 0x3a, 0x92, 0x59,
 
2996
                0x7f, 0x9a, 0x22, 0x36, 0x0e, 0x1b, 0x1d, 0x2a,
 
2997
                0x05, 0xb7, 0xa4, 0xb6, 0x5d, 0xfc, 0x51, 0x6e,
 
2998
                0x15, 0xe5, 0x89, 0x7c, 0xe2, 0xfa, 0x87, 0x38,
 
2999
                0x05, 0x79, 0x15, 0x92, 0xb4, 0x8f, 0x88, 0x8f,
 
3000
                0x9d, 0x5d, 0xa0, 0xaf, 0xf8, 0xce, 0xf9, 0x6f,
 
3001
                0x83, 0xf4, 0x08, 0x69, 0xe4, 0x91, 0xc5, 0xed,
 
3002
                0xb9, 0xc5, 0xa8, 0x1f, 0x4b, 0xec, 0xef, 0x91,
 
3003
                0xc1, 0xa3, 0x34, 0x24, 0x18, 0x00, 0x2d, 0xcd,
 
3004
                0xe6, 0x44, 0xef, 0x5a, 0x3e, 0x52, 0x63, 0x5b,
 
3005
                0x36, 0x1f, 0x7e, 0xce, 0x9e, 0xaa, 0xda, 0x8d,
 
3006
                0xb5, 0xc9, 0xea, 0xd8, 0x1b, 0xd1, 0x1c, 0x7c,
 
3007
                0x07, 0xfc, 0x3c, 0x2d, 0x70, 0x1f, 0xf9, 0x4d,
 
3008
                0xcb, 0xaa, 0xad, 0x07, 0xd5, 0x6d, 0xbd, 0xa6,
 
3009
                0x61, 0xf3, 0x2f, 0xa3, 0x9c, 0x45, 0x02, 0x4a,
 
3010
                0xac, 0x6c, 0xb6, 0x37, 0x95, 0xb1, 0x4a, 0xb5,
 
3011
                0x0a, 0x4e, 0x60, 0x67, 0xd7, 0xe0, 0x04, 0x16,
 
3012
                0x03, 0x03, 0x00, 0x88, 0x0f, 0x00, 0x00, 0x84,
 
3013
                0x04, 0x01, 0x00, 0x80, 0x08, 0x83, 0x53, 0xf0,
 
3014
                0xf8, 0x14, 0xf5, 0xc2, 0xd1, 0x8b, 0xf0, 0xa5,
 
3015
                0xc1, 0xd8, 0x1a, 0x36, 0x4b, 0x75, 0x77, 0x02,
 
3016
                0x19, 0xd8, 0x11, 0x3f, 0x5a, 0x36, 0xfc, 0xe9,
 
3017
                0x2b, 0x4b, 0xf9, 0xfe, 0xda, 0x8a, 0x0f, 0x6e,
 
3018
                0x3d, 0xd3, 0x52, 0x87, 0xf7, 0x9c, 0x78, 0x39,
 
3019
                0xa8, 0xf1, 0xd7, 0xf7, 0x4e, 0x35, 0x33, 0xf9,
 
3020
                0xc5, 0x76, 0xa8, 0x12, 0xc4, 0x91, 0x33, 0x1d,
 
3021
                0x93, 0x8c, 0xbf, 0xb1, 0x83, 0x00, 0x90, 0xc5,
 
3022
                0x52, 0x3e, 0xe0, 0x0a, 0xe8, 0x92, 0x75, 0xdf,
 
3023
                0x54, 0x5f, 0x9f, 0x95, 0x76, 0x62, 0xb5, 0x85,
 
3024
                0x69, 0xa4, 0x86, 0x85, 0x6c, 0xf3, 0x6b, 0x2a,
 
3025
                0x72, 0x7b, 0x4d, 0x42, 0x33, 0x67, 0x4a, 0xce,
 
3026
                0xb5, 0xdb, 0x9b, 0xae, 0xc0, 0xb0, 0x10, 0xeb,
 
3027
                0x3b, 0xf4, 0xc2, 0x9a, 0x64, 0x47, 0x4c, 0x1e,
 
3028
                0xa5, 0x91, 0x7f, 0x6d, 0xd1, 0x03, 0xf5, 0x4a,
 
3029
                0x90, 0x69, 0x18, 0xb1, 0x14, 0x03, 0x03, 0x00,
 
3030
                0x01, 0x01, 0x16, 0x03, 0x03, 0x00, 0x24, 0x59,
 
3031
                0xfc, 0x7e, 0xae, 0xb3, 0xbf, 0xab, 0x4d, 0xdb,
 
3032
                0x4e, 0xab, 0xa9, 0x6d, 0x6b, 0x4c, 0x60, 0xb6,
 
3033
                0x16, 0xe0, 0xab, 0x7f, 0x52, 0x2d, 0xa1, 0xfc,
 
3034
                0xe1, 0x80, 0xd2, 0x8a, 0xa1, 0xe5, 0x8f, 0xa1,
 
3035
                0x70, 0x93, 0x23,
 
3036
        },
 
3037
        {
 
3038
                0x16, 0x03, 0x03, 0x02, 0x67, 0x04, 0x00, 0x02,
 
3039
                0x63, 0x00, 0x00, 0x00, 0x00, 0x02, 0x5d, 0x00,
 
3040
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
3041
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x65,
 
3042
                0xea, 0x8b, 0xc5, 0xef, 0xba, 0x64, 0xb7, 0x23,
 
3043
                0x08, 0x86, 0x4f, 0x37, 0xe0, 0x8f, 0xbd, 0x75,
 
3044
                0x71, 0x2b, 0xcb, 0x20, 0x75, 0x11, 0x3b, 0xa2,
 
3045
                0x9e, 0x39, 0x3c, 0x03, 0xef, 0x6e, 0x41, 0xd7,
 
3046
                0xcf, 0x1a, 0x2c, 0xf2, 0xfe, 0xc2, 0xd3, 0x65,
 
3047
                0x59, 0x00, 0x9d, 0x03, 0xb4, 0xf2, 0x20, 0xe4,
 
3048
                0x33, 0x80, 0xcd, 0xf6, 0xe4, 0x59, 0x22, 0xf7,
 
3049
                0xfd, 0x88, 0x0e, 0xa4, 0x09, 0xc0, 0x0d, 0x10,
 
3050
                0x80, 0x10, 0x79, 0xee, 0x70, 0x96, 0xdb, 0x22,
 
3051
                0x8b, 0xb7, 0xac, 0xe0, 0x98, 0xad, 0xe9, 0xe3,
 
3052
                0xcb, 0xea, 0x9f, 0xe6, 0x83, 0x28, 0x7c, 0x7e,
 
3053
                0x4e, 0x9a, 0x8d, 0xd9, 0xf3, 0x86, 0xf4, 0x89,
 
3054
                0x8b, 0x79, 0x8f, 0xbb, 0xe9, 0x74, 0x02, 0x02,
 
3055
                0x14, 0x04, 0xea, 0xba, 0x16, 0x10, 0xa1, 0x85,
 
3056
                0xbe, 0x4e, 0x4e, 0x92, 0xc5, 0x83, 0xf6, 0x1e,
 
3057
                0x1f, 0xd4, 0x25, 0xc2, 0xc2, 0xb9, 0xce, 0x33,
 
3058
                0x63, 0x66, 0x79, 0x1f, 0x54, 0x35, 0xc1, 0xe8,
 
3059
                0x89, 0x34, 0x78, 0x94, 0x36, 0x14, 0xef, 0x01,
 
3060
                0x1f, 0xf1, 0xbd, 0x77, 0x2c, 0x4d, 0xac, 0x5c,
 
3061
                0x5c, 0x4a, 0xc6, 0xed, 0xd8, 0x0e, 0x72, 0x84,
 
3062
                0x83, 0xdc, 0x56, 0x84, 0xc8, 0xf3, 0x89, 0x56,
 
3063
                0xfd, 0x89, 0xc1, 0xc9, 0x9a, 0x29, 0x91, 0x7e,
 
3064
                0x19, 0xe9, 0x8b, 0x5b, 0x11, 0x15, 0x4e, 0x6c,
 
3065
                0xf4, 0x89, 0xe7, 0x6d, 0x68, 0x1e, 0xf9, 0x6c,
 
3066
                0x23, 0x72, 0x05, 0x68, 0x82, 0x60, 0x84, 0x1f,
 
3067
                0x83, 0x20, 0x09, 0x86, 0x10, 0x81, 0xec, 0xec,
 
3068
                0xdc, 0x25, 0x53, 0x20, 0xfa, 0xa9, 0x41, 0x64,
 
3069
                0xd6, 0x20, 0xf3, 0xf4, 0x52, 0xf2, 0x80, 0x62,
 
3070
                0x83, 0xc9, 0x23, 0x66, 0x44, 0x95, 0x5a, 0x99,
 
3071
                0x8a, 0xe1, 0x26, 0x63, 0xc1, 0x8b, 0x31, 0xf9,
 
3072
                0x21, 0x06, 0x77, 0x04, 0x27, 0xf2, 0x0c, 0x63,
 
3073
                0x83, 0x45, 0xa0, 0xa9, 0x7b, 0xcf, 0xdf, 0xd7,
 
3074
                0x56, 0x75, 0xbc, 0xdd, 0x95, 0x36, 0xb1, 0x75,
 
3075
                0x39, 0x05, 0x00, 0x3c, 0x8a, 0x79, 0xd6, 0xe9,
 
3076
                0xf0, 0x4b, 0xdc, 0x51, 0x6b, 0x01, 0x94, 0x16,
 
3077
                0x87, 0x12, 0x92, 0x6c, 0x07, 0xc1, 0xf5, 0x58,
 
3078
                0xb7, 0x2a, 0x81, 0xf5, 0xa0, 0x37, 0x8b, 0xa6,
 
3079
                0x22, 0xfe, 0x28, 0x0a, 0x7e, 0x68, 0xe2, 0xda,
 
3080
                0x6c, 0x53, 0xee, 0x0e, 0x8d, 0x2d, 0x8b, 0x0b,
 
3081
                0xda, 0xf8, 0x99, 0x3e, 0x0e, 0xed, 0x9f, 0xc1,
 
3082
                0x2b, 0xf6, 0xfe, 0xe9, 0x52, 0x38, 0x7b, 0x83,
 
3083
                0x9a, 0x50, 0xa6, 0xd7, 0x49, 0x83, 0x43, 0x7e,
 
3084
                0x82, 0xec, 0xc7, 0x09, 0x3d, 0x3d, 0xb1, 0xee,
 
3085
                0xe8, 0xc5, 0x6a, 0xc3, 0x3d, 0x4b, 0x4c, 0x6a,
 
3086
                0xbb, 0x0b, 0x2c, 0x24, 0x2e, 0xdb, 0x7d, 0x57,
 
3087
                0x87, 0xb4, 0x80, 0xa5, 0xae, 0xff, 0x54, 0xa8,
 
3088
                0xa5, 0x27, 0x69, 0x95, 0xc8, 0xe7, 0x79, 0xc7,
 
3089
                0x89, 0x2a, 0x73, 0x49, 0xcb, 0xf5, 0xc5, 0xbc,
 
3090
                0x4a, 0xe0, 0x73, 0xa9, 0xbc, 0x88, 0x64, 0x96,
 
3091
                0x98, 0xa5, 0x1e, 0xe3, 0x43, 0xc1, 0x7d, 0x78,
 
3092
                0xc7, 0x94, 0x72, 0xd4, 0x2c, 0x6e, 0x85, 0x39,
 
3093
                0x9a, 0xaf, 0xdb, 0xa1, 0xe9, 0xe2, 0xcb, 0x37,
 
3094
                0x04, 0xc6, 0x8c, 0x81, 0xd3, 0x2a, 0xb7, 0xbe,
 
3095
                0x6c, 0x07, 0x1f, 0x5e, 0xd9, 0x00, 0xd2, 0xf7,
 
3096
                0xe1, 0xa7, 0xbc, 0x0c, 0xb6, 0x6d, 0xfb, 0x3f,
 
3097
                0x3d, 0x24, 0xaa, 0xfb, 0x7e, 0xe1, 0xb5, 0x1b,
 
3098
                0xff, 0x38, 0xaa, 0x69, 0x59, 0x38, 0x52, 0x9a,
 
3099
                0x0e, 0x6d, 0xbc, 0xde, 0x4f, 0x13, 0x09, 0x17,
 
3100
                0xc4, 0xa9, 0x05, 0x84, 0xbc, 0x50, 0xef, 0x40,
 
3101
                0xb0, 0x4c, 0x24, 0x32, 0xed, 0x94, 0x2c, 0xdd,
 
3102
                0xda, 0x20, 0x24, 0x67, 0xe2, 0xea, 0x71, 0x3d,
 
3103
                0x4a, 0x04, 0x0d, 0x98, 0x29, 0x20, 0x4c, 0xeb,
 
3104
                0x70, 0xce, 0x45, 0x9e, 0x5a, 0xaf, 0xb6, 0xa3,
 
3105
                0x92, 0xc8, 0x28, 0xf2, 0xe3, 0xe8, 0x8a, 0x5d,
 
3106
                0x0a, 0x33, 0x79, 0x9b, 0x6a, 0xf3, 0x30, 0x01,
 
3107
                0x1d, 0x47, 0xbd, 0x01, 0xcc, 0x4d, 0x71, 0xc0,
 
3108
                0x56, 0xfa, 0xfd, 0x37, 0xed, 0x0f, 0x27, 0xc0,
 
3109
                0xbb, 0xa0, 0xee, 0xc3, 0x79, 0x8b, 0xe7, 0x41,
 
3110
                0x8f, 0xfa, 0x3a, 0xcb, 0x45, 0x3b, 0x85, 0x9f,
 
3111
                0x06, 0x90, 0xb2, 0x51, 0xc0, 0x48, 0x10, 0xac,
 
3112
                0x2a, 0xec, 0xec, 0x48, 0x7a, 0x19, 0x47, 0xc4,
 
3113
                0x2a, 0xeb, 0xb3, 0xa2, 0x07, 0x22, 0x32, 0x78,
 
3114
                0xf4, 0x73, 0x5e, 0x92, 0x42, 0x15, 0xa1, 0x90,
 
3115
                0x91, 0xd0, 0xeb, 0x12, 0x14, 0x03, 0x03, 0x00,
 
3116
                0x01, 0x01, 0x16, 0x03, 0x03, 0x00, 0x24, 0x45,
 
3117
                0x4b, 0x80, 0x42, 0x46, 0xde, 0xbb, 0xe7, 0x76,
 
3118
                0xd1, 0x33, 0x92, 0xfc, 0x46, 0x17, 0x6d, 0x21,
 
3119
                0xf6, 0x0e, 0x16, 0xca, 0x9b, 0x9b, 0x04, 0x65,
 
3120
                0x16, 0x40, 0x44, 0x64, 0xbc, 0x58, 0xfa, 0x2a,
 
3121
                0x49, 0xe9, 0xed, 0x17, 0x03, 0x03, 0x00, 0x21,
 
3122
                0x89, 0x71, 0xcd, 0x56, 0x54, 0xbf, 0x73, 0xde,
 
3123
                0xfb, 0x4b, 0x4e, 0xf1, 0x7f, 0xc6, 0x75, 0xa6,
 
3124
                0xbd, 0x6b, 0x6c, 0xd9, 0xdc, 0x0c, 0x71, 0xb4,
 
3125
                0xb9, 0xbb, 0x6e, 0xfa, 0x9e, 0xc7, 0xc7, 0x4c,
 
3126
                0x24, 0x15, 0x03, 0x03, 0x00, 0x16, 0x62, 0xea,
 
3127
                0x65, 0x69, 0x68, 0x4a, 0xce, 0xa7, 0x9e, 0xce,
 
3128
                0xc0, 0xf1, 0x5c, 0x96, 0xd9, 0x1f, 0x49, 0xac,
 
3129
                0x2d, 0x05, 0x89, 0x94,
 
3130
        },
 
3131
}
 
3132
 
 
3133
// cert.pem and key.pem were generated with generate_cert.go
 
3134
// Thus, they have no ExtKeyUsage fields and trigger an error
 
3135
// when verification is turned on.
 
3136
 
 
3137
var clientCertificate = loadPEMCert(`
 
3138
-----BEGIN CERTIFICATE-----
 
3139
MIIB7TCCAVigAwIBAgIBADALBgkqhkiG9w0BAQUwJjEQMA4GA1UEChMHQWNtZSBD
 
3140
bzESMBAGA1UEAxMJMTI3LjAuMC4xMB4XDTExMTIwODA3NTUxMloXDTEyMTIwNzA4
 
3141
MDAxMlowJjEQMA4GA1UEChMHQWNtZSBDbzESMBAGA1UEAxMJMTI3LjAuMC4xMIGc
 
3142
MAsGCSqGSIb3DQEBAQOBjAAwgYgCgYBO0Hsx44Jk2VnAwoekXh6LczPHY1PfZpIG
 
3143
hPZk1Y/kNqcdK+izIDZFI7Xjla7t4PUgnI2V339aEu+H5Fto5OkOdOwEin/ekyfE
 
3144
ARl6vfLcPRSr0FTKIQzQTW6HLlzF0rtNS0/Otiz3fojsfNcCkXSmHgwa2uNKWi7e
 
3145
E5xMQIhZkwIDAQABozIwMDAOBgNVHQ8BAf8EBAMCAKAwDQYDVR0OBAYEBAECAwQw
 
3146
DwYDVR0jBAgwBoAEAQIDBDALBgkqhkiG9w0BAQUDgYEANh+zegx1yW43RmEr1b3A
 
3147
p0vMRpqBWHyFeSnIyMZn3TJWRSt1tukkqVCavh9a+hoV2cxVlXIWg7nCto/9iIw4
 
3148
hB2rXZIxE0/9gzvGnfERYraL7KtnvshksBFQRlgXa5kc0x38BvEO5ZaoDPl4ILdE
 
3149
GFGNEH5PlGffo05wc46QkYU=
 
3150
-----END CERTIFICATE-----
 
3151
`)
 
3152
 
 
3153
/* corresponding key.pem for cert.pem is:
 
3154
-----BEGIN RSA PRIVATE KEY-----
 
3155
MIICWgIBAAKBgE7QezHjgmTZWcDCh6ReHotzM8djU99mkgaE9mTVj+Q2px0r6LMg
 
3156
NkUjteOVru3g9SCcjZXff1oS74fkW2jk6Q507ASKf96TJ8QBGXq98tw9FKvQVMoh
 
3157
DNBNbocuXMXSu01LT862LPd+iOx81wKRdKYeDBra40paLt4TnExAiFmTAgMBAAEC
 
3158
gYBxvXd8yNteFTns8A/2yomEMC4yeosJJSpp1CsN3BJ7g8/qTnrVPxBy+RU+qr63
 
3159
t2WquaOu/cr5P8iEsa6lk20tf8pjKLNXeX0b1RTzK8rJLbS7nGzP3tvOhL096VtQ
 
3160
dAo4ROEaro0TzYpHmpciSvxVIeEIAAdFDObDJPKqcJAxyQJBAJizfYgK8Gzx9fsx
 
3161
hxp+VteCbVPg2euASH5Yv3K5LukRdKoSzHE2grUVQgN/LafC0eZibRanxHegYSr7
 
3162
7qaswKUCQQCEIWor/X4XTMdVj3Oj+vpiw75y/S9gh682+myZL+d/02IEkwnB098P
 
3163
RkKVpenBHyrGg0oeN5La7URILWKj7CPXAkBKo6F+d+phNjwIFoN1Xb/RA32w/D1I
 
3164
saG9sF+UEhRt9AxUfW/U/tIQ9V0ZHHcSg1XaCM5Nvp934brdKdvTOKnJAkBD5h/3
 
3165
Rybatlvg/fzBEaJFyq09zhngkxlZOUtBVTqzl17RVvY2orgH02U4HbCHy4phxOn7
 
3166
qTdQRYlHRftgnWK1AkANibn9PRYJ7mJyJ9Dyj2QeNcSkSTzrt0tPvUMf4+meJymN
 
3167
1Ntu5+S1DLLzfxlaljWG6ylW6DNxujCyuXIV2rvA
 
3168
-----END RSA PRIVATE KEY-----
 
3169
*/
 
3170
 
 
3171
var clientECDSACertificate = loadPEMCert(`
 
3172
-----BEGIN CERTIFICATE-----
 
3173
MIIB/DCCAV4CCQCaMIRsJjXZFzAJBgcqhkjOPQQBMEUxCzAJBgNVBAYTAkFVMRMw
 
3174
EQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBXaWRnaXRzIFB0
 
3175
eSBMdGQwHhcNMTIxMTE0MTMyNTUzWhcNMjIxMTEyMTMyNTUzWjBBMQswCQYDVQQG
 
3176
EwJBVTEMMAoGA1UECBMDTlNXMRAwDgYDVQQHEwdQeXJtb250MRIwEAYDVQQDEwlK
 
3177
b2VsIFNpbmcwgZswEAYHKoZIzj0CAQYFK4EEACMDgYYABACVjJF1FMBexFe01MNv
 
3178
ja5oHt1vzobhfm6ySD6B5U7ixohLZNz1MLvT/2XMW/TdtWo+PtAd3kfDdq0Z9kUs
 
3179
jLzYHQFMH3CQRnZIi4+DzEpcj0B22uCJ7B0rxE4wdihBsmKo+1vx+U56jb0JuK7q
 
3180
ixgnTy5w/hOWusPTQBbNZU6sER7m8TAJBgcqhkjOPQQBA4GMADCBiAJCAOAUxGBg
 
3181
C3JosDJdYUoCdFzCgbkWqD8pyDbHgf9stlvZcPE4O1BIKJTLCRpS8V3ujfK58PDa
 
3182
2RU6+b0DeoeiIzXsAkIBo9SKeDUcSpoj0gq+KxAxnZxfvuiRs9oa9V2jI/Umi0Vw
 
3183
jWVim34BmT0Y9hCaOGGbLlfk+syxis7iI6CH8OFnUes=
 
3184
-----END CERTIFICATE-----
 
3185
`)
 
3186
 
 
3187
/* corresponding key for cert is:
 
3188
-----BEGIN EC PARAMETERS-----
 
3189
BgUrgQQAIw==
 
3190
-----END EC PARAMETERS-----
 
3191
-----BEGIN EC PRIVATE KEY-----
 
3192
MIHcAgEBBEIBkJN9X4IqZIguiEVKMqeBUP5xtRsEv4HJEtOpOGLELwO53SD78Ew8
 
3193
k+wLWoqizS3NpQyMtrU8JFdWfj+C57UNkOugBwYFK4EEACOhgYkDgYYABACVjJF1
 
3194
FMBexFe01MNvja5oHt1vzobhfm6ySD6B5U7ixohLZNz1MLvT/2XMW/TdtWo+PtAd
 
3195
3kfDdq0Z9kUsjLzYHQFMH3CQRnZIi4+DzEpcj0B22uCJ7B0rxE4wdihBsmKo+1vx
 
3196
+U56jb0JuK7qixgnTy5w/hOWusPTQBbNZU6sER7m8Q==
 
3197
-----END EC PRIVATE KEY-----
 
3198
*/
 
3199
var clientauthECDSATests = []clientauthTest{
 
3200
        // Server asks for cert with empty CA list, client gives one
 
3201
        //   go test -run "TestRunServer" -serve \
 
3202
        //     -clientauth 1 -ciphersuites=0xc00a
 
3203
        //   openssl s_client -host 127.0.0.1 -port 10443 \
 
3204
        //     -cipher ECDHE-ECDSA-AES256-SHA -key client.key -cert client.crt
 
3205
        {"RequestClientCert, client gives it", RequestClientCert, []*x509.Certificate{clientECDSACertificate}, [][]byte{
 
3206
                {
 
3207
                        0x16, 0x03, 0x01, 0x00, 0xa0, 0x01, 0x00, 0x00,
 
3208
                        0x9c, 0x03, 0x03, 0x51, 0xe5, 0x73, 0xc5, 0xae,
 
3209
                        0x51, 0x94, 0xb4, 0xf2, 0xe8, 0xf6, 0x03, 0x0e,
 
3210
                        0x3b, 0x34, 0xaf, 0xf0, 0xdc, 0x1b, 0xcc, 0xd8,
 
3211
                        0x0c, 0x45, 0x82, 0xd4, 0xd6, 0x76, 0x04, 0x6e,
 
3212
                        0x4f, 0x7a, 0x24, 0x00, 0x00, 0x04, 0xc0, 0x0a,
 
3213
                        0x00, 0xff, 0x01, 0x00, 0x00, 0x6f, 0x00, 0x0b,
 
3214
                        0x00, 0x04, 0x03, 0x00, 0x01, 0x02, 0x00, 0x0a,
 
3215
                        0x00, 0x34, 0x00, 0x32, 0x00, 0x0e, 0x00, 0x0d,
 
3216
                        0x00, 0x19, 0x00, 0x0b, 0x00, 0x0c, 0x00, 0x18,
 
3217
                        0x00, 0x09, 0x00, 0x0a, 0x00, 0x16, 0x00, 0x17,
 
3218
                        0x00, 0x08, 0x00, 0x06, 0x00, 0x07, 0x00, 0x14,
 
3219
                        0x00, 0x15, 0x00, 0x04, 0x00, 0x05, 0x00, 0x12,
 
3220
                        0x00, 0x13, 0x00, 0x01, 0x00, 0x02, 0x00, 0x03,
 
3221
                        0x00, 0x0f, 0x00, 0x10, 0x00, 0x11, 0x00, 0x23,
 
3222
                        0x00, 0x00, 0x00, 0x0d, 0x00, 0x22, 0x00, 0x20,
 
3223
                        0x06, 0x01, 0x06, 0x02, 0x06, 0x03, 0x05, 0x01,
 
3224
                        0x05, 0x02, 0x05, 0x03, 0x04, 0x01, 0x04, 0x02,
 
3225
                        0x04, 0x03, 0x03, 0x01, 0x03, 0x02, 0x03, 0x03,
 
3226
                        0x02, 0x01, 0x02, 0x02, 0x02, 0x03, 0x01, 0x01,
 
3227
                        0x00, 0x0f, 0x00, 0x01, 0x01,
 
3228
                },
 
3229
                {
 
3230
                        0x16, 0x03, 0x01, 0x00, 0x30, 0x02, 0x00, 0x00,
 
3231
                        0x2c, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
 
3232
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
3233
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
3234
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
3235
                        0x00, 0x00, 0x00, 0x00, 0xc0, 0x0a, 0x00, 0x00,
 
3236
                        0x04, 0x00, 0x23, 0x00, 0x00, 0x16, 0x03, 0x01,
 
3237
                        0x02, 0x0e, 0x0b, 0x00, 0x02, 0x0a, 0x00, 0x02,
 
3238
                        0x07, 0x00, 0x02, 0x04, 0x30, 0x82, 0x02, 0x00,
 
3239
                        0x30, 0x82, 0x01, 0x62, 0x02, 0x09, 0x00, 0xb8,
 
3240
                        0xbf, 0x2d, 0x47, 0xa0, 0xd2, 0xeb, 0xf4, 0x30,
 
3241
                        0x09, 0x06, 0x07, 0x2a, 0x86, 0x48, 0xce, 0x3d,
 
3242
                        0x04, 0x01, 0x30, 0x45, 0x31, 0x0b, 0x30, 0x09,
 
3243
                        0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x41,
 
3244
                        0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55,
 
3245
                        0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d, 0x65,
 
3246
                        0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31, 0x21,
 
3247
                        0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13,
 
3248
                        0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65,
 
3249
                        0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69, 0x74,
 
3250
                        0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c, 0x74,
 
3251
                        0x64, 0x30, 0x1e, 0x17, 0x0d, 0x31, 0x32, 0x31,
 
3252
                        0x31, 0x32, 0x32, 0x31, 0x35, 0x30, 0x36, 0x33,
 
3253
                        0x32, 0x5a, 0x17, 0x0d, 0x32, 0x32, 0x31, 0x31,
 
3254
                        0x32, 0x30, 0x31, 0x35, 0x30, 0x36, 0x33, 0x32,
 
3255
                        0x5a, 0x30, 0x45, 0x31, 0x0b, 0x30, 0x09, 0x06,
 
3256
                        0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x41, 0x55,
 
3257
                        0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04,
 
3258
                        0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d, 0x65, 0x2d,
 
3259
                        0x53, 0x74, 0x61, 0x74, 0x65, 0x31, 0x21, 0x30,
 
3260
                        0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13, 0x18,
 
3261
                        0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74,
 
3262
                        0x20, 0x57, 0x69, 0x64, 0x67, 0x69, 0x74, 0x73,
 
3263
                        0x20, 0x50, 0x74, 0x79, 0x20, 0x4c, 0x74, 0x64,
 
3264
                        0x30, 0x81, 0x9b, 0x30, 0x10, 0x06, 0x07, 0x2a,
 
3265
                        0x86, 0x48, 0xce, 0x3d, 0x02, 0x01, 0x06, 0x05,
 
3266
                        0x2b, 0x81, 0x04, 0x00, 0x23, 0x03, 0x81, 0x86,
 
3267
                        0x00, 0x04, 0x00, 0xc4, 0xa1, 0xed, 0xbe, 0x98,
 
3268
                        0xf9, 0x0b, 0x48, 0x73, 0x36, 0x7e, 0xc3, 0x16,
 
3269
                        0x56, 0x11, 0x22, 0xf2, 0x3d, 0x53, 0xc3, 0x3b,
 
3270
                        0x4d, 0x21, 0x3d, 0xcd, 0x6b, 0x75, 0xe6, 0xf6,
 
3271
                        0xb0, 0xdc, 0x9a, 0xdf, 0x26, 0xc1, 0xbc, 0xb2,
 
3272
                        0x87, 0xf0, 0x72, 0x32, 0x7c, 0xb3, 0x64, 0x2f,
 
3273
                        0x1c, 0x90, 0xbc, 0xea, 0x68, 0x23, 0x10, 0x7e,
 
3274
                        0xfe, 0xe3, 0x25, 0xc0, 0x48, 0x3a, 0x69, 0xe0,
 
3275
                        0x28, 0x6d, 0xd3, 0x37, 0x00, 0xef, 0x04, 0x62,
 
3276
                        0xdd, 0x0d, 0xa0, 0x9c, 0x70, 0x62, 0x83, 0xd8,
 
3277
                        0x81, 0xd3, 0x64, 0x31, 0xaa, 0x9e, 0x97, 0x31,
 
3278
                        0xbd, 0x96, 0xb0, 0x68, 0xc0, 0x9b, 0x23, 0xde,
 
3279
                        0x76, 0x64, 0x3f, 0x1a, 0x5c, 0x7f, 0xe9, 0x12,
 
3280
                        0x0e, 0x58, 0x58, 0xb6, 0x5f, 0x70, 0xdd, 0x9b,
 
3281
                        0xd8, 0xea, 0xd5, 0xd7, 0xf5, 0xd5, 0xcc, 0xb9,
 
3282
                        0xb6, 0x9f, 0x30, 0x66, 0x5b, 0x66, 0x9a, 0x20,
 
3283
                        0xe2, 0x27, 0xe5, 0xbf, 0xfe, 0x3b, 0x30, 0x09,
 
3284
                        0x06, 0x07, 0x2a, 0x86, 0x48, 0xce, 0x3d, 0x04,
 
3285
                        0x01, 0x03, 0x81, 0x8c, 0x00, 0x30, 0x81, 0x88,
 
3286
                        0x02, 0x42, 0x01, 0x88, 0xa2, 0x4f, 0xeb, 0xe2,
 
3287
                        0x45, 0xc5, 0x48, 0x7d, 0x1b, 0xac, 0xf5, 0xed,
 
3288
                        0x98, 0x9d, 0xae, 0x47, 0x70, 0xc0, 0x5e, 0x1b,
 
3289
                        0xb6, 0x2f, 0xbd, 0xf1, 0xb6, 0x4d, 0xb7, 0x61,
 
3290
                        0x40, 0xd3, 0x11, 0xa2, 0xce, 0xee, 0x0b, 0x7e,
 
3291
                        0x92, 0x7e, 0xff, 0x76, 0x9d, 0xc3, 0x3b, 0x7e,
 
3292
                        0xa5, 0x3f, 0xce, 0xfa, 0x10, 0xe2, 0x59, 0xec,
 
3293
                        0x47, 0x2d, 0x7c, 0xac, 0xda, 0x4e, 0x97, 0x0e,
 
3294
                        0x15, 0xa0, 0x6f, 0xd0, 0x02, 0x42, 0x01, 0x4d,
 
3295
                        0xfc, 0xbe, 0x67, 0x13, 0x9c, 0x2d, 0x05, 0x0e,
 
3296
                        0xbd, 0x3f, 0xa3, 0x8c, 0x25, 0xc1, 0x33, 0x13,
 
3297
                        0x83, 0x0d, 0x94, 0x06, 0xbb, 0xd4, 0x37, 0x7a,
 
3298
                        0xf6, 0xec, 0x7a, 0xc9, 0x86, 0x2e, 0xdd, 0xd7,
 
3299
                        0x11, 0x69, 0x7f, 0x85, 0x7c, 0x56, 0xde, 0xfb,
 
3300
                        0x31, 0x78, 0x2b, 0xe4, 0xc7, 0x78, 0x0d, 0xae,
 
3301
                        0xcb, 0xbe, 0x9e, 0x4e, 0x36, 0x24, 0x31, 0x7b,
 
3302
                        0x6a, 0x0f, 0x39, 0x95, 0x12, 0x07, 0x8f, 0x2a,
 
3303
                        0x16, 0x03, 0x01, 0x01, 0x1a, 0x0c, 0x00, 0x01,
 
3304
                        0x16, 0x03, 0x00, 0x19, 0x85, 0x04, 0x01, 0x39,
 
3305
                        0xdc, 0xee, 0x44, 0x17, 0x5e, 0xdb, 0xd7, 0x27,
 
3306
                        0xaf, 0xb6, 0x56, 0xd9, 0xb4, 0x43, 0x5a, 0x99,
 
3307
                        0xcf, 0xaa, 0x31, 0x37, 0x0c, 0x6f, 0x3a, 0xa0,
 
3308
                        0xf8, 0x53, 0xc4, 0x74, 0xd1, 0x91, 0x0a, 0x46,
 
3309
                        0xf5, 0x38, 0x3b, 0x5c, 0x09, 0xd8, 0x97, 0xdc,
 
3310
                        0x4b, 0xaa, 0x70, 0x26, 0x48, 0xf2, 0xd6, 0x0b,
 
3311
                        0x31, 0xc9, 0xf8, 0xd4, 0x98, 0x43, 0xe1, 0x6c,
 
3312
                        0xd5, 0xc7, 0xb2, 0x8e, 0x0b, 0x01, 0xe6, 0xb6,
 
3313
                        0x00, 0x28, 0x80, 0x7b, 0xfc, 0x96, 0x8f, 0x0d,
 
3314
                        0xa2, 0x4f, 0xb0, 0x79, 0xaf, 0xdc, 0x61, 0x28,
 
3315
                        0x63, 0x33, 0x78, 0xf6, 0x31, 0x39, 0xfd, 0x8a,
 
3316
                        0xf4, 0x15, 0x18, 0x11, 0xfe, 0xdb, 0xd5, 0x07,
 
3317
                        0xda, 0x2c, 0xed, 0x49, 0xa0, 0x23, 0xbf, 0xd0,
 
3318
                        0x3a, 0x38, 0x1d, 0x54, 0xae, 0x1c, 0x7b, 0xea,
 
3319
                        0x29, 0xee, 0xd0, 0x38, 0xc1, 0x76, 0xa7, 0x7f,
 
3320
                        0x2a, 0xf4, 0xce, 0x1e, 0xac, 0xcc, 0x94, 0x79,
 
3321
                        0x90, 0x33, 0x00, 0x8b, 0x30, 0x81, 0x88, 0x02,
 
3322
                        0x42, 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04,
 
3323
                        0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23,
 
3324
                        0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05,
 
3325
                        0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b,
 
3326
                        0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef,
 
3327
                        0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2,
 
3328
                        0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85,
 
3329
                        0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2,
 
3330
                        0xe5, 0xbd, 0x66, 0x02, 0x42, 0x00, 0xad, 0x7d,
 
3331
                        0x06, 0x35, 0xab, 0xec, 0x8d, 0xac, 0xd4, 0xba,
 
3332
                        0x1b, 0x49, 0x5e, 0x05, 0x5f, 0xf0, 0x97, 0x93,
 
3333
                        0x82, 0xb8, 0x2b, 0x8d, 0x91, 0x98, 0x63, 0x8e,
 
3334
                        0xb4, 0x14, 0x62, 0xdb, 0x1e, 0xc9, 0x2b, 0x30,
 
3335
                        0xf8, 0x41, 0x9b, 0xa6, 0xe6, 0xbc, 0xde, 0x0e,
 
3336
                        0x68, 0x30, 0x21, 0xf4, 0xa8, 0xa9, 0x1b, 0xec,
 
3337
                        0x44, 0x4f, 0x5d, 0x02, 0x2f, 0x60, 0x45, 0x60,
 
3338
                        0xba, 0xe0, 0x4e, 0xc0, 0xd4, 0x3b, 0x01, 0x16,
 
3339
                        0x03, 0x01, 0x00, 0x09, 0x0d, 0x00, 0x00, 0x05,
 
3340
                        0x02, 0x01, 0x40, 0x00, 0x00, 0x16, 0x03, 0x01,
 
3341
                        0x00, 0x04, 0x0e, 0x00, 0x00, 0x00,
 
3342
                },
 
3343
                {
 
3344
                        0x16, 0x03, 0x01, 0x02, 0x0a, 0x0b, 0x00, 0x02,
 
3345
                        0x06, 0x00, 0x02, 0x03, 0x00, 0x02, 0x00, 0x30,
 
3346
                        0x82, 0x01, 0xfc, 0x30, 0x82, 0x01, 0x5e, 0x02,
 
3347
                        0x09, 0x00, 0x9a, 0x30, 0x84, 0x6c, 0x26, 0x35,
 
3348
                        0xd9, 0x17, 0x30, 0x09, 0x06, 0x07, 0x2a, 0x86,
 
3349
                        0x48, 0xce, 0x3d, 0x04, 0x01, 0x30, 0x45, 0x31,
 
3350
                        0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06,
 
3351
                        0x13, 0x02, 0x41, 0x55, 0x31, 0x13, 0x30, 0x11,
 
3352
                        0x06, 0x03, 0x55, 0x04, 0x08, 0x13, 0x0a, 0x53,
 
3353
                        0x6f, 0x6d, 0x65, 0x2d, 0x53, 0x74, 0x61, 0x74,
 
3354
                        0x65, 0x31, 0x21, 0x30, 0x1f, 0x06, 0x03, 0x55,
 
3355
                        0x04, 0x0a, 0x13, 0x18, 0x49, 0x6e, 0x74, 0x65,
 
3356
                        0x72, 0x6e, 0x65, 0x74, 0x20, 0x57, 0x69, 0x64,
 
3357
                        0x67, 0x69, 0x74, 0x73, 0x20, 0x50, 0x74, 0x79,
 
3358
                        0x20, 0x4c, 0x74, 0x64, 0x30, 0x1e, 0x17, 0x0d,
 
3359
                        0x31, 0x32, 0x31, 0x31, 0x31, 0x34, 0x31, 0x33,
 
3360
                        0x32, 0x35, 0x35, 0x33, 0x5a, 0x17, 0x0d, 0x32,
 
3361
                        0x32, 0x31, 0x31, 0x31, 0x32, 0x31, 0x33, 0x32,
 
3362
                        0x35, 0x35, 0x33, 0x5a, 0x30, 0x41, 0x31, 0x0b,
 
3363
                        0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13,
 
3364
                        0x02, 0x41, 0x55, 0x31, 0x0c, 0x30, 0x0a, 0x06,
 
3365
                        0x03, 0x55, 0x04, 0x08, 0x13, 0x03, 0x4e, 0x53,
 
3366
                        0x57, 0x31, 0x10, 0x30, 0x0e, 0x06, 0x03, 0x55,
 
3367
                        0x04, 0x07, 0x13, 0x07, 0x50, 0x79, 0x72, 0x6d,
 
3368
                        0x6f, 0x6e, 0x74, 0x31, 0x12, 0x30, 0x10, 0x06,
 
3369
                        0x03, 0x55, 0x04, 0x03, 0x13, 0x09, 0x4a, 0x6f,
 
3370
                        0x65, 0x6c, 0x20, 0x53, 0x69, 0x6e, 0x67, 0x30,
 
3371
                        0x81, 0x9b, 0x30, 0x10, 0x06, 0x07, 0x2a, 0x86,
 
3372
                        0x48, 0xce, 0x3d, 0x02, 0x01, 0x06, 0x05, 0x2b,
 
3373
                        0x81, 0x04, 0x00, 0x23, 0x03, 0x81, 0x86, 0x00,
 
3374
                        0x04, 0x00, 0x95, 0x8c, 0x91, 0x75, 0x14, 0xc0,
 
3375
                        0x5e, 0xc4, 0x57, 0xb4, 0xd4, 0xc3, 0x6f, 0x8d,
 
3376
                        0xae, 0x68, 0x1e, 0xdd, 0x6f, 0xce, 0x86, 0xe1,
 
3377
                        0x7e, 0x6e, 0xb2, 0x48, 0x3e, 0x81, 0xe5, 0x4e,
 
3378
                        0xe2, 0xc6, 0x88, 0x4b, 0x64, 0xdc, 0xf5, 0x30,
 
3379
                        0xbb, 0xd3, 0xff, 0x65, 0xcc, 0x5b, 0xf4, 0xdd,
 
3380
                        0xb5, 0x6a, 0x3e, 0x3e, 0xd0, 0x1d, 0xde, 0x47,
 
3381
                        0xc3, 0x76, 0xad, 0x19, 0xf6, 0x45, 0x2c, 0x8c,
 
3382
                        0xbc, 0xd8, 0x1d, 0x01, 0x4c, 0x1f, 0x70, 0x90,
 
3383
                        0x46, 0x76, 0x48, 0x8b, 0x8f, 0x83, 0xcc, 0x4a,
 
3384
                        0x5c, 0x8f, 0x40, 0x76, 0xda, 0xe0, 0x89, 0xec,
 
3385
                        0x1d, 0x2b, 0xc4, 0x4e, 0x30, 0x76, 0x28, 0x41,
 
3386
                        0xb2, 0x62, 0xa8, 0xfb, 0x5b, 0xf1, 0xf9, 0x4e,
 
3387
                        0x7a, 0x8d, 0xbd, 0x09, 0xb8, 0xae, 0xea, 0x8b,
 
3388
                        0x18, 0x27, 0x4f, 0x2e, 0x70, 0xfe, 0x13, 0x96,
 
3389
                        0xba, 0xc3, 0xd3, 0x40, 0x16, 0xcd, 0x65, 0x4e,
 
3390
                        0xac, 0x11, 0x1e, 0xe6, 0xf1, 0x30, 0x09, 0x06,
 
3391
                        0x07, 0x2a, 0x86, 0x48, 0xce, 0x3d, 0x04, 0x01,
 
3392
                        0x03, 0x81, 0x8c, 0x00, 0x30, 0x81, 0x88, 0x02,
 
3393
                        0x42, 0x00, 0xe0, 0x14, 0xc4, 0x60, 0x60, 0x0b,
 
3394
                        0x72, 0x68, 0xb0, 0x32, 0x5d, 0x61, 0x4a, 0x02,
 
3395
                        0x74, 0x5c, 0xc2, 0x81, 0xb9, 0x16, 0xa8, 0x3f,
 
3396
                        0x29, 0xc8, 0x36, 0xc7, 0x81, 0xff, 0x6c, 0xb6,
 
3397
                        0x5b, 0xd9, 0x70, 0xf1, 0x38, 0x3b, 0x50, 0x48,
 
3398
                        0x28, 0x94, 0xcb, 0x09, 0x1a, 0x52, 0xf1, 0x5d,
 
3399
                        0xee, 0x8d, 0xf2, 0xb9, 0xf0, 0xf0, 0xda, 0xd9,
 
3400
                        0x15, 0x3a, 0xf9, 0xbd, 0x03, 0x7a, 0x87, 0xa2,
 
3401
                        0x23, 0x35, 0xec, 0x02, 0x42, 0x01, 0xa3, 0xd4,
 
3402
                        0x8a, 0x78, 0x35, 0x1c, 0x4a, 0x9a, 0x23, 0xd2,
 
3403
                        0x0a, 0xbe, 0x2b, 0x10, 0x31, 0x9d, 0x9c, 0x5f,
 
3404
                        0xbe, 0xe8, 0x91, 0xb3, 0xda, 0x1a, 0xf5, 0x5d,
 
3405
                        0xa3, 0x23, 0xf5, 0x26, 0x8b, 0x45, 0x70, 0x8d,
 
3406
                        0x65, 0x62, 0x9b, 0x7e, 0x01, 0x99, 0x3d, 0x18,
 
3407
                        0xf6, 0x10, 0x9a, 0x38, 0x61, 0x9b, 0x2e, 0x57,
 
3408
                        0xe4, 0xfa, 0xcc, 0xb1, 0x8a, 0xce, 0xe2, 0x23,
 
3409
                        0xa0, 0x87, 0xf0, 0xe1, 0x67, 0x51, 0xeb, 0x16,
 
3410
                        0x03, 0x01, 0x00, 0x8a, 0x10, 0x00, 0x00, 0x86,
 
3411
                        0x85, 0x04, 0x00, 0xcd, 0x1c, 0xe8, 0x66, 0x5b,
 
3412
                        0xa8, 0x9d, 0x83, 0x2f, 0x7e, 0x1d, 0x0b, 0x59,
 
3413
                        0x23, 0xbc, 0x30, 0xcf, 0xa3, 0xaf, 0x21, 0xdc,
 
3414
                        0xf2, 0x57, 0x49, 0x56, 0x30, 0x25, 0x7c, 0x84,
 
3415
                        0x5d, 0xad, 0xaa, 0x9c, 0x7b, 0x2a, 0x95, 0x58,
 
3416
                        0x3d, 0x30, 0x87, 0x01, 0x3b, 0xb7, 0xea, 0xcb,
 
3417
                        0xc4, 0xa3, 0xeb, 0x22, 0xbf, 0x2d, 0x61, 0x17,
 
3418
                        0x8c, 0x9b, 0xe8, 0x1b, 0xb2, 0x87, 0x16, 0x78,
 
3419
                        0xd5, 0xfd, 0x8b, 0xdd, 0x00, 0x0f, 0xda, 0x8e,
 
3420
                        0xfd, 0x28, 0x36, 0xeb, 0xe4, 0xc5, 0x42, 0x14,
 
3421
                        0xc7, 0xbd, 0x29, 0x5e, 0x9a, 0xed, 0x5e, 0xc1,
 
3422
                        0xf7, 0xf4, 0xbd, 0xbd, 0x15, 0x9c, 0xe8, 0x44,
 
3423
                        0x71, 0xa7, 0xb6, 0xe9, 0xfa, 0x7e, 0x97, 0xcb,
 
3424
                        0x96, 0x3e, 0x53, 0x76, 0xfb, 0x11, 0x1f, 0x36,
 
3425
                        0x8f, 0x30, 0xfb, 0x71, 0x3a, 0x75, 0x3a, 0x25,
 
3426
                        0x7b, 0xa2, 0xc1, 0xf9, 0x3e, 0x58, 0x5f, 0x07,
 
3427
                        0x16, 0xed, 0xe1, 0xf7, 0xc1, 0xb1, 0x16, 0x03,
 
3428
                        0x01, 0x00, 0x90, 0x0f, 0x00, 0x00, 0x8c, 0x00,
 
3429
                        0x8a, 0x30, 0x81, 0x87, 0x02, 0x42, 0x00, 0xb2,
 
3430
                        0xd3, 0x91, 0xe6, 0xd5, 0x9b, 0xb2, 0xb8, 0x03,
 
3431
                        0xf4, 0x85, 0x4d, 0x43, 0x79, 0x1f, 0xb6, 0x6f,
 
3432
                        0x0c, 0xcd, 0x67, 0x5f, 0x5e, 0xca, 0xee, 0xb3,
 
3433
                        0xe4, 0xab, 0x1e, 0x58, 0xc3, 0x04, 0xa9, 0x8a,
 
3434
                        0xa7, 0xcf, 0xaa, 0x33, 0x88, 0xd5, 0x35, 0xd2,
 
3435
                        0x80, 0x8f, 0xfa, 0x1b, 0x3c, 0x3d, 0xf7, 0x80,
 
3436
                        0x50, 0xde, 0x80, 0x30, 0x64, 0xee, 0xc0, 0xb3,
 
3437
                        0x91, 0x6e, 0x5d, 0x1e, 0xc0, 0xdc, 0x3a, 0x93,
 
3438
                        0x02, 0x41, 0x4e, 0xca, 0x98, 0x41, 0x8c, 0x36,
 
3439
                        0xf2, 0x12, 0xbf, 0x8e, 0x0f, 0x69, 0x8e, 0xf8,
 
3440
                        0x7b, 0x9d, 0xba, 0x9c, 0x5c, 0x48, 0x79, 0xf4,
 
3441
                        0xba, 0x3d, 0x06, 0xa5, 0xab, 0x47, 0xe0, 0x1a,
 
3442
                        0x45, 0x28, 0x3a, 0x8f, 0xbf, 0x14, 0x24, 0x36,
 
3443
                        0xd1, 0x1d, 0x29, 0xdc, 0xde, 0x72, 0x5b, 0x76,
 
3444
                        0x41, 0x67, 0xe8, 0xe5, 0x71, 0x4a, 0x77, 0xe9,
 
3445
                        0xed, 0x02, 0x19, 0xdd, 0xe4, 0xaa, 0xe9, 0x2d,
 
3446
                        0xe7, 0x47, 0x32, 0x14, 0x03, 0x01, 0x00, 0x01,
 
3447
                        0x01, 0x16, 0x03, 0x01, 0x00, 0x30, 0xfa, 0xc3,
 
3448
                        0xf2, 0x35, 0xd0, 0x6d, 0x32, 0x78, 0x6a, 0xd6,
 
3449
                        0xe6, 0x70, 0x5e, 0x00, 0x4c, 0x35, 0xf1, 0xe0,
 
3450
                        0x21, 0xcf, 0xc3, 0x78, 0xcd, 0xe0, 0x2b, 0x0b,
 
3451
                        0xf4, 0xeb, 0xf9, 0xc0, 0x38, 0xf2, 0x9a, 0x31,
 
3452
                        0x55, 0x07, 0x2b, 0x8d, 0x68, 0x40, 0x31, 0x08,
 
3453
                        0xaa, 0xe3, 0x16, 0xcf, 0x4b, 0xd4,
 
3454
                },
 
3455
                {
 
3456
                        0x16, 0x03, 0x01, 0x02, 0x76, 0x04, 0x00, 0x02,
 
3457
                        0x72, 0x00, 0x00, 0x00, 0x00, 0x02, 0x6c, 0x00,
 
3458
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
3459
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x65,
 
3460
                        0xe8, 0x8b, 0xde, 0xef, 0xba, 0xf9, 0xdb, 0x95,
 
3461
                        0x24, 0xa5, 0x49, 0xb3, 0x23, 0xd8, 0x73, 0x88,
 
3462
                        0x50, 0x42, 0xed, 0xeb, 0xa3, 0xd8, 0xab, 0x31,
 
3463
                        0x9c, 0xd0, 0x00, 0x01, 0xef, 0xc0, 0xbf, 0xab,
 
3464
                        0x59, 0x55, 0xb5, 0xb9, 0xef, 0xa5, 0xa6, 0xec,
 
3465
                        0x69, 0xed, 0x00, 0x2f, 0x47, 0xdb, 0x75, 0x52,
 
3466
                        0x0c, 0xe5, 0x86, 0xb7, 0x02, 0x59, 0x22, 0xf7,
 
3467
                        0xfd, 0x8b, 0xff, 0xa4, 0x09, 0xc0, 0x1c, 0x10,
 
3468
                        0x80, 0x10, 0x7f, 0x4c, 0x7a, 0x94, 0x40, 0x10,
 
3469
                        0x0d, 0xda, 0x8a, 0xe5, 0x4a, 0xbc, 0xd0, 0xc0,
 
3470
                        0x4b, 0xa5, 0x33, 0x97, 0xc6, 0xe7, 0x40, 0x7f,
 
3471
                        0x7f, 0x8c, 0xf9, 0xf8, 0xc8, 0xb8, 0xfb, 0x8c,
 
3472
                        0xdd, 0x28, 0x81, 0xae, 0xfd, 0x37, 0x20, 0x3a,
 
3473
                        0x40, 0x37, 0x99, 0xc4, 0x21, 0x01, 0xc4, 0x91,
 
3474
                        0xb0, 0x5e, 0x11, 0xc5, 0xa9, 0xfd, 0x9a, 0x02,
 
3475
                        0x7e, 0x97, 0x6a, 0x86, 0x89, 0xb8, 0xc1, 0x32,
 
3476
                        0x4c, 0x7e, 0x6d, 0x47, 0x61, 0x0e, 0xe3, 0xc2,
 
3477
                        0xf0, 0x62, 0x3c, 0xc6, 0x71, 0x4f, 0xbb, 0x47,
 
3478
                        0x65, 0xb1, 0xd9, 0x22, 0x79, 0x15, 0xea, 0x1f,
 
3479
                        0x4b, 0x2a, 0x8a, 0xa4, 0xc8, 0x73, 0x34, 0xba,
 
3480
                        0x83, 0xe4, 0x70, 0x99, 0xc9, 0xcf, 0xbe, 0x64,
 
3481
                        0x99, 0xb9, 0xfa, 0xe9, 0xaf, 0x5d, 0xc7, 0x20,
 
3482
                        0x26, 0xde, 0xc5, 0x06, 0x12, 0x36, 0x4f, 0x4d,
 
3483
                        0xc0, 0xbb, 0x81, 0x5b, 0x5e, 0x38, 0xc3, 0x07,
 
3484
                        0x21, 0x04, 0x1a, 0x53, 0x9c, 0x59, 0xac, 0x2d,
 
3485
                        0xe6, 0xa5, 0x93, 0xa5, 0x19, 0xc6, 0xb0, 0xf7,
 
3486
                        0x56, 0x5d, 0xdf, 0xd1, 0xf4, 0xfd, 0x44, 0x6d,
 
3487
                        0xc6, 0xa2, 0x31, 0xa7, 0x35, 0x42, 0x18, 0x50,
 
3488
                        0x0c, 0x4f, 0x6e, 0xe3, 0x3b, 0xa3, 0xaa, 0x1c,
 
3489
                        0xbe, 0x41, 0x0d, 0xce, 0x6c, 0x62, 0xe1, 0x96,
 
3490
                        0x2d, 0xbd, 0x14, 0x31, 0xe3, 0xc4, 0x5b, 0xbf,
 
3491
                        0xf6, 0xde, 0xec, 0x42, 0xe8, 0xc7, 0x2a, 0x0b,
 
3492
                        0xdb, 0x2d, 0x7c, 0xf0, 0x3f, 0x45, 0x32, 0x45,
 
3493
                        0x09, 0x47, 0x09, 0x0f, 0x21, 0x22, 0x45, 0x06,
 
3494
                        0x11, 0xb8, 0xf9, 0xe6, 0x67, 0x90, 0x4b, 0x4a,
 
3495
                        0xde, 0x81, 0xfb, 0xeb, 0xe7, 0x9a, 0x08, 0x30,
 
3496
                        0xcf, 0x51, 0xe1, 0xd9, 0xfa, 0x79, 0xa3, 0xcc,
 
3497
                        0x65, 0x1a, 0x83, 0x86, 0xc9, 0x7a, 0x41, 0xf5,
 
3498
                        0xdf, 0xa0, 0x7c, 0x44, 0x23, 0x17, 0xf3, 0x62,
 
3499
                        0xe8, 0xa9, 0x31, 0x1e, 0x6b, 0x05, 0x4b, 0x4f,
 
3500
                        0x9d, 0x91, 0x46, 0x92, 0xa6, 0x25, 0x32, 0xca,
 
3501
                        0xa1, 0x75, 0xda, 0xe6, 0x80, 0x3e, 0x7f, 0xd1,
 
3502
                        0x26, 0x57, 0x07, 0x42, 0xe4, 0x91, 0xff, 0xbd,
 
3503
                        0x44, 0xae, 0x98, 0x5c, 0x1d, 0xdf, 0x11, 0xe3,
 
3504
                        0xae, 0x87, 0x5e, 0xb7, 0x69, 0xad, 0x34, 0x7f,
 
3505
                        0x3a, 0x07, 0x7c, 0xdf, 0xfc, 0x76, 0x17, 0x8b,
 
3506
                        0x62, 0xc8, 0xe1, 0x78, 0x2a, 0xc8, 0xb9, 0x8a,
 
3507
                        0xbb, 0x5c, 0xfb, 0x38, 0x74, 0x91, 0x6e, 0x12,
 
3508
                        0x0c, 0x1f, 0x8e, 0xe1, 0xc2, 0x01, 0xd8, 0x9d,
 
3509
                        0x23, 0x0f, 0xc4, 0x67, 0x5d, 0xe5, 0x67, 0x4b,
 
3510
                        0x94, 0x6e, 0x69, 0x72, 0x90, 0x2d, 0x52, 0x78,
 
3511
                        0x8e, 0x61, 0xba, 0xdf, 0x4e, 0xf5, 0xdc, 0xfb,
 
3512
                        0x73, 0xbe, 0x03, 0x70, 0xd9, 0x01, 0x30, 0xf3,
 
3513
                        0xa1, 0xbb, 0x9a, 0x5f, 0xec, 0x9e, 0xed, 0x8d,
 
3514
                        0xdd, 0x53, 0xfd, 0x60, 0xc3, 0x2b, 0x7a, 0x00,
 
3515
                        0x2c, 0xf9, 0x0a, 0x57, 0x47, 0x45, 0x43, 0xb3,
 
3516
                        0x23, 0x01, 0x9c, 0xee, 0x54, 0x4d, 0x58, 0xd3,
 
3517
                        0x71, 0x1c, 0xc9, 0xd3, 0x30, 0x9e, 0x14, 0xa5,
 
3518
                        0xf3, 0xbf, 0x4d, 0x9b, 0xb7, 0x13, 0x21, 0xae,
 
3519
                        0xd2, 0x8d, 0x6e, 0x6f, 0x1c, 0xcc, 0xb2, 0x41,
 
3520
                        0xb2, 0x64, 0x56, 0x83, 0xce, 0xd1, 0x0c, 0x79,
 
3521
                        0x32, 0x78, 0xef, 0xc5, 0x21, 0xb1, 0xe8, 0xc4,
 
3522
                        0x42, 0xa7, 0x8d, 0xc1, 0xfa, 0xa1, 0x9c, 0x3c,
 
3523
                        0x21, 0xd8, 0xe9, 0x90, 0xe2, 0x7c, 0x14, 0x26,
 
3524
                        0xfe, 0x61, 0x3e, 0xf9, 0x71, 0x1d, 0x5d, 0x49,
 
3525
                        0x3b, 0xb1, 0xb8, 0x42, 0xa1, 0xb8, 0x1c, 0x75,
 
3526
                        0x7d, 0xee, 0xed, 0xfc, 0xe6, 0x20, 0x2b, 0x9e,
 
3527
                        0x10, 0x52, 0xda, 0x56, 0x4d, 0x64, 0x6c, 0x41,
 
3528
                        0xc1, 0xf7, 0x60, 0x0c, 0x10, 0x65, 0x6f, 0xd4,
 
3529
                        0xe9, 0x9b, 0x0d, 0x83, 0x13, 0xc8, 0x5a, 0xa3,
 
3530
                        0x56, 0x2a, 0x42, 0xc6, 0x1c, 0xfe, 0xdb, 0xba,
 
3531
                        0x3d, 0x04, 0x12, 0xfd, 0x28, 0xeb, 0x78, 0xdd,
 
3532
                        0xbc, 0xc8, 0x0d, 0xa1, 0xce, 0xd4, 0x54, 0xbf,
 
3533
                        0xaf, 0xe1, 0x60, 0x0c, 0xa3, 0xc3, 0xc3, 0x62,
 
3534
                        0x58, 0xc1, 0x79, 0xa7, 0x95, 0x41, 0x09, 0x24,
 
3535
                        0xc6, 0x9a, 0x50, 0x14, 0x03, 0x01, 0x00, 0x01,
 
3536
                        0x01, 0x16, 0x03, 0x01, 0x00, 0x30, 0x4d, 0x7b,
 
3537
                        0x5f, 0x28, 0x5e, 0x68, 0x6c, 0xa3, 0x65, 0xc7,
 
3538
                        0x7e, 0x49, 0x6c, 0xb3, 0x67, 0xbb, 0xd0, 0x75,
 
3539
                        0xa2, 0x9e, 0x8c, 0x92, 0x4f, 0x8c, 0x33, 0x14,
 
3540
                        0x7c, 0x6c, 0xf1, 0x74, 0x97, 0xc3, 0xe0, 0x10,
 
3541
                        0xe9, 0x0d, 0xc2, 0x30, 0x5c, 0x23, 0xee, 0x1d,
 
3542
                        0x16, 0x2e, 0xb9, 0x96, 0x2b, 0x2d, 0x17, 0x03,
 
3543
                        0x01, 0x00, 0x20, 0xf2, 0xc8, 0xa7, 0x1b, 0x60,
 
3544
                        0x46, 0xee, 0xe5, 0x7e, 0xc9, 0x35, 0xb3, 0xf1,
 
3545
                        0x7c, 0x32, 0x0c, 0x85, 0x94, 0x59, 0x57, 0x27,
 
3546
                        0xb0, 0xbd, 0x52, 0x86, 0x90, 0xf1, 0xb7, 0x4d,
 
3547
                        0x1e, 0xc1, 0x16, 0x17, 0x03, 0x01, 0x00, 0x30,
 
3548
                        0xff, 0x85, 0x50, 0xdf, 0x3f, 0xfc, 0xa2, 0x61,
 
3549
                        0x1a, 0x12, 0xc0, 0x1e, 0x10, 0x32, 0x88, 0x50,
 
3550
                        0xa0, 0x2c, 0x80, 0xda, 0x77, 0xea, 0x09, 0x47,
 
3551
                        0xe0, 0x85, 0x07, 0x29, 0x45, 0x65, 0x19, 0xa3,
 
3552
                        0x8d, 0x99, 0xb8, 0xbf, 0xb6, 0xbc, 0x76, 0xe2,
 
3553
                        0x50, 0x24, 0x82, 0x0a, 0xfd, 0xdd, 0x35, 0x09,
 
3554
                        0x15, 0x03, 0x01, 0x00, 0x20, 0xe7, 0x36, 0xf6,
 
3555
                        0x61, 0xd2, 0x95, 0x3c, 0xb6, 0x65, 0x7b, 0xb2,
 
3556
                        0xb8, 0xdf, 0x03, 0x53, 0xeb, 0xf7, 0x16, 0xe0,
 
3557
                        0xe0, 0x15, 0x22, 0x71, 0x70, 0x62, 0x73, 0xad,
 
3558
                        0xb5, 0x1a, 0x77, 0x44, 0x57,
 
3559
                },
 
3560
        }},
 
3561
}
 
3562
 
 
3563
var aesGCMServerScript = [][]byte{
 
3564
        {
 
3565
                0x16, 0x03, 0x01, 0x01, 0x1c, 0x01, 0x00, 0x01,
 
3566
                0x18, 0x03, 0x03, 0x52, 0x1e, 0x74, 0xf0, 0xb0,
 
3567
                0xc1, 0x8b, 0x16, 0xf9, 0x74, 0xfc, 0x16, 0xc4,
 
3568
                0x11, 0x18, 0x96, 0x08, 0x25, 0x38, 0x4f, 0x98,
 
3569
                0x98, 0xbe, 0xb5, 0x61, 0xdf, 0x94, 0x15, 0xcc,
 
3570
                0x9b, 0x61, 0xef, 0x00, 0x00, 0x80, 0xc0, 0x30,
 
3571
                0xc0, 0x2c, 0xc0, 0x28, 0xc0, 0x24, 0xc0, 0x14,
 
3572
                0xc0, 0x0a, 0x00, 0xa3, 0x00, 0x9f, 0x00, 0x6b,
 
3573
                0x00, 0x6a, 0x00, 0x39, 0x00, 0x38, 0xc0, 0x32,
 
3574
                0xc0, 0x2e, 0xc0, 0x2a, 0xc0, 0x26, 0xc0, 0x0f,
 
3575
                0xc0, 0x05, 0x00, 0x9d, 0x00, 0x3d, 0x00, 0x35,
 
3576
                0xc0, 0x12, 0xc0, 0x08, 0x00, 0x16, 0x00, 0x13,
 
3577
                0xc0, 0x0d, 0xc0, 0x03, 0x00, 0x0a, 0xc0, 0x2f,
 
3578
                0xc0, 0x2b, 0xc0, 0x27, 0xc0, 0x23, 0xc0, 0x13,
 
3579
                0xc0, 0x09, 0x00, 0xa2, 0x00, 0x9e, 0x00, 0x67,
 
3580
                0x00, 0x40, 0x00, 0x33, 0x00, 0x32, 0xc0, 0x31,
 
3581
                0xc0, 0x2d, 0xc0, 0x29, 0xc0, 0x25, 0xc0, 0x0e,
 
3582
                0xc0, 0x04, 0x00, 0x9c, 0x00, 0x3c, 0x00, 0x2f,
 
3583
                0xc0, 0x11, 0xc0, 0x07, 0xc0, 0x0c, 0xc0, 0x02,
 
3584
                0x00, 0x05, 0x00, 0x04, 0x00, 0x15, 0x00, 0x12,
 
3585
                0x00, 0x09, 0x00, 0x14, 0x00, 0x11, 0x00, 0x08,
 
3586
                0x00, 0x06, 0x00, 0x03, 0x00, 0xff, 0x01, 0x00,
 
3587
                0x00, 0x6f, 0x00, 0x0b, 0x00, 0x04, 0x03, 0x00,
 
3588
                0x01, 0x02, 0x00, 0x0a, 0x00, 0x34, 0x00, 0x32,
 
3589
                0x00, 0x0e, 0x00, 0x0d, 0x00, 0x19, 0x00, 0x0b,
 
3590
                0x00, 0x0c, 0x00, 0x18, 0x00, 0x09, 0x00, 0x0a,
 
3591
                0x00, 0x16, 0x00, 0x17, 0x00, 0x08, 0x00, 0x06,
 
3592
                0x00, 0x07, 0x00, 0x14, 0x00, 0x15, 0x00, 0x04,
 
3593
                0x00, 0x05, 0x00, 0x12, 0x00, 0x13, 0x00, 0x01,
 
3594
                0x00, 0x02, 0x00, 0x03, 0x00, 0x0f, 0x00, 0x10,
 
3595
                0x00, 0x11, 0x00, 0x23, 0x00, 0x00, 0x00, 0x0d,
 
3596
                0x00, 0x22, 0x00, 0x20, 0x06, 0x01, 0x06, 0x02,
 
3597
                0x06, 0x03, 0x05, 0x01, 0x05, 0x02, 0x05, 0x03,
 
3598
                0x04, 0x01, 0x04, 0x02, 0x04, 0x03, 0x03, 0x01,
 
3599
                0x03, 0x02, 0x03, 0x03, 0x02, 0x01, 0x02, 0x02,
 
3600
                0x02, 0x03, 0x01, 0x01, 0x00, 0x0f, 0x00, 0x01,
 
3601
                0x01,
 
3602
        },
 
3603
        {
 
3604
                0x16, 0x03, 0x03, 0x00, 0x30, 0x02, 0x00, 0x00,
 
3605
                0x2c, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
 
3606
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
3607
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
3608
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
3609
                0x00, 0x00, 0x00, 0x00, 0xc0, 0x2f, 0x00, 0x00,
 
3610
                0x04, 0x00, 0x23, 0x00, 0x00, 0x16, 0x03, 0x03,
 
3611
                0x02, 0xbe, 0x0b, 0x00, 0x02, 0xba, 0x00, 0x02,
 
3612
                0xb7, 0x00, 0x02, 0xb4, 0x30, 0x82, 0x02, 0xb0,
 
3613
                0x30, 0x82, 0x02, 0x19, 0xa0, 0x03, 0x02, 0x01,
 
3614
                0x02, 0x02, 0x09, 0x00, 0x85, 0xb0, 0xbb, 0xa4,
 
3615
                0x8a, 0x7f, 0xb8, 0xca, 0x30, 0x0d, 0x06, 0x09,
 
3616
                0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
 
3617
                0x05, 0x05, 0x00, 0x30, 0x45, 0x31, 0x0b, 0x30,
 
3618
                0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02,
 
3619
                0x41, 0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03,
 
3620
                0x55, 0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d,
 
3621
                0x65, 0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31,
 
3622
                0x21, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a,
 
3623
                0x13, 0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e,
 
3624
                0x65, 0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69,
 
3625
                0x74, 0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c,
 
3626
                0x74, 0x64, 0x30, 0x1e, 0x17, 0x0d, 0x31, 0x30,
 
3627
                0x30, 0x34, 0x32, 0x34, 0x30, 0x39, 0x30, 0x39,
 
3628
                0x33, 0x38, 0x5a, 0x17, 0x0d, 0x31, 0x31, 0x30,
 
3629
                0x34, 0x32, 0x34, 0x30, 0x39, 0x30, 0x39, 0x33,
 
3630
                0x38, 0x5a, 0x30, 0x45, 0x31, 0x0b, 0x30, 0x09,
 
3631
                0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x41,
 
3632
                0x55, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55,
 
3633
                0x04, 0x08, 0x13, 0x0a, 0x53, 0x6f, 0x6d, 0x65,
 
3634
                0x2d, 0x53, 0x74, 0x61, 0x74, 0x65, 0x31, 0x21,
 
3635
                0x30, 0x1f, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13,
 
3636
                0x18, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65,
 
3637
                0x74, 0x20, 0x57, 0x69, 0x64, 0x67, 0x69, 0x74,
 
3638
                0x73, 0x20, 0x50, 0x74, 0x79, 0x20, 0x4c, 0x74,
 
3639
                0x64, 0x30, 0x81, 0x9f, 0x30, 0x0d, 0x06, 0x09,
 
3640
                0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
 
3641
                0x01, 0x05, 0x00, 0x03, 0x81, 0x8d, 0x00, 0x30,
 
3642
                0x81, 0x89, 0x02, 0x81, 0x81, 0x00, 0xbb, 0x79,
 
3643
                0xd6, 0xf5, 0x17, 0xb5, 0xe5, 0xbf, 0x46, 0x10,
 
3644
                0xd0, 0xdc, 0x69, 0xbe, 0xe6, 0x2b, 0x07, 0x43,
 
3645
                0x5a, 0xd0, 0x03, 0x2d, 0x8a, 0x7a, 0x43, 0x85,
 
3646
                0xb7, 0x14, 0x52, 0xe7, 0xa5, 0x65, 0x4c, 0x2c,
 
3647
                0x78, 0xb8, 0x23, 0x8c, 0xb5, 0xb4, 0x82, 0xe5,
 
3648
                0xde, 0x1f, 0x95, 0x3b, 0x7e, 0x62, 0xa5, 0x2c,
 
3649
                0xa5, 0x33, 0xd6, 0xfe, 0x12, 0x5c, 0x7a, 0x56,
 
3650
                0xfc, 0xf5, 0x06, 0xbf, 0xfa, 0x58, 0x7b, 0x26,
 
3651
                0x3f, 0xb5, 0xcd, 0x04, 0xd3, 0xd0, 0xc9, 0x21,
 
3652
                0x96, 0x4a, 0xc7, 0xf4, 0x54, 0x9f, 0x5a, 0xbf,
 
3653
                0xef, 0x42, 0x71, 0x00, 0xfe, 0x18, 0x99, 0x07,
 
3654
                0x7f, 0x7e, 0x88, 0x7d, 0x7d, 0xf1, 0x04, 0x39,
 
3655
                0xc4, 0xa2, 0x2e, 0xdb, 0x51, 0xc9, 0x7c, 0xe3,
 
3656
                0xc0, 0x4c, 0x3b, 0x32, 0x66, 0x01, 0xcf, 0xaf,
 
3657
                0xb1, 0x1d, 0xb8, 0x71, 0x9a, 0x1d, 0xdb, 0xdb,
 
3658
                0x89, 0x6b, 0xae, 0xda, 0x2d, 0x79, 0x02, 0x03,
 
3659
                0x01, 0x00, 0x01, 0xa3, 0x81, 0xa7, 0x30, 0x81,
 
3660
                0xa4, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e,
 
3661
                0x04, 0x16, 0x04, 0x14, 0xb1, 0xad, 0xe2, 0x85,
 
3662
                0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69, 0xce, 0x23,
 
3663
                0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18, 0x88, 0x39,
 
3664
                0x30, 0x75, 0x06, 0x03, 0x55, 0x1d, 0x23, 0x04,
 
3665
                0x6e, 0x30, 0x6c, 0x80, 0x14, 0xb1, 0xad, 0xe2,
 
3666
                0x85, 0x5a, 0xcf, 0xcb, 0x28, 0xdb, 0x69, 0xce,
 
3667
                0x23, 0x69, 0xde, 0xd3, 0x26, 0x8e, 0x18, 0x88,
 
3668
                0x39, 0xa1, 0x49, 0xa4, 0x47, 0x30, 0x45, 0x31,
 
3669
                0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06,
 
3670
                0x13, 0x02, 0x41, 0x55, 0x31, 0x13, 0x30, 0x11,
 
3671
                0x06, 0x03, 0x55, 0x04, 0x08, 0x13, 0x0a, 0x53,
 
3672
                0x6f, 0x6d, 0x65, 0x2d, 0x53, 0x74, 0x61, 0x74,
 
3673
                0x65, 0x31, 0x21, 0x30, 0x1f, 0x06, 0x03, 0x55,
 
3674
                0x04, 0x0a, 0x13, 0x18, 0x49, 0x6e, 0x74, 0x65,
 
3675
                0x72, 0x6e, 0x65, 0x74, 0x20, 0x57, 0x69, 0x64,
 
3676
                0x67, 0x69, 0x74, 0x73, 0x20, 0x50, 0x74, 0x79,
 
3677
                0x20, 0x4c, 0x74, 0x64, 0x82, 0x09, 0x00, 0x85,
 
3678
                0xb0, 0xbb, 0xa4, 0x8a, 0x7f, 0xb8, 0xca, 0x30,
 
3679
                0x0c, 0x06, 0x03, 0x55, 0x1d, 0x13, 0x04, 0x05,
 
3680
                0x30, 0x03, 0x01, 0x01, 0xff, 0x30, 0x0d, 0x06,
 
3681
                0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01,
 
3682
                0x01, 0x05, 0x05, 0x00, 0x03, 0x81, 0x81, 0x00,
 
3683
                0x08, 0x6c, 0x45, 0x24, 0xc7, 0x6b, 0xb1, 0x59,
 
3684
                0xab, 0x0c, 0x52, 0xcc, 0xf2, 0xb0, 0x14, 0xd7,
 
3685
                0x87, 0x9d, 0x7a, 0x64, 0x75, 0xb5, 0x5a, 0x95,
 
3686
                0x66, 0xe4, 0xc5, 0x2b, 0x8e, 0xae, 0x12, 0x66,
 
3687
                0x1f, 0xeb, 0x4f, 0x38, 0xb3, 0x6e, 0x60, 0xd3,
 
3688
                0x92, 0xfd, 0xf7, 0x41, 0x08, 0xb5, 0x25, 0x13,
 
3689
                0xb1, 0x18, 0x7a, 0x24, 0xfb, 0x30, 0x1d, 0xba,
 
3690
                0xed, 0x98, 0xb9, 0x17, 0xec, 0xe7, 0xd7, 0x31,
 
3691
                0x59, 0xdb, 0x95, 0xd3, 0x1d, 0x78, 0xea, 0x50,
 
3692
                0x56, 0x5c, 0xd5, 0x82, 0x5a, 0x2d, 0x5a, 0x5f,
 
3693
                0x33, 0xc4, 0xb6, 0xd8, 0xc9, 0x75, 0x90, 0x96,
 
3694
                0x8c, 0x0f, 0x52, 0x98, 0xb5, 0xcd, 0x98, 0x1f,
 
3695
                0x89, 0x20, 0x5f, 0xf2, 0xa0, 0x1c, 0xa3, 0x1b,
 
3696
                0x96, 0x94, 0xdd, 0xa9, 0xfd, 0x57, 0xe9, 0x70,
 
3697
                0xe8, 0x26, 0x6d, 0x71, 0x99, 0x9b, 0x26, 0x6e,
 
3698
                0x38, 0x50, 0x29, 0x6c, 0x90, 0xa7, 0xbd, 0xd9,
 
3699
                0x16, 0x03, 0x03, 0x01, 0x11, 0x0c, 0x00, 0x01,
 
3700
                0x0d, 0x03, 0x00, 0x19, 0x85, 0x04, 0x01, 0x39,
 
3701
                0xdc, 0xee, 0x44, 0x17, 0x5e, 0xdb, 0xd7, 0x27,
 
3702
                0xaf, 0xb6, 0x56, 0xd9, 0xb4, 0x43, 0x5a, 0x99,
 
3703
                0xcf, 0xaa, 0x31, 0x37, 0x0c, 0x6f, 0x3a, 0xa0,
 
3704
                0xf8, 0x53, 0xc4, 0x74, 0xd1, 0x91, 0x0a, 0x46,
 
3705
                0xf5, 0x38, 0x3b, 0x5c, 0x09, 0xd8, 0x97, 0xdc,
 
3706
                0x4b, 0xaa, 0x70, 0x26, 0x48, 0xf2, 0xd6, 0x0b,
 
3707
                0x31, 0xc9, 0xf8, 0xd4, 0x98, 0x43, 0xe1, 0x6c,
 
3708
                0xd5, 0xc7, 0xb2, 0x8e, 0x0b, 0x01, 0xe6, 0xb6,
 
3709
                0x00, 0x28, 0x80, 0x7b, 0xfc, 0x96, 0x8f, 0x0d,
 
3710
                0xa2, 0x4f, 0xb0, 0x79, 0xaf, 0xdc, 0x61, 0x28,
 
3711
                0x63, 0x33, 0x78, 0xf6, 0x31, 0x39, 0xfd, 0x8a,
 
3712
                0xf4, 0x15, 0x18, 0x11, 0xfe, 0xdb, 0xd5, 0x07,
 
3713
                0xda, 0x2c, 0xed, 0x49, 0xa0, 0x23, 0xbf, 0xd0,
 
3714
                0x3a, 0x38, 0x1d, 0x54, 0xae, 0x1c, 0x7b, 0xea,
 
3715
                0x29, 0xee, 0xd0, 0x38, 0xc1, 0x76, 0xa7, 0x7f,
 
3716
                0x2a, 0xf4, 0xce, 0x1e, 0xac, 0xcc, 0x94, 0x79,
 
3717
                0x90, 0x33, 0x04, 0x01, 0x00, 0x80, 0x0d, 0x8e,
 
3718
                0x79, 0xe6, 0x86, 0xf6, 0xb6, 0xfb, 0x6b, 0x6a,
 
3719
                0xcc, 0x55, 0xe4, 0x80, 0x4d, 0xc5, 0x0c, 0xc6,
 
3720
                0xa3, 0x9f, 0x1d, 0x39, 0xd2, 0x98, 0x57, 0x31,
 
3721
                0xa2, 0x90, 0x73, 0xe8, 0xd2, 0xcd, 0xb0, 0x93,
 
3722
                0x1a, 0x60, 0x0f, 0x38, 0x02, 0x3b, 0x1b, 0x25,
 
3723
                0x56, 0xec, 0x44, 0xab, 0xbe, 0x2e, 0x0c, 0xc0,
 
3724
                0x6e, 0x54, 0x91, 0x50, 0xd6, 0xb1, 0xa2, 0x98,
 
3725
                0x14, 0xa8, 0x35, 0x62, 0x9d, 0xca, 0xfb, 0x0f,
 
3726
                0x64, 0x2b, 0x05, 0xa0, 0xa0, 0x57, 0xef, 0xcd,
 
3727
                0x95, 0x45, 0x13, 0x5a, 0x9b, 0x3d, 0xdb, 0x42,
 
3728
                0x54, 0x7f, 0xb9, 0x17, 0x08, 0x7f, 0xb2, 0xf0,
 
3729
                0xb1, 0xc3, 0xdf, 0x67, 0x95, 0xe2, 0x73, 0xf2,
 
3730
                0x76, 0xa3, 0x97, 0xfd, 0x9c, 0x92, 0x4a, 0xdb,
 
3731
                0x95, 0x1e, 0x91, 0x95, 0xae, 0x3d, 0xae, 0x58,
 
3732
                0xb5, 0x03, 0x6f, 0x5c, 0x3a, 0x19, 0xab, 0x92,
 
3733
                0xa5, 0x09, 0x6b, 0x40, 0x61, 0xb0, 0x16, 0x03,
 
3734
                0x03, 0x00, 0x04, 0x0e, 0x00, 0x00, 0x00,
 
3735
        },
 
3736
        {
 
3737
                0x16, 0x03, 0x03, 0x00, 0x8a, 0x10, 0x00, 0x00,
 
3738
                0x86, 0x85, 0x04, 0x01, 0xba, 0xb8, 0xad, 0x69,
 
3739
                0x20, 0x5e, 0xc1, 0x61, 0xc3, 0x0f, 0xb4, 0x30,
 
3740
                0x64, 0x66, 0x70, 0x96, 0x33, 0x3c, 0x8e, 0x12,
 
3741
                0x56, 0xbf, 0x6d, 0xb8, 0x6d, 0xc6, 0xba, 0xea,
 
3742
                0xfc, 0x38, 0xc0, 0x8b, 0x87, 0xa8, 0xf3, 0x87,
 
3743
                0xa1, 0xd5, 0xb6, 0xb0, 0x72, 0xc7, 0xd4, 0x19,
 
3744
                0x56, 0xa0, 0x91, 0xe1, 0x45, 0xc7, 0xf1, 0x7d,
 
3745
                0xb0, 0x1d, 0x78, 0x18, 0xf6, 0x3d, 0xbf, 0x1a,
 
3746
                0x23, 0x93, 0x0b, 0x19, 0xb1, 0x00, 0x56, 0xc9,
 
3747
                0x5e, 0x89, 0xd4, 0x9d, 0xd9, 0x5b, 0xe0, 0xb8,
 
3748
                0xff, 0x2f, 0x7d, 0x93, 0xae, 0x5b, 0xa5, 0x1f,
 
3749
                0x1f, 0x2b, 0x09, 0xe5, 0xf6, 0x07, 0x26, 0xa3,
 
3750
                0xed, 0xcb, 0x6a, 0x1a, 0xd6, 0x14, 0x83, 0x9b,
 
3751
                0xd3, 0x9d, 0x47, 0x1b, 0xf3, 0x72, 0x5f, 0x69,
 
3752
                0x21, 0x8f, 0xfa, 0x09, 0x38, 0x1a, 0x6b, 0x91,
 
3753
                0xcf, 0x19, 0x32, 0x54, 0x58, 0x8e, 0xee, 0xaf,
 
3754
                0xeb, 0x06, 0x9b, 0x3a, 0x34, 0x16, 0x66, 0x14,
 
3755
                0x03, 0x03, 0x00, 0x01, 0x01, 0x16, 0x03, 0x03,
 
3756
                0x00, 0x28, 0xc6, 0x96, 0x67, 0x62, 0xcc, 0x47,
 
3757
                0x01, 0xb5, 0xbd, 0xb7, 0x24, 0xd3, 0xb6, 0xfd,
 
3758
                0xb8, 0x46, 0xce, 0x82, 0x6d, 0x31, 0x1f, 0x15,
 
3759
                0x11, 0x8f, 0xed, 0x62, 0x71, 0x5f, 0xae, 0xb6,
 
3760
                0xa9, 0x0c, 0x24, 0x1d, 0xe8, 0x26, 0x51, 0xca,
 
3761
                0x7c, 0x42,
 
3762
        },
 
3763
        {
 
3764
                0x16, 0x03, 0x03, 0x00, 0x72, 0x04, 0x00, 0x00,
 
3765
                0x6e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00,
 
3766
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
3767
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x65,
 
3768
                0xea, 0x8b, 0xfb, 0xef, 0xba, 0xc8, 0x88, 0x94,
 
3769
                0x44, 0x99, 0x5f, 0x02, 0x68, 0x3a, 0x12, 0x67,
 
3770
                0x7f, 0xb9, 0x39, 0x71, 0x84, 0xe0, 0x30, 0xe6,
 
3771
                0x90, 0x6c, 0xcf, 0x32, 0x29, 0x29, 0x5c, 0x5a,
 
3772
                0x8b, 0x7d, 0xaa, 0x11, 0x28, 0x26, 0xb5, 0xce,
 
3773
                0xd2, 0x88, 0xd5, 0xb0, 0x5f, 0x94, 0x37, 0xa2,
 
3774
                0x48, 0xd9, 0x53, 0xb2, 0xab, 0x59, 0x23, 0x3d,
 
3775
                0x81, 0x6e, 0x64, 0x89, 0xca, 0x1a, 0x84, 0x16,
 
3776
                0xdf, 0x31, 0x10, 0xde, 0x52, 0x7f, 0x50, 0xf3,
 
3777
                0xd9, 0x27, 0xa0, 0xe8, 0x34, 0x15, 0x9e, 0x11,
 
3778
                0xdd, 0xba, 0xce, 0x40, 0x17, 0xf3, 0x67, 0x14,
 
3779
                0x03, 0x03, 0x00, 0x01, 0x01, 0x16, 0x03, 0x03,
 
3780
                0x00, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
3781
                0x00, 0x00, 0x35, 0xcb, 0x17, 0x66, 0xee, 0xfd,
 
3782
                0x27, 0xdb, 0xb8, 0xa8, 0x8a, 0xf1, 0x56, 0x67,
 
3783
                0x89, 0x0d, 0x13, 0xac, 0xe2, 0x31, 0xb9, 0xa2,
 
3784
                0x26, 0xbb, 0x1c, 0xcf, 0xd1, 0xb2, 0x48, 0x1d,
 
3785
                0x0d, 0xb1, 0x17, 0x03, 0x03, 0x00, 0x25, 0x00,
 
3786
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xc0,
 
3787
                0x89, 0x7c, 0x58, 0x6a, 0x9b, 0x00, 0x05, 0x8c,
 
3788
                0x7f, 0x28, 0x54, 0x61, 0x44, 0x10, 0xee, 0x85,
 
3789
                0x26, 0xa8, 0x04, 0xcd, 0xca, 0x85, 0x60, 0xf2,
 
3790
                0xeb, 0x22, 0xbd, 0x9e, 0x15, 0x03, 0x03, 0x00,
 
3791
                0x1a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 
3792
                0x02, 0x10, 0xe4, 0xe5, 0xf9, 0x85, 0xe3, 0xb0,
 
3793
                0xec, 0x84, 0x29, 0x91, 0x05, 0x7d, 0x86, 0xe3,
 
3794
                0x97, 0xeb, 0xb2,
 
3795
        },
 
3796
}