Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Transport Layer Security
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
====Handshake protocol==== Most messages exchanged during the setup of the TLS session are based on this record, unless an error or warning occurs and needs to be signaled by an Alert protocol record (see below), or the encryption mode of the session is modified by another record (see ChangeCipherSpec protocol below). {|class="wikitable"style=width:95%;text-align:center |+TLS record format for handshake protocol |- !scope=col|Offset !scope=col style=width:22%|Byte+0 !scope=col style=width:22%|Byte+1 !scope=col style=width:22%|Byte+2 !scope=col style=width:22%|Byte+3 |- !scope=row|Byte<br />0 |style=background:#dfd|22 |colspan=3{{N/A}} |- !scope=row rowspan=2|Bytes<br />1β4 |colspan=2 style=background:#fdd|Legacy version |colspan=2 style=background:#fdd|Length |-style=background:#fdd |''(Major)'' |''(Minor)'' |''(bits 15β8)'' |''(bits 7β0)'' |- !scope=row rowspan=2|Bytes<br />5β8 |rowspan=2|Message type |colspan=3|Handshake message data length |-style=font-size:90%;line-height:1.2 |''(bits 23β16)'' |''(bits 15β8)'' |''(bits 7β0)'' |- !scope=row|Bytes<br />9β(''n''β1) |colspan=4|Handshake message data |- !scope=row rowspan=2|Bytes<br />''n''β(''n''+3) |rowspan=2 style=background:#fdd|Message type |colspan=3 style=background:#fdd|Handshake message data length |-style=background:#fdd |''(bits 23β16)'' |''(bits 15β8)'' |''(bits 7β0)'' |- !scope=row|Bytes<br />(''n''+4)β |colspan=4 style=background:#fdd|Handshake message data |} ;Message type :This field identifies the handshake message type. {|class=wikitable |+Message types |- !scope=col|Code !scope=col|Description |- !scope=row|0 |HelloRequest |- !scope=row|1 |ClientHello |- !scope=row|2 |ServerHello |- !scope=row|4 |NewSessionTicket |- !scope=row|8 |EncryptedExtensions (TLS 1.3 only) |- !scope=row|11 |Certificate |- !scope=row|12 |ServerKeyExchange |- !scope=row|13 |CertificateRequest |- !scope=row|14 |ServerHelloDone |- !scope=row|15 |CertificateVerify |- !scope=row|16 |ClientKeyExchange |- !scope=row|20 |Finished |} ;Handshake message data length :This is a 3-byte field indicating the length of the handshake data, not including the header. Note that multiple handshake messages may be combined within one record.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)