TLS/SSL (Transport Layer Security/Secure Sockets Layer)
Transport Layer Security (TLS) and its predecessor, Secure Sockets Layer
(SSL), are cryptographic protocols which are designed to provide
communication security over the Internet. They use X.509 certificates
and hence asymmetric cryptography to assure the counterparty with whom
they are communicating, and to exchange a symmetric key. This session
key is then used to encrypt data flowing between the parties. This
allows for data/message confidentiality, and message authentication
codes for message integrity and as a by-product, message authentication.
Several versions of the protocols are in widespread use in applications
such as web browsing, electronic mail, Internet faxing, instant
messaging, and voice-over-IP (VoIP). An important property in this
context is forward secrecy, so the short term session key cannot be
derived from the long term asymmetric secret key.
As a consequence of choosing X.509 certificates, certificate authorities
and a public key infrastructure are necessary to verify the relation
between a certificate and its owner, as well as to generate, sign, and
administer the validity of certificates. While this can be more
beneficial than verifying the identities via a web of trust, the 2013
mass surveillance disclosures made it more widely known that certificate
authorities are a weak point from a security standpoint, allowing man-
In the TCP/IP model view, TLS and SSL encrypt the data of network
connections at a lower sublayer of its application layer. In OSI model
equivalences, TLS/SSL is initialized at layer 5 (the session layer) then
works at layer 6 (the presentation layer): first the session layer has a
handshake using an asymmetric cipher in order to establish cipher
settings and a shared key for that session; then the presentation layer
encrypts the rest of the communication using a symmetric cipher and that
session key. In both models, TLS and SSL work on behalf of the
underlying transport layer, whose segments carry encrypted data.
TLS is an IETF standards track protocol, first defined in 1999 and last
updated in RFC 5246 (August 2008) and RFC 6176 (March 2011). It is based
on the earlier SSL specifications (1994, 1995, 1996) developed by
Netscape Communications for adding the HTTPS protocol to their
Navigator web browser.
Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply.