Advanced Encryption Standard: Difference between revisions

From WikiMD's Wellness Encyclopedia

CSV import
 
CSV import
 
Line 1: Line 1:
<br>= Advanced Encryption Standard (AES) =
{{Infobox encryption standard
| name = Advanced Encryption Standard
| image = AES (Rijndael) Round Function.png
| caption = Diagram of the AES round function
| designers = [[Joan Daemen]] and [[Vincent Rijmen]]
| first published = 1998
| derived from = [[Rijndael]]
| key size = 128, 192, or 256 bits
| block size = 128 bits
| structure = Substitution-permutation network
| rounds = 10, 12, or 14
}}


The '''Advanced Encryption Standard''' (AES) is a symmetric encryption algorithm widely used across the globe to secure data. It was established as a standard by the U.S. National Institute of Standards and Technology (NIST) in 2001, following a rigorous selection process.
The '''Advanced Encryption Standard''' ('''AES''') is a specification for the encryption of electronic data established by the [[U.S. National Institute of Standards and Technology]] (NIST) in 2001. AES is based on the [[Rijndael]] cipher developed by two Belgian cryptographers, [[Joan Daemen]] and [[Vincent Rijmen]], who submitted a proposal to NIST during the AES selection process.


== History ==
== History ==
AES was developed to replace the Data Encryption Standard (DES), which had become vulnerable to brute-force attacks due to its relatively short key length. In 1997, NIST initiated a public competition to select a new encryption standard. The winning algorithm, Rijndael, was designed by Belgian cryptographers Vincent Rijmen and Joan Daemen. It was selected in 2000 and officially became the AES standard in 2001.
AES was announced by NIST as U.S. FIPS PUB 197 (FIPS 197) on November 26, 2001, after a five-year standardization process in which fifteen competing designs were presented and evaluated before Rijndael was selected as the most suitable.


== Algorithm Structure ==
== Design ==
AES is a block cipher, meaning it encrypts data in fixed-size blocks. The standard block size is 128 bits, and it supports key sizes of 128, 192, and 256 bits. The algorithm consists of a series of transformations that are applied to the data block in multiple rounds.
AES is a [[symmetric key algorithm]], meaning the same key is used for both encrypting and decrypting the data. It is a [[block cipher]] with a block size of 128 bits, and it supports key sizes of 128, 192, and 256 bits. The number of rounds in the encryption process depends on the key size: 10 rounds for 128-bit keys, 12 rounds for 192-bit keys, and 14 rounds for 256-bit keys.


=== Key Features ===
=== Structure ===
* '''Symmetric Key Algorithm''': AES uses the same key for both encryption and decryption.
AES operates on a 4x4 column-major order matrix of bytes, known as the state. The algorithm consists of a series of linked operations, including:
* '''Block Size''': Fixed at 128 bits.
* '''Key Sizes''': 128, 192, or 256 bits.
* '''Number of Rounds''': 10 rounds for 128-bit keys, 12 rounds for 192-bit keys, and 14 rounds for 256-bit keys.


== AES Encryption Process ==
* '''SubBytes''': A non-linear substitution step where each byte is replaced with another according to a lookup table. [[File:AES-SubBytes.svg|thumb|SubBytes step in AES]]
The AES encryption process involves several steps:
* '''ShiftRows''': A transposition step where each row of the state is shifted cyclically a certain number of steps. [[File:AES-ShiftRows.svg|thumb|ShiftRows step in AES]]
 
=== 1. Key Expansion ===
The original key is expanded into a series of round keys using a key schedule. This process involves the use of the Rijndael key schedule algorithm.
 
=== 2. Initial Round ===
* '''AddRoundKey''': Each byte of the state is combined with a block of the round key using bitwise XOR.
 
=== 3. Main Rounds ===
Each main round consists of four transformations:
* '''SubBytes''': A non-linear substitution step where each byte is replaced with another according to a lookup table (S-box).
* '''ShiftRows''': A transposition step where each row of the state is shifted cyclically a certain number of steps.
* '''MixColumns''': A mixing operation which operates on the columns of the state, combining the four bytes in each column.
* '''MixColumns''': A mixing operation which operates on the columns of the state, combining the four bytes in each column.
* '''AddRoundKey''': Each byte of the state is combined with a block of the round key using bitwise XOR.
* '''AddRoundKey''': Each byte of the state is combined with a byte of the round key using bitwise XOR.
 
=== 4. Final Round ===
The final round is similar to the main rounds but omits the MixColumns step.


== AES Decryption Process ==
The initial round key addition is followed by nine, eleven, or thirteen rounds of the four steps above, depending on the key size, with a final round that omits the MixColumns step.
The decryption process of AES is the reverse of the encryption process, using the inverse transformations:
* '''InvSubBytes''': The inverse of the SubBytes step.
* '''InvShiftRows''': The inverse of the ShiftRows step.
* '''InvMixColumns''': The inverse of the MixColumns step.
* '''AddRoundKey''': The same as in encryption.


== Security ==
== Security ==
AES is considered highly secure and is used worldwide to protect sensitive data. Its security is based on the difficulty of performing a brute-force attack due to the large key sizes. As of 2023, no practical attacks have been found that can break AES when implemented correctly.
AES is considered secure and is widely used across the globe. It 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.


== Applications ==
== Applications ==
AES is used in a variety of applications, including:
AES is used worldwide to secure data in various applications, including:
* '''Secure Communications''': Used in protocols like TLS/SSL for secure internet communications.
 
* '''Data Encryption''': Used to encrypt files, databases, and other data storage.
* [[Wi-Fi]] security (WPA2)
* '''Wireless Security''': Used in WPA2 for securing wireless networks.
* [[SSL/TLS]] protocols for secure web browsing
* [[Disk encryption]] systems
* [[Virtual private networks]] (VPNs)
 
== Also see ==
* [[Data Encryption Standard]]
* [[Block cipher modes of operation]]
* [[Cryptography]]
* [[Public-key cryptography]]


== Conclusion ==
{{Cryptography}}
The Advanced Encryption Standard is a cornerstone of modern cryptography, providing robust security for digital communications and data storage. Its adoption as a global standard underscores its importance and effectiveness in protecting information in the digital age.


== References ==
[[Category:Cryptography]]
* National Institute of Standards and Technology (NIST). "FIPS PUB 197: Advanced Encryption Standard (AES)." 2001.
[[Category:Encryption standards]]
* Daemen, Joan, and Vincent Rijmen. "The Design of Rijndael: AES - The Advanced Encryption Standard." Springer, 2002.
[[Category:National Institute of Standards and Technology]]

Latest revision as of 02:41, 11 December 2024

Template:Infobox encryption standard

The Advanced Encryption Standard (AES) is a specification for the encryption of electronic data established by the U.S. National Institute of Standards and Technology (NIST) in 2001. AES is based on the Rijndael cipher developed by two Belgian cryptographers, Joan Daemen and Vincent Rijmen, who submitted a proposal to NIST during the AES selection process.

History[edit]

AES was announced by NIST as U.S. FIPS PUB 197 (FIPS 197) on November 26, 2001, after a five-year standardization process in which fifteen competing designs were presented and evaluated before Rijndael was selected as the most suitable.

Design[edit]

AES is a symmetric key algorithm, meaning the same key is used for both encrypting and decrypting the data. It is a block cipher with a block size of 128 bits, and it supports key sizes of 128, 192, and 256 bits. The number of rounds in the encryption process depends on the key size: 10 rounds for 128-bit keys, 12 rounds for 192-bit keys, and 14 rounds for 256-bit keys.

Structure[edit]

AES operates on a 4x4 column-major order matrix of bytes, known as the state. The algorithm consists of a series of linked operations, including:

  • SubBytes: A non-linear substitution step where each byte is replaced with another according to a lookup table.
    SubBytes step in AES
  • ShiftRows: A transposition step where each row of the state is shifted cyclically a certain number of steps.
    ShiftRows step in AES
  • MixColumns: A mixing operation which operates on the columns of the state, combining the four bytes in each column.
  • AddRoundKey: Each byte of the state is combined with a byte of the round key using bitwise XOR.

The initial round key addition is followed by nine, eleven, or thirteen rounds of the four steps above, depending on the key size, with a final round that omits the MixColumns step.

Security[edit]

AES is considered secure and is widely used across the globe. It 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.

Applications[edit]

AES is used worldwide to secure data in various applications, including:

Also see[edit]