Secure Sockets Layer (SSL)

How SSL Works

Encryption: Asymmetric Cryptography

Digests and Digital Signatures

Authenticaton: Certificates

Authentication mechanism:

SSL Handshake -- what the client (usually a browser) and the server actually do:

  1. Client sends client's SSL version number and other info needed by the server to communicate using SSL.

  2. Server sends similar info. It also sends its certificate.

  3. Client authenticates the server as seen above.

  4. Client creates a premaster secret for the session. It encrypts it with the server's public key and sends it to the server.

  5. Server decrypts the premaster secret with its private key.

  6. Both client and server perform certain operations on the premaster secret to generate a master secret.

  7. From this master secret, they both generate the session keys. These are symmetric keys that will be used to encrypt and decrypt information exchanged during the SSL session.

  8. Client sends message informing the server that all future messages will be encrypted with the session key.

  9. Server does likewise.

  10. The SSL handshake is complete. The browser displays the secure session symbol. All future communications between client and server are encrypted using the session keys.

Glossaries of Security Terminology