/Comp3260

Asgn2 - AES

Primary LanguageJava

COMP3260 - Assignment 2
by
Andrew Thursby (CXXXXXXX)
Felix Behrendt (C3215090)

Classes:

Application:
Main class that starts the program. Call main function to see usage.

AESType:
Enum for the different AES Variations

AddRoundKey:
Class for adding the round key to a byte matrix. Also precalculating keys for decryption

Decrypter:
Class the handles decryption of cipher texts.

Encrypter:
Class the handles encryption of cipher texts and calculates avalanche effect.

MixColumns:
Class for mixing columns during encryption / decryption as part of AES.

ShiftRows:
Class for shifting rows during encryption / decryption as part of AES.

SubstituteBytes:
Class for substituting bytes during encryption / decryption as part of AES.

Helper:
Provides some static methods to convert arrays to matrix, parse files etc.

HelperTests:
JUnit Tests for some java methods

OutputFileWriter:
Collects all data during the encryption / decryption progress and creates the required output file.