******************************************************************************

README
for Software(C) Implementation of AES Encryption/Decryption 
Written for 128-bit AES decryption project
Course: CSEE 4840 - Embedded System Design, Spring 2008
Authors: 		Shrivathsa Bhargav (sb2784)
			Larry Chen (lc2454)
			Abhinandan Majumdar (am2993)
			Shiva Ramudit (syr9)

Last modified: 5-10-2008

******************************************************************************

This is the README for encryption/decryption through software. This
document is organized as follows.

1. Purpose
2. Requirements
3. Make/Compilation
4. Execution
5. Summary

******************************************************************************
1. Purpose

The package consist of following files with its functionality listed as follows.

FILE		PURPOSE
aesen.c		Source Code (in C) for AES 128bit Encryption
aesdec.c	Source Code (in C) for AES 128bit Decryption
key.txt		128 bit (in binary) for key
make.sh		make file (in shell script) for generating the binaries
img.bmp		Source Image/Data

******************************************************************************
2. Requirements

This program works in Linux environment. Need gcc compiler to compile the C code. 
Need Unix environment to run the Shell Script

******************************************************************************
3. Make/Compilation

a. Run following command for generating the binaries

	sh make.sh 

b. Run following command for cleaning the binaries

	sh make.sh clean
	
******************************************************************************
4. Execution

a. For Encryption, execute following command

	./aesen <<filename>>
   
   Will use key.txt as key file to encrypt file <<filename>>
   Will generate the encrypted file as <<filename.enc>>
   
b. For Decryption, execute following command

	./aesdec <<filename.enc>>
 
   Use the encrypted file <<filename.enc>> generated through ./aesen binary
   Will use key.txt as key file to decrypt the encrypted file <<filename.enc>>
   Will generate the decrypted file as <<filename.enc.text>>
   
******************************************************************************
5. Summary

This program has been coded for the the course project of CSEE4840: Embedded Systems Design
Comments/Suggestion/Questions are welcome at lc2454@columbia.edu, am2993@columbia.edu,
sb2784@columbia.edu, syr9@columbia.edu.