AES Encryption

AES Algorithm

What is AES

AES (Advanced Encryption Standard) is a Symmetrical based encryption and decryption method. This means that a message can be encrypted and decrypted using the same "Key". Only the system encrypting and message and the system decrypting the (encrypted) message knows the "Key".

AES is considered the gold standard for data encryption both at rest and when data is transferred between two systems

AES can use different key sizes, 128 bits, 192 bits and 256 bits. They are known as AES-128, AES-192 and AES-256. AES-256 is recommended for most government, military, banking and most other organizations

How does AES work

AES uses a 16 byte block transfer method that encrypts the data in an unreabable message and can only be decrypted using the same "Key". AES also uses a "Seed" or "Initialization Vector" that continues to encrypt the data for information or files that are larger than the 16 byte blocks. The Seed/Initialization Vector is typically incremented by 1 so that the message is secure.

What are the algorithms used for AES

The AES algorithms use matrix math.

For each 16 byte block encryption, apply the following functions

Apply the Initialization Vector

Expand the Key

Add Round Key

Round Processing. In the case of AES-256, 14 rounds will be used

for (i=1; i<14; i++) {

SubByte()

ShiftRows()

MixColumns

AddRoundKey

}

SubByte()

ShiftRows

AddRoundKey

More Details for these algorithms coming soon