| |
| |
| Keys and Certificates |
SSL provides mechanisms for both encryption and authentication:
- Keys consist of very large numbers used in mathematical encryption formulas called
ciphers.
In public key cryptography, every entity must have two keys, a public key and a
private
key. The public key is for encryption, and the private key is for decryption. In symmetric
cryptography, only one key is required for both encryption and decryption.
- Certificates are public files that contain an entity's public key, identifying
information, and a signature made by a Certification Authority (CA).
CAs are trusted third parties that can verify the identity of an entity and then issue a
certificate. The certificate is "signed" with the CA's private key. Any other entity can check the
signature by decrypting it with the CA's public key.
Encryption is the encoding of data in order to hide its content from everyone
except its intended recipient. The mathematical algorithms used to encrypt data
are called ciphers. Ciphers fall into two categories:
A host publishes its public key so that anyone can use it to encrypt material
directed to that host. The host uses its private key to decrypt the material,
and guards this key carefully.
Symmetric cryptography requires only one key. Under
this scheme, the sender and the recipient share the same key and use it for both
encryption and decryption.
In order for two parties to share the same key, one must communicate it to the
other privately. To do so, they use a public key algorithm to encrypt the
symmetric key in a way that only a specific recipient can decipher.
Symmetric algorithms are faster than asymmetric ones, but asymmetric algorithms
are required to maintain privacy during the exchange of the faster symmetric
keys. To preserve both efficiency and privacy, secure Web transactions begin
with a public key exchange, followed by the exchange of a session
key that follows a faster, symmetric algorithm.
A secure session begins when a client submits a request for a secured file. The server responds by
sending its certificate, which contains its public key. After checking the signature on the
certificate, the client generates a session key and sends it to the server:

A session may last for one or many transactions, and a session key encrypts the
entire session. Each time a new session begins, the client generates a new
session key. Once a session is closed, for example, a server administrator cannot use the session key
to decrypt the client's
subsequent sessions with other servers. Each individual session can only be decrypted by the two
parties that are exchanging information. However, this depends heavily on the strength of the cipher
they are using
Some ciphers are
considered ``weak'' because they can be deciphered using common computing
equipment. Ciphers are considered ``strong'' when they cannot be deciphered
without an unreasonable investment of time or resources.
Some ciphers, such as DES-CBC3-MD5, have never been broken, at least not
publicly. Cryptographers continuously test and scrutinize ciphers, and
occasionally succeed in breaking a cipher that was formerly considered
unbreakable. By seeking and publicizing weaknesses in ciphers, cryptographers
can alert the public to security risks that were previously unknown. They can
also find ways to improve ciphers or create stronger ones.
The security of a cipher depends on the size of the key it uses, its
endurance under the scrutiny of cryptographers, and the complexity of its
mathematical algorithm.
|
Cipher
|
Security
|
Description
|
|
DESCBC3MD5,
DESCBC3SHA
|
High
|
These are well-proven, 168-bit, triple-encryption ciphers. Use these for the
highest degree of security.
|
|
RC4MD5,
RC2CBCMD5
|
Moderate
|
These ciphers use 128-bit keys, which normally offer a high degree of security.
However, they are considered only moderately secure because they have not been
thoroughly tested by cryptanalysts.
|
|
DESCBCMD5,
DESCBCSHA
|
Moderate
|
These are moderately secure, 56-bit ciphers.
|
|
EXPRC4MD5,
EXPRC2CBCMD5
|
Low
|
These are 40-bit ciphers similar to those used by browsers that comply with US
export regulations. They are included for communication with export-crippled
servers, but they are not recommended.
|
The ciphers used by browsers exported from the United States are weakened to
comply with export regulations. Servers exported from the US are also limited to
weak encryption. If you use Netscape Navigator or Microsoft Internet Explorer,
your browser probably uses EXPRC4MD5, a low-security cipher. US residents can obtain the full-strength
versions of Netscape or Explorer, but they are still limited to weak ciphers
every time they connect
to an export-crippled server.
|
|
|
|
|
| |
Today you hear much talk of absolutes ... that one is good and one is evil, and good and evil cannot exist in the world... Good and evil have existed in this world since [creation].
The proper search is for limited ends which soon enough educate us in the complexities of the tasks which face us. That is what all of us must learn to do in the United States; to limit objectives, to get ourselves away from the search for the absolute, to find out what is within our powers.... We must respect our opponents. We must understand that for a long, long period of time they will continue to believe as they do, and that for a long, long period of time we will both inhabit this spinning ball in the great void of the universe.
-Dean Acheson
|
|
|