Symmetric Key Algorithms

Symmetric key algorithms are used for the bulk encryption of data or data streams. These algorithms are designed to be very fast and (usually) have a large number of possible keys. The best symmetric key algorithms offer near-perfect secrecy: once data is encrypted with a given key, there is no way to decrypt the data without possessing the same key.

Symmetric key algorithms can be divided into two categories: block and stream. Block algorithms encrypt data one block at a time, while stream algorithms encrypt byte by byte.

There are many symmetric key algorithms in use today.[55] Some of the algorithms that are commonly encountered in the field of web security are summarized in the following list:

DES

The Data Encryption Standard was adopted as a U.S. government standard in 1977 and as an ANSI standard in 1981. The DES is a block cipher that uses a 56-bit key and has several different operating modes depending on the purpose for which it is employed. The DES is a strong algorithm, but it is conjectured that a machine capable of breaking a DES-encrypted message in a few hours can be built for under $1 million. Such machines probably exist, although no government or corporation officially admits to having one.

DESX

DESX is a simple modification to the DES algorithm that is built around two “whitening” steps. These steps appear to improve the security of the algorithm dramatically, effectively rendering key search impossible. Further information about DESX can ...

Get Web Security and Commerce now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.