The Advanced Encryption Standard (AES) is a symmetric-key algorithm and specification used by the U.S. government and others to encrypt electronic data. AES is based on the Rijndael cipher and operates by transforming plaintext input into ciphertext output using encryption keys and multiple processing rounds. The number of rounds depends on the key size, with 10 rounds for 128-bit keys, 12 rounds for 192-bit keys, and 14 rounds for 256-bit keys.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
19 views
Advanced Encryption Standard
The Advanced Encryption Standard (AES) is a symmetric-key algorithm and specification used by the U.S. government and others to encrypt electronic data. AES is based on the Rijndael cipher and operates by transforming plaintext input into ciphertext output using encryption keys and multiple processing rounds. The number of rounds depends on the key size, with 10 rounds for 128-bit keys, 12 rounds for 192-bit keys, and 14 rounds for 256-bit keys.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5
Advanced Encryption Standard
Advanced Encryption Standard
(Rijndael)
Best public cryptanalysis
Attacks have been published that are computationally faster than a full brute-force attack, though none as of 2013 are computationally feasible.[1] For AES-128, the key can be recovered with a computational complexity of 2126.1 using the biclique attack. For biclique attacks on AES-192 and AES-256, the computational complexities of 2189.7 and 2254.4 respectively apply. Related-key attacks can break AES-256 and AES-192 with complexities 299.5 and 2176 in both time and data, respectively.[2] The Advanced Encryption Standard (AES), also known by its original name Rijndael (Dutch pronunciation: [ˈrɛindaːl]),[3] is a specification for the encryption of electronic data established by the U.S. National Institute of Standards and Technology (NIST) in 2001.[4] AES is a subset of the Rijndael block cipher[3] developed by two Belgian cryptographers, Vincent Rijmen and Joan Daemen, who submitted a proposal[5] to NIST during the AES selection process.[6] Rijndael is a family of ciphers with different key and block sizes. For AES, NIST selected three members of the Rijndael family, each with a block size of 128 bits, but three different key lengths: 128, 192 and 256 bits. AES has been adopted by the U.S. government. It supersedes the Data Encryption Standard (DES),[7] which was published in 1977. The algorithm described by AES is a symmetric-key algorithm, meaning the same key is used for both encrypting and decrypting the data. In the United States, AES was announced by the NIST as U.S. FIPS PUB 197 (FIPS 197) on November 26, 2001.[4] This announcement followed a five-year standardization process in which fifteen competing designs were presented and evaluated, before the Rijndael cipher was selected as the most suitable (see Advanced Encryption Standard process for more details). AES is included in the ISO/IEC 18033-3 standard. AES became effective as a U.S. federal government standard on May 26, 2002, after approval by the U.S. Secretary of Commerce. AES is available in many different encryption packages, and is the first (and only) publicly accessible cipher approved by the U.S. National Security Agency (NSA) for top secret information when used in an NSA approved cryptographic module (see Security of AES, below). AES is based on a design principle known as a substitution–permutation network, and is efficient in both software and hardware.[9] Unlike its predecessor DES, AES does not use a Feistel network. AES is a variant of Rijndael, with a fixed block size of 128 bits, and a key size of 128, 192, or 256 bits. By contrast, Rijndael per se is specified with block and key sizes that may be any multiple of 32 bits, with a minimum of 128 and a maximum of 256 bits. AES operates on a 4 × 4 column-major order array of bytes, termed the state.[note 3] Most AES calculations are done in a particular finite field. For instance, 16 bytes, are represented as this two- dimensional array: The key size used for an AES cipher specifies the number of transformation rounds that convert the input, called the plaintext, into the final output, called the ciphertext. The number of rounds are as follows: 10 rounds for 128-bit keys. 12 rounds for 192-bit keys. 14 rounds for 256-bit keys. Each round consists of several processing steps, including one that depends on the encryption key itself. A set of reverse rounds are applied to transform ciphertext back into the original plaintext using the same encryption key. High-level description of the algorithm 1.KeyExpansion – round keys are derived from the cipher key using the AES key schedule. AES requires a separate 128-bit round key block for each round plus one more. 2.Initial round key addition: 1. AddRoundKey – each byte of the state is
combined with a byte of the round key
using bitwise xor. 3.9, 11 or 13 rounds: 1. SubBytes – a non-linear substitution step
where each byte is replaced with another
according to a lookup table. 2.ShiftRows – a transposition step where the last three rows of the state are shifted cyclically a certain number of steps. 3.MixColumns – a linear mixing operation which operates on the columns of the state, combining the four bytes in each column. 4.AddRoundKey 4.Final round (making 10, 12 or 14 rounds in total): 1.SubBytes 2.ShiftRows 3.AddRoundKey