SSL is an abbreviation
for Secure Sockets Layer, a protocol that provides network data privacy,
data integrity, and authentication. Developed by Netscape Communications,
SSL uses encryption algorithms that include RC2, RC4, DES, TripleDES,
AES, and others.
SSL uses X.509 certificates
and hence asymmetric cryptography to assure the party with whom they
are communicating, and to exchange a symmetric 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.
In addition to providing
encryption services, SSL performs client and server authentication,
and it uses message authentication codes to ensure data integrity.
The client requests a certificate from the server, which it compares
to the certificate that the client stores locally. The client then
verifies the identity of the server and negotiates with the server
to select a cipher (encryption method). The cipher that is selected
is the first match between the ciphers that are supported on both
the client and the server. All subsequent data transfers for the current
request are then encrypted with the selected encryption method.
SSL uses encryption
algorithms that include RC2, RC4, DES, TripleDES, and AES.
SSL is supported by
Internet Explorer and Firefox. Many websites use the protocol to protect
confidential user information, such as credit card numbers. The SSL
protocol is application independent and allows protocols such as HTTP,
FTP, and Telnet to be transparently layered above it. SSL is optimized
for HTTP. SSL includes software that was developed by the OpenSSL
Project for use in the OpenSSL Toolkit. For more information see
OpenSSL.
Note: Transport Layer Security (TLS) is the successor to SSL
3.0. The Internet Engineering Task Force (IETF) took SSL 3.0, the
de facto standard, modified it, renamed it TLS V1.0, and adopted it
as a standard.