AES Encrypt & Decrypt Online
Online tool to perform encryption and decryption using AES algorithm
About AES
AES (Advanced Encryption Standard) is a symetric-key encryption standard adpoted by U.S. government. As a subset of Rijndael cipher, it consists of 3 cipher blocks: AES-128, AES-192, and AES-256. Each blocks has a size of 128-bit, with key size of 128-bit, 192-bit and 256-bit respectively.
The algorithm consists of these steps:
- KeyExpansions
- InitialRound
- AddRoundKey
- Rounds - There are 10, 12 or 14 rounds depending on key size
- SubBytes
- ShiftRows
- MixColumns
- AddRoundKey
- Final Round (without MixColumns)
- SubBytes
- ShiftRows
- AddRoundKey
Here is short explanations about those steps:
- KeyExpansions: It is aimed to derives round keys from the cipher key using Rijndael's key schedule
- AddRoundKey: It combines each byte of the state and a block of the round key using xor operation.
- SubBytes: It uses a lookup table in order to perform non-linear substitution on each byte
- ShiftRows: This is a transposition step. The last three rows of the state are shifted cyclically with a certain offset.
- MixColumns: In this step, four bytes of each column of the state are combined using an invertible linear transformation
Example 1
Text:
ABC
Key:123
Output:U2FsdGVkX1/HpNSG1EW+P3oHAZEWXNs/5TCbDW18no4=