Implementation and Analysis of Triple AES in VHDL

Successful secure data communication requires encryption of the data by a certain algorithm to keep it safe from unauthorized access. One such algorithm is Triple. Advance Encrypting Standard which differs from AES by using three keys for encryption. It uses same Rijndael’s AES Algorithm but has more reliability and longer key length. AES uses symmetric keys due to which data can be accessed by unauthorized users if they get the key. So the proposed system works on using three different keys to encrypt the data so that all these keys are required to successfully decrypt the data. The cryptographic algorithm is modified in such a way that the final result cannot be cracked even if intermediate data appears as such. This paper also provides comparative analysis of DES i.e. Data Encrypting Standard, Triple DES, AES and Triple AES.


Introduction
In any communication system, wireless devices and many other applications, the data security is considered an important factor. Numerous technologies and algorithms have been built to secure data and protect it from assorted hackers and unauthorized admittance. With changing technology, hackers, electronic eavesdropping etc. have developed new techniques to attack the data. Cryptography is a technique to encrypt and decrypt data by the use of mathematics. It enables the storage of information that is sensitive or it transmits over the networks which are not secured so that nobody other than the intended recipient should be able to read it.
Several encrypting algorithm have been built to deal with data security attacks. One such algorithm is Advanced Encrypting Standard (AES) which is issued by FIPS by National Institute of Standards and Technology (NIST) 1 .
For conventional encryption, basic requirements needed are: Requirement of a strong encryption algorithm so that an individual who has knowledge of the algorithm and may be able to access more than one cipher texts shall not be able to read or decipher cipher text or to find out the way to have the key. The copy of the secret key must be present with both the transmitter and the recipient in a secure way.  Each round consists of a series of processing steps. Every round consists of four different stages but similar pertaining to the fact that one that depends on the encryption key itself. The cipher text is transformed back to the original plaintext with the usage of same encryption key and this transformation is achieved with the help of set of reverse rounds 2 .

Proposed System
Triple AES is a process to reuse implementations of AES with serial installation of three instances of AES to improve the security of the data. In the process of encryption, use of three keys leads to the formation of triple AES. The AES operation is performed three times with three different keys. K1, K2 and K3 are the three different keys used on a plain text P to convert it into cipher text C. By using the Rijndael algorithm, the encryption E1 is done with the help of key K1 and the result of this is fed to encryption E2 having key K2 and third encryption E3 is performed with key K3. Multi encryption of the data increases its security and makes it difficult to decode or crack the data. Figure 2 shows the model for implementing triple AES.
The decrypting procedure is same as encryption procedure but executed in reverse 6 . Some keys can make the encryption weak i.e. if second or first key or the third or second key is same. This encryption procedure will almost be same as the encryption procedure for standard AES.
The Triple AES encryption is done as: Encryption along with K1 Encryption along with K2 Encryption along with K3 The Decryption is the reverse process of the encryption and done as: Decryption along with K3 Decryption along with K2 Decryption along with K1

Rijndael Algo
An Algorithm was suggested by Rijndael that connects a data block which is variable and length of key is also variable. It is an iterative block cipher which is of 128 bits, 192 bits or 256 bits and he gave the name to this algorithm as AES algorithm. The basic working of AES is to perform identical steps several times. The basic criteria of design incorporated for AES algorithm is that its implementation can be done both in software and hardware while DES can only be implemented in hardware 7 .
On implementation, every cycle of algorithm in the network retrieves a new round key from the key scheduling algorithm. The state in the AES proposal is the intermediate result of the cipher which is retrieved at the completion of each cycle. A key scheduling algorithm has been designed which states that in every cycle, Modulo 2 operation of the plaintext and the key is carried out in order to expand the original key into several Round Keys. Many sub keys are derived from the main key for the functioning of each cycle and the method of deriving sub keys from the parent key is referred to as key expansion unit 8 .

Comparison
User needs and task accomplishment determines the choice between DES, 3DES, AES and 3AES. DES was mainly required to perform well in hardware as compared to software. DES performs lots of bit manipulation in substitution and permutation. For better security and safety,  Table 1 represents the comparative analysis of different encryption standards with triple AES.

Result
Xilinx-9.2i is used for synthesizing the proposed system and the simulation is done in Xilinx ISE Simulator. The simulation result for 128 bit key using triple AES is computed by Xilinx ISE 9.1i. Figure 3 shows the test bench waveform of the proposed algorithm.

Conclusion
Due to the needs in communications for more safe and secure, a new variation of AES has been proposed and implemented. In this paper, the AES using three keys has been designed and results are verified. The performance comparison of Triple AES with different encryption standards are obtained in term of security, time to crack and resources utilization. The throughput is increased because of the greater input block and the security of the algorithm is achieved due to greater key size. The area required is more but it can be neglected. This algorithm Single Three is best for applications in which very high security and increased throughput is required such as in multimedia communications.