AES (step-by-step)
The most common modern encryption methodInspect the encryption of AES step by step. Tap on each byte to see the bytes it depends on.
- Configuration
- AES Variants and Test Vectors
- Number of Rounds:
- S-Box
- Permutation
- Chaining:
- Initial Vector (CBC only)
- Key
- Expanded Key
- Input
- Encoding Rounds
- Encoded
- Reference
- Decoding Rounds
- Decoded
You can use this plugin to encrypt or decrypt with the Advanced Encryption Standard (AES) one or more complete blocks (so the input message length must be a multiple of 128 bit, aka 32 hex characters, which is 16 bytes). The modes supported are CBC and ECB.
What makes this plugin unique is the possibility to see how the cipher changes the bytes: If you mark a byte somewhere in the process the plugin shows all the bytes it depends on in the previous steps (backwards dependance, what influences what).
The plugin gives you access to the building blocks of AES in detail: You can change the number of rounds, the IV, and even the S-box to see how this effects the result. In addition to entering the data for the message and the key by yourself, there are several "official" AES test vectors to choose from.
The Advanced Encryption Standard (AES) is a specification for the encryption of electronic data published by the U.S. government as NIST standard in 2001. The standard comprises three block ciphers, AES-128, AES-192, and AES-256, adopted from a larger collection originally published as Rijndael.
Each AES cipher has a 128-bit block size, with key sizes of 128, 192, and 256 bits, respectively. The AES ciphers have been analyzed extensively and are now used worldwide, as was the case with its predecessor, the Data Encryption Standard (DES). (Source¹ Wikipedia)
(1) http://en.wikipedia.org/wiki/Advanced_Encryption_Standard
The security of the Advanced Encryption Standard (AES) has been analyzed extensively and no "real" flaw has been found (Source¹ Wikipedia).
This means, that at present, there is no known practical attack on the encryption algorithm itself that would allow someone without knowledge of the key to read data encrypted by AES when correctly implemented. So only side-channel attacks or attacks working with manipulated random-number generators or attacks which grap the key or the plaintext before the encryption was applied may successfully reveal the key or the plaintext.
Some more details didactically prepared about the concepts of security in general and about theoretical attacks against AES can be fould in chapter 1 of the CrypTool Book (Source² CrypTool Book).
(1) http://en.wikipedia.org/wiki/Advanced_Encryption_Standard
(2) https://www.cryptool.org/download/ctb/CT-Book-en.pdf