Skip to main content
Stack Overflow Jobs powered by Indeed: A job site that puts thousands of tech jobs at your fingertips (U.S. only). Search jobs

SSL (Secure Sockets Layer) and its successor TLS (Transport Layer Security) are protocols which provide communication security (privacy and integrity) for a bidirectional data channel.

SSL/TLS are usually used on top of a transport layer protocol like TCP, either below or integrated in an application layer protocol (like HTTP, POP3, FTP).

During connection startup a handshake occurs, in which the partners negotiate a cipher suite (combination of key exchange, encryption, MAC algorithms and a pseudorandom function), then use the key exchange algorithm to create a shared secret. Depending on the Cipher suite, this may include sending and validating a certificate containing a public key, and encrypting or signing some data using this key, thereby authenticating at least the server, optionally also the client.

After the handshake everything which will be sent is encrypted and integrity-protected.