IOSR Journal of Computer Engineering (IOSR-JCE) e-ISSN: 2278-0661,p-ISSN: 2278-8727, Volume 16, Issue 5, Ver. VIII (Sep Oct. 2014), PP 01-05 www.iosrjournals.org www.iosrjournals.org 1 | Page Twin Key Implementation in Aes Himanshu Gupta Department of Computer Science, Maharaja Surajmal Institute of Technology C4E Janakpuri, New Delhi (110058), India Abstract: In February 2001, NIST announced that a draft of the Federal Information Processing Standard (FIPS) was available for public review and comment. Finally, AES was published as FIPS 197 in the Federal Register in December 2001. Rijndael’s has been standard by the NIST as the Advanced Encryption Standard (AES). This makes the AES essential and necessary for protection of data. We propose to reconfigure the structure of the advanced encryption standard (AES), especially in constant rotation and replaced it with variable rotation using a single key (Twins Key) that can be used for both ciphering and inverse ciphering. We demonstrate that changes can develop twin ciphers which are similar to the original one. The use of single key in AES helps to solve complexity faced during ciphering and deciphering, but it still maintains the same degree of Confusion and Diffusion. Confusion and diffusion make the use of key thus more very complex and very difficult to discover it. The use of a single key also makes this process more time efficient and variable rotation can protect data from continuous tries to attack encryption algorithm. Keywords: AES, Twin key, Encryption, Decryption. I. Introduction: AES is based on a design principle known as a substitution-permutation network and is fast in both software and hardware. Unlike its predecessor DES, AES does not use a Feistel network. AES is a variant of Rijndael’s which has a fixed block size of 128 bits, and a key size of 128, 192, or 256 bits. By contrast, the Rijndael’s specification is specified with block and key sizes that may be any multiple of 32 bits, both with a minimum of 128 and a maximum of 256 bits. AES operates on a 4×4 column-major order matrix of bytes, termed the state, although some versions of Rijndael’s have a larger block size and have additional columns in the state. Most AES calculations are done in a special finite field. The key size used for an AES cipher specifies the number of repetitions of transformation rounds that convert the input, called the plaintext, into the final output, called the cipher text. The numbers of cycles of repetition are as follows: 10 cycles of repetition for 128-bit keys. 12 cycles of repetition for 192-bit keys. 14 cycles of repetition for 256-bit keys. Each round consists of several processing steps, including one that depends on the encryption key itself. A set of reverse rounds are applied to transform ciphered text back into the original plaintext using the same encryption key. The process is explained in Figure 1. -->High-level description of the algorithm: 1 KeyExpansionround keys are derived from the cipher key using Rijndael's key schedule. II. Initial Round 2.1 AddRoundKeyeach byte of the state is combined with the round key using bitwise XOR. 3 Rounds 3.1 SubBytesa non-linear substitution step where each byte is replaced with another according to a lookup table. 3.2 ShiftRowsa transposition step where each row of the state is shifted cyclically a certain number of steps. 3.3 MixColumnsa mixing operation which operates on the columns of the state, combining the four bytes in each column. 3.4 AddRoundKey