AES Calculator The AES Calculator applet is used to encrypt or decrypt test data values using AES block cipher. It takes a 128-bit (32 hex digit) data value and a 128/192/256-bit (32/48/64 hex digit) key. It can optionally provide a trace of the calculations performed, with varying degrees of detail. This source jarfile contains the source distribution for this program. It contains the following files: AES.java - class implementing the AES cipher. It contains a self-test main routine, which can test using an internally coded triple, tracing at the specified level, or with an explicitly sprecified triple, by invoking using one of the following forms: java AES java AES level java AES key plain cipher level AEScalc.java - class implementing the calculator GUI (as an applet) and main program for when run as an application. Can be run either as an applet (using AEScalc.html), as a GUI by running as: java -jar AEScalc.jar [-t level] or in command-line to generate en/decrypt traces as: java -jar AEScalc.jar [-e|-d] [-tlevel] hexkey hexdata GenAES.java - a program to generate random AES (key,plain,cipher) triples. eg for use in student labs. To generate n triples run as: java GenAES n Util.java - utility routines for converting and displaying binary data index.html - overview HTML file describing this program AEScalc.html - HTML file to run AEScalc as an applet. lab_aes.html - sample lab using this applet to investigate the AES algorithm check_triples - Unix shellscript to read and verify a file of test triples triples_fips - a set of test triples to validate the implementation manifest.txt - JAR manifest file specifying the main class for jar execution AEScalc - Unix shell script to run AEScalc (wraps java command) Makefile - Unix makefile to compile the code and create the jar file using the JDK utilities README - this README file You can build the class files and main program jar file using: make You can test the AES class using: make test You can build the source file distribution using: make jars You can construct a javadoc tree in directory doc using: make doc You can remove the assorted class files and doc using: make clean Lawrie Brown / 22 Apr 2005