AES, short for Advanced Encryption Standard, is the block cipher used to encrypt all electronic data of the government of the United States. Since 2001, it has been used to protect any sensitive data from leaking to the public and landing onto unauthorized hands.
Before its conception, the encryption algorithm being used by the government is the Data Encryption Standard. But through the years, it has become a victim to numerous brute attacks. These attacks have grown in multiple folds to the extent that the U.S. National Institute of Standards and Technology decided that they needed a new cipher in 1997. They called on the public to submit their designs.
Out of all the submissions, five were handpicked – MARS by IBM; RC6 by RSA Security; Twofish by Schneier and other researchers; Serpent by Anderson, Biham and Knudsen; and Rijndael by Daeman and Rijmen. After careful analysis, they decided that Rijndael is the most superior. It has proven to be reliable in adapting to different programming languages, generating the key for encryption and decryption, and resisting external attacks. Most importantly, it is efficient.
The Rijndael the government chose to form the AES is the one with a block size of 128 bits although it could operate in all 128, 192 and 256 bit lengths. It’s a combination of substitution and permutation. Every encryption is processed in 10 rounds. Each of these processes happens in four steps – substitution, permutation, mixing and adding the round key. These steps occupy the first four bytes of a round, working on the input state array. Once done, it will produce the output state array.
The government tested the algorithm over a span of two years. By 2003, they deemed it suitable to be used in all classified information. Over time, it became the default encryption algorithm.