
Thus, the public key is used for encryption and the private key for decryption during the handshake. The handshake itself uses asymmetric encryption – two separate keys are used, one public and one private. The handshake determines what cipher suite will be used to encrypt their communications, verifies the server, and establishes that a secure connection is in place before beginning the actual transfer of data. The Application Data Protocol is used to properly encapsulate the data coming from the Application Layer of the network stack, so it can seamlessly be handled by the underlying protocol (TCP) without forcing changes in any of those layers.Įvery SSL/TLS connection begins with a handshake - the negotiation between two parties. The supported alert descriptions depend on the SSL/TLS version. The first field indicates the severity of the alert (1 for warning, 2 for fatal), while the second field encodes the exact condition. It defines two fields: severity level and alert description. The Alert Protocol is also rather simple. The ChangeCipherSpec message signals the activation of encryption, and since encryption cannot be applied to parts of a message it is impossible for any other message to follow a ChangeCipherSpec one. The TLS protocol applies encryption to entire Record Layer messages at once. The reason why this message must be a separate protocol instead of being part of the Handshake Protocol is because of the Record Layer encapsulation. The ChangeCipherSpec Protocol is the simplest protocol. There are 10 handshake message types in the TLS specification (not counting extensions). The specification focuses primarily on this, since it handles all the machinery necessary to establish a secure connection. The Handshake Protocol is the most complex subprotocol within TLS. Bytes 3-4: Length of data in the record (excluding the header itself).Record Protocol format is a header comprised of three fields: Application Data Protocol - It takes arbitrary data (application-layer data generally) and feeds it through the secure channel.Alert Protocol - Used for communicating exceptions and indicating potential problems that may compromise security.ChangeCipherSpec Protocol - It makes the previously negotiated parameters effective, so communication becomes encrypted.This article focuses mainly on this protocol and especially on the initial handshake.


Those protocols are standardized and described by RFCs. TLS stands for Transport Layer Security and started with TLSv1 which is an upgraded version of SSLv3. SSLv2 and SSLv3 are the 2 versions of this protocol. SSL stands for Secure Sockets Layer and was originally created by Netscape. TM - for internal communication (cluster, streaming, ICAP, Sentinel/Decision Insight, and LDAP).Client Certificate Authentication for CITs and SITs.TM - for SITs using HTTPS, FTPS, and PeSIT over Secured Socket.ADMIN - for administrators accessing the Admin UI over HTTPS.


This article will provide details about the usage of SSL/TLS in SecureTransport as well as explanation of several basic concepts of security. Authentication and encryption with SSL/TLS
