Secure Sockets Layer

From Clinfowiki
Jump to: navigation, search

Secure Sockets Layer (SSL) is a cryptographic protocol for transmitting private documents via the Internet. It ensures secure web browsing, email, instant messaging, and other applications. SSL is primarily used between a browser and a web server, or client/server. SSL encryption protocols require both entities to establish a shared encryption variable(s), an encryption key which is public, and a decryption key which is private. The client server handshake takes several steps:

  1. Client Hello – client sends server information on how to communicate, SSL version and other settings
  2. Server Hello – reconciles SSL Version number, settings, etc. and sends the Server Certificate, or Public Key
  3. Authentication – client authenticates server key, encrypts the public key and sends the encrypted secret back to the server
  4. Server uses private key to decrypt the secret and client/server generate master secret with agreed cipher
  5. Generate Session Keys – both client and server use master secret to generate session keys, which are used to encrypt and decrypt during the session
  6. Encryption with key session – client and server exchange message to confirm that future messages are encrypted, and the secure session is established.

History

Both Secure Sockets Layer (SSL) and its successor, Transport Layer Security (TLS), were developed by Netscape. They have been adopted for protection of data in transit that encompasses all network services that use TCP/IP to support typical application tasks of communication between servers and clients.