http://www.tldp.org/HOWTO/SSL-Certificates-HOWTO/x64.html
What is SSL and what are Certificates?
The Secure Socket Layer protocol was created by Netscape to ensure secure transactions between web servers and browsers. The protocol uses a third party, a Certificate Authority (CA), to identify one end or both end of the transactions. This is in short how it works.
-
A browser requests a secure page (usually https://).
-
The web server sends its public key with its certificate.
-
The browser checks that the certificate was issued by a trusted party
(usually a trusted root CA), that the certificate is still valid and that the
certificate is related to the site contacted.
-
The browser then uses the public key, to encrypt a random symmetric
encryption key and sends it to the server with the encrypted URL required as
well as other encrypted http data.
-
The web server decrypts the symmetric encryption key using its private key
and uses the symmetric key to decrypt the URL and http data.
-
The web server sends back the requested html document and http data encrypted
with the symmetric key.
- The browser decrypts the http data and html document using the symmetric key and displays the information.
Several concepts have to be understood here.
Private Key/Public Key:
The encryption using a private key/public key pair ensures that the data can
be encrypted by one key but can only be decrypted by the other key pair. This is
sometime hard to understand, but believe me it works. The keys are similar in
nature and can be used alternatively: what one key encrypts, the other key pair
can decrypt. The key pair is based on prime numbers and their length in terms of
bits ensures the difficulty of being able to decrypt the message without the key
pairs. The trick in a key pair is to keep one key secret (the private key) and
to distribute the other key (the public key) to everybody. Anybody can send you
an encrypted message, that only you will be able to decrypt. You are the only
one to have the other key pair, right? In the opposite , you can certify that a
message is only coming from you, because you have encrypted it with you private
key, and only the associated public key will decrypt it correctly. Beware, in
this case the message is not secured you have only signed it. Everybody has the
public key, remember!
One of the problem left is to know the public key of your correspondent. Usually you will ask him to send you a non confidential signed message that will contains his publick key as well as a certificate.
One of the problem left is to know the public key of your correspondent. Usually you will ask him to send you a non confidential signed message that will contains his publick key as well as a certificate.
Message-->[Public Key]-->Encrypted Message-->[Private Key]-->Message |
The Certificate:
No comments:
Post a Comment