Safari's handshake when opening https://localhost/:
<<< TLS 1.0 Handshake [length 0097], ClientHello
01 00 00 93 03 01 4d e6 bc b3 73 33 d3 ab e1 81
8f e6 a6 3a db 19 87 73 c9 4b 5d a5 95 a8 bb 04
13 16 c0 ac a8 fb 00 00 46 c0 0a c0 09 c0 07 c0
08 c0 13 c0 14 c0 11 c0 12 c0 04 c0 05 c0 02 c0
03 c0 0e c0 0f c0 0c c0 0d 00 2f 00 05 00 04 00
35 00 0a 00 09 00 03 00 08 00 06 00 32 00 33 00
38 00 39 00 16 00 15 00 14 00 13 00 12 00 11 01
00 00 24 00 00 00 0e 00 0c 00 00 09 6c 6f 63 61
6c 68 6f 73 74 00 0a 00 08 00 06 00 17 00 18 00
19 00 0b 00 02 01 00
>>> TLS 1.0 Handshake [length 004a], ServerHello
02 00 00 46 03 01 4d e6 bc b3 c9 e5 bc 1a 7c bb
fb 67 75 2f a8 91 e0 31 5d 62 37 cc 5a 68 22 ac
1a 30 fa 6d 19 c3 20 14 4f 1f b6 aa 79 99 f3 6d
48 b5 08 ee 05 70 a6 32 cd 9e 6b 0b c5 22 0f 73
57 b5 0b e1 27 f2 fe 00 2f 00
>>> TLS 1.0 Handshake [length 02fd], Certificate
0b 00 02 f9 00 02 f6 00 02 f3 30 82 02 ef 30 82
02 58 a0 03 02 01 02 02 09 00 a9 a5 d5 76 6c 37
4f 54 30 0d 06 09 2a 86 48 86 f7 0d 01 01 05 05
00 30 59 31 0b 30 09 06 03 55 04 06 13 02 41 55
31 13 30 11 06 03 55 04 08 13 0a 53 6f 6d 65 2d
53 74 61 74 65 31 21 30 1f 06 03 55 04 0a 13 18
49 6e 74 65 72 6e 65 74 20 57 69 64 67 69 74 73
20 50 74 79 20 4c 74 64 31 12 30 10 06 03 55 04
03 13 09 6c 6f 63 61 6c 68 6f 73 74 30 1e 17 0d
31 31 30 36 30 31 32 30 30 32 34 37 5a 17 0d 31
31 30 36 30 32 32 30 30 32 34 37 5a 30 59 31 0b
30 09 06 03 55 04 06 13 02 41 55 31 13 30 11 06
03 55 04 08 13 0a 53 6f 6d 65 2d 53 74 61 74 65
31 21 30 1f 06 03 55 04 0a 13 18 49 6e 74 65 72
6e 65 74 20 57 69 64 67 69 74 73 20 50 74 79 20
4c 74 64 31 12 30 10 06 03 55 04 03 13 09 6c 6f
63 61 6c 68 6f 73 74 30 81 9f 30 0d 06 09 2a 86
48 86 f7 0d 01 01 01 05 00 03 81 8d 00 30 81 89
02 81 81 00 bb 8f 88 c5 a7 df f1 ea e1 c3 06 a4
6f 6a be f1 23 0d 23 b3 16 bd 12 d0 87 b5 ae 4a
51 18 27 83 aa 71 38 fe 56 07 fc 28 fa d9 94 b2
7b 39 79 1b e1 23 4e c4 2d cb d8 e4 b5 47 17 11
75 0b 19 1e 3b ef 23 f1 13 84 d1 c4 de 2c bd ad
c7 e3 6a 59 c7 5d 4f 08 51 9e cb 82 a9 1b e6 72
20 af 09 31 ef c5 b0 c9 84 1c 1d 25 4c 11 e2 6d
54 4d ae 91 a1 23 cc 37 0e 97 b2 d0 65 f6 65 02
6b 2b b5 bd 02 03 01 00 01 a3 81 be 30 81 bb 30
1d 06 03 55 1d 0e 04 16 04 14 77 96 cd bf 26 e4
9f 18 02 01 9e f5 05 6b ba 9d e7 0d 60 b1 30 81
8b 06 03 55 1d 23 04 81 83 30 81 80 80 14 77 96
cd bf 26 e4 9f 18 02 01 9e f5 05 6b ba 9d e7 0d
60 b1 a1 5d a4 5b 30 59 31 0b 30 09 06 03 55 04
06 13 02 41 55 31 13 30 11 06 03 55 04 08 13 0a
53 6f 6d 65 2d 53 74 61 74 65 31 21 30 1f 06 03
55 04 0a 13 18 49 6e 74 65 72 6e 65 74 20 57 69
64 67 69 74 73 20 50 74 79 20 4c 74 64 31 12 30
10 06 03 55 04 03 13 09 6c 6f 63 61 6c 68 6f 73
74 82 09 00 a9 a5 d5 76 6c 37 4f 54 30 0c 06 03
55 1d 13 04 05 30 03 01 01 ff 30 0d 06 09 2a 86
48 86 f7 0d 01 01 05 05 00 03 81 81 00 24 08 d3
ec 25 4c 41 34 dc 59 c7 22 b1 27 fb 62 f3 0a 34
63 c9 ed ce 73 4b 65 78 b1 12 59 f3 7c 23 ae 7e
87 60 bb f0 60 1b 57 61 e6 a5 f8 a0 e3 67 a7 30
d7 81 7c 45 c4 08 12 18 a6 b3 e0 a3 ba 89 6b 54
5c e8 f8 95 40 9b ea 15 02 c6 22 a1 2a 99 0d 08
71 f6 74 de 3a 1c 96 98 b3 7d 78 8c 1d c0 77 0d
9f f2 61 48 c4 cc 42 7b aa cb 35 fc e8 b2 b1 6e
77 66 c6 4b e0 d0 1c c1 28 da f6 8a a8
>>> TLS 1.0 Handshake [length 0004], ServerHelloDone
0e 00 00 00
<<< TLS 1.0 Handshake [length 0086], ClientKeyExchange
10 00 00 82 00 80 76 03 dd 52 ee b1 9c cc 73 76
d7 14 e9 34 55 94 72 a9 88 f8 8a 8b 33 77 c2 fc
de de c1 c1 fc 21 ba 1b 98 a8 b9 4e 9d 74 59 ee
5f 25 d6 9f f7 19 e9 65 b1 c4 94 cf b2 8d a2 d9
b1 2a f1 91 5f 2a 6d 0b fb 51 93 6c 16 ba 3b 59
88 9c 0f 4e fa 15 d0 55 ed 53 82 da f3 bb 4e 66
41 f8 1c 0d d9 69 2e 11 4d c9 2c 1c 40 33 d0 f9
36 15 90 8c 58 09 f5 7d d1 f3 a2 42 cc 79 bd 5e
b2 c7 c0 04 6c d1
<<< TLS 1.0 ChangeCipherSpec [length 0001]
01
<<< TLS 1.0 Handshake [length 0010], Finished
14 00 00 0c 67 7d d3 c0 15 19 fa 2e 6b b0 b5 4d
>>> TLS 1.0 ChangeCipherSpec [length 0001]
01
>>> TLS 1.0 Handshake [length 0010], Finished
14 00 00 0c 1c a8 3c 68 b2 97 fe ca 43 f1 7e 3c
GET / HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_6; en-us) AppleWebKit/533.19.4 (KHTML, like Gecko) Version/5.0.3 Safari/533.19.4
Accept: application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: en-us
Accept-Encoding: gzip, deflate
Connection: keep-alive
In the same Safari browser instance, directly after navigating to https://localhost/ opening a WebSocket results in a TLS handshake:
<<< TLS 1.0 Handshake [length 0085], ClientHello
01 00 00 81 03 01 4d e6 bd 88 91 d0 ab 0e e5 e5
4e 0f 1a 51 16 bc f8 cb 1c 91 ed 45 e4 c4 c5 f2
ae b2 00 bd 6a f5 20 14 4f 1f b6 aa 79 99 f3 6d
48 b5 08 ee 05 70 a6 32 cd 9e 6b 0b c5 22 0f 73
57 b5 0b e1 27 f2 fe 00 26 00 2f 00 05 00 04 00
35 00 0a 00 09 00 03 00 08 00 06 00 32 00 33 00
38 00 39 00 16 00 15 00 14 00 13 00 12 00 11 01
00 00 12 00 00 00 0e 00 0c 00 00 09 6c 6f 63 61
6c 68 6f 73 74
>>> TLS 1.0 Handshake [length 004a], ServerHello
02 00 00 46 03 01 4d e6 bd 8d 47 96 40 27 f2 a5
cb cc 1b 58 e2 fc 81 1b 3b e6 bb 39 42 a0 e4 2a
ca ff dd fb 4b 7a 20 14 4f 1f b6 aa 79 99 f3 6d
48 b5 08 ee 05 70 a6 32 cd 9e 6b 0b c5 22 0f 73
57 b5 0b e1 27 f2 fe 00 2f 00
>>> TLS 1.0 ChangeCipherSpec [length 0001]
01
>>> TLS 1.0 Handshake [length 0010], Finished
14 00 00 0c 29 92 09 96 e4 88 e6 b8 7a ee 9c ed
<<< TLS 1.0 ChangeCipherSpec [length 0001]
01
<<< TLS 1.0 Handshake [length 0010], Finished
14 00 00 0c d7 0e 76 27 b5 c4 03 99 3a ab b1 05
-----BEGIN SSL SESSION PARAMETERS-----
MIGCAgEBAgIDAQQCAC8EIBRPH7aqeZnzbUi1CO4FcKYyzZ5rC8UiD3NXtQvhJ/L+
BDAP9mXvA+HoJJzFjCXcxjOQPWlA6vOPsYEb2fdVIfqR/BBvrVWosWgGzS4SMokl
1HShBgIETea8s6IEAgIBLKQGBAQBAAAApgsECWxvY2FsaG9zdA==
-----END SSL SESSION PARAMETERS-----
Shared ciphers:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-ECDSA-RC4-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-RSA-RC4-SHA:ECDHE-RSA-DES-CBC3-SHA:ECDH-ECDSA-AES128-SHA:ECDH-ECDSA-AES256-SHA:ECDH-ECDSA-RC4-SHA:ECDH-ECDSA-DES-CBC3-SHA:ECDH-RSA-AES128-SHA:ECDH-RSA-AES256-SHA:ECDH-RSA-RC4-SHA:ECDH-RSA-DES-CBC3-SHA:AES128-SHA:RC4-SHA:RC4-MD5:AES256-SHA:DES-CBC3-SHA:DES-CBC-SHA:EXP-RC4-MD5:EXP-DES-CBC-SHA:EXP-RC2-CBC-MD5:DHE-DSS-AES128-SHA:DHE-RSA-AES128-SHA:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:EDH-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC-SHA:EXP-EDH-RSA-DES-CBC-SHA:EDH-DSS-DES-CBC3-SHA:EDH-DSS-DES-CBC-SHA:EXP-EDH-DSS-DES-CBC-SHA
CIPHER is AES128-SHA
Reused session-id
GET / HTTP/1.1
Upgrade: WebSocket
Connection: Upgrade
Host: localhost
Origin: https://localhost
Sec-WebSocket-Key1: 1 89b 3o 1 5 e5 B59 4
Sec-WebSocket-Key2: .3a10 HCJ4h"75B Q 28>4 0
…T J»´