Data Encryption Standard and Advanced Encryption Standard
The Data Encryption Standard (DES) and Advanced Encryption Standard (AES) are symmetric-key algorithms used to encrypt and decrypt data, with AES offering stronger security and efficiency than DES.
5 slides · 4 min read · Domain 3
Modern computer cryptography began in the 1960s, when companies, especially financial institutions, needed secure methods to transmit information but lacked a standard.
In 1972, the National Institute of Standards and Technology (NIST) assisted in the development of a cryptographic algorithm for sensitive, though unclassified, data. By 1974, it selected IBM's submission, Data Encryption Standard (DES). DES was finally adopted in 1977 as a federal standard for unclassified documents.
By 1999 it was clear that efforts to improve DES (such as 3DES, which was retired in 2023) were failing to provide secure and reliable encryption, principally due to its short key length. NIST sponsored the Advanced Encryption Standard (AES) competition in 2000 to find an algorithm that could replace DES. Many candidate algorithms were submitted and subjected to rigorous testing. In November 2001, NIST published FIPS 197, approving a variant of the Rijndael algorithm for use by U.S. government systems. It remains the first and only publicly published cryptographic algorithm for use by the public that can also be used to protect classified data up to the top-secret level in U.S. government and military systems.
- Blowfish is another example of a symmetric algorithm developed by Schneier. Blowfish is considered an extremely fast cipher, and one of its extremely useful advantages is that it requires very little system memory. It is also a Feistel-type cipher in that it divides the input blocks into two halves and then uses them in XORs against each other. However, it varies from the traditional Feistel ciphers in that Blowfish does work against both halves, not just one. The Blowfish algorithm operates with variable key sizes, from 32 bits up to 448 bits on 64-bit input and output blocks.
The DES and AES competitions, and the tremendous explosion in open, published research and experimentation in cryptography, led to many algorithms being developed and used. Notable algorithms include:
- Rivest Cipher 6 (RC6) is a block cipher based on RC5 and, just like its predecessor, it is a variable parameterized algorithm where the block size, key size, and number of rounds are variable. The upper limit on the key size is 2040 bits, which experts agree should make it strong for many years.
- Twofish was one of the finalists for the AES competition. It is an adapted version of Blowfish developed by a team of cryptographers led by Bruce Schneier. It can operate with keys of 128, 192, or 256 bits on blocks of 128 bits. Just like DES, it performs 16 rounds during the encryption and decryption process.
- Rivest Cipher 4 (RC4), a stream-based cipher, was developed in 1987 by Rivest for RSA Data Security. RC4 quickly became one of the most widely used stream ciphers, being deployed, for example, in Wired Equivalent Privacy (WEP) and Secure Sockets Layer/ Transport Layer Security (SSL/TLS). It was originally believed that using RC4 with a key length of at least 128 bits meant that there were no practical ways to attack it. This was based in part on many published attacks (prior to 2015), which focused more on implementation weaknesses than on the cipher algorithm and design itself. However, by February 2015, the Internet Engineering Task Force (IETF) published RFC 7465 as a proposed standard and banned use of RC4 in TLS, and it is being removed from many organizations' systems as a result.
- International Data Encryption Algorithm (IDEA) was developed as a replacement for DES by Xuejia Lai and James Massey in 1991. It is considered the first attempt to come up with something that could be used to replace DES, and indeed, the first attempt to use a key size longer than 56 bits. IDEA uses a 128-bit key and operates on 64bit blocks.
- Rivest Cipher 5 (RC5) is a fast block cipher designed by Ron Rivest. The algorithm was designed to be used in existing security products and in a number of internet protocols. It was explicitly designed to be simple to implement in software; therefore, the algorithm does not support any type of bit permutations. Today's RC5 is a parameterized algorithm with a variable block size, variable key size, and variable number of rounds. Allowable choices for the block size are 32, 64, and 128 bits. The number of rounds can range anywhere from 0 to 255, while the key can range from 0 bits to 2040 bits in size.
- CAST was developed in 1996 by Carlisle Adams and Stafford Tavares (whose initials form the acronym CAST). CAST-128, also known as CAST5, is a Feistel-type block cipher with 64-bit blocks. CAST-256 was submitted as an unsuccessful candidate for the AES competition. CAST-256 operates on 128-bit blocks and with keys of 128, 192, 160, 224, and 256 bits. It performs 48 rounds and is described in RFC 2612. Although still in use, CAST has been vulnerable to known-plaintext and related-key attacks.
- Secure and Fast Encryption Routine (SAFER) algorithms are patent-free. The algorithms were developed by James Massey and work on either 64-bit input blocks (SAFER-SK64) or 128-bit blocks (SAFER-SK128). A variation of SAFER is used as a block cipher in Bluetooth.
