(IJCNS) International Journal of Computer and Network Security,Vol. 2, No. 9, September 2010
52Cryptanalysis is the science of recovering the plaintext of amessage without the access to the key. Successfulcryptanalysis may recover the plaintext or the key. It alsofinds weakness in the cryptosystem.
The attack tries every possible keyon a piece of cipher text until an intelligible translation intoplain text is obtained. This is tedious and may not befeasible if key length is relatively long.
1.4 Confusion and Diffusion
These are the two important techniques for building anycryptographic system. Claude Shannon introduced the termsConfusion and Diffusion. According to Shannon, in an idealcipher,
all statistics of the cipher text are independent of the particular key used
. In Diffusion, each plaintext digitaffects many cipher text digits, which is equivalent to sayingthat each cipher text digit is affected by many plain textdigits.All encryption algorithms will make use of diffusion andconfusion layers. Diffusion layer is based upon simple linearoperations such as multi-permutations, key additions,multiplication with known constants etc. On the other hand,confusion layer is based upon complex and linear operationssuch as Substitution Box (S-box).
2.1 Evaluation of Advanced Encryption Standard
The principal drawback of 3DES is that the algorithm isrelatively sluggish in software. The original DES isdesigned for mid 1970
s hardware implementation and doesnot produce efficient software code. Since 3DES has threetimes as many rounds as DES, it is relatively slower. Asecondary drawback is that both DES and 3DES use a 64-bitblock size. For reasons of both efficiency and security alarger block size is desirable.Because of the drawbacks, NIST in 1997 issued a call forproposals for a new Advanced Encryption Standard (AES),which should have security strength equal to or better than3DES and significantly, improved efficiency. In addition,NIST specifies that AES must be a symmetric block cipherwith a block length of 128 bits and support for key lengthsof 128,192 and 256 bits.In first round 15 proposals were submitted and in secondround 5 algorithms were selected. NIST completed itsevaluation in November 2001 and selected Rijndael for AESare both cryptographers from Belgium: Dr. Joan Daemenand Dr. Vincent Rijmen. This standard specifies theRijndael algorithm ( and ), a symmetric block cipherthat can process data blocks of 128 bits, using cipher keyswith lengths of 128, 192, and 256 bits. Rijndael wasdesigned to handle additional block sizes and key lengths;however they are not adopted in this standard. Throughoutthe remainder of this standard, the algorithm specifiedherein will be referred to as
the AES algorithm.
Thealgorithm may be used with the three different key lengthsindicated above, and therefore these different
maybe referred to as
2.2 S-Box Design
One of the most intense areas of research in the field of symmetric block ciphers is that of S-box design. Thecharacteristic of the S-box is its size. An
input bits and
output bits. Larger S-boxes, by and large,are more resistant to differential and linear cryptanalysis.However, large dimension
leads to larger lookup table.The size of lookup table decides the size of the programmemory. Therefore, the small S-box is required for thehardware with less program memory and large S-box can beused with hardware having more program memory. Forexample, AES uses 16 x 16 S-box. This is implemented in asuite of hardware platforms: 8051 based microcontrollers,PIC processor, ARM processors, FPGA based processors,ASIC, etc. It is possible to implement 256 x 256 S-box inhigh end processors.Another practical consideration is that the larger the S-box,the more difficult it is to design it properly. S-box isrequired for both encryption and decryption. An
S-boxtypically consists of 2n rows of m bits each. The n bits of input select one of the rows of the S-box, and the m bits inthat row are the output. For example, in an 8 x 32 S-box, if the input is 00001001, the output consists of the 32 bits inrow 9 (the first row is labeled row 0).
2.3 Key Schedule Algorithm
A final area of block cipher design is the key schedulealgorithm. A block cipher requires one sub-key for eachround of operation. The sub-key is generated from the inputmaster key. Generation of sub-key requires an algorithm.This algorithm should ensure that not sub-key is repeated.In general, we select subkeys to maximize the difficulty of deducing individual subkeys and the difficulty of workingback to the main key.
2.4 Avalanche criteria:
There are two different types of strict avalanche criteria: i)First order SAC: It is a change in output bit when a singleinput bit is flipped and ii) Higher order SAC: It is a changein output bit when many input bits are flipped.
3. Statement of the Problem
AES is a symmetric block cipher which encrypts/decryptsone block of data a time. AES has an iterative structureconsisting of a repetition of a round, which is applied to thedata block to be encrypted for a fixed number of times. Themandatory feature required for any block cipher is gooddiffusion. The problem statement is given below:i.
To implement the encryption and decryption of thealgorithm.ii.
To increase the Diffusion power of the AES algorithm.iii.
To suggest a new S-box to the AES algorithm toincrease the confusion.
4. Algorithm Specification
For the AES algorithm, the length of the input block, theoutput block and the State is 128 bits. This is represented by