A Modified Advanced Encryption Standard Algorithm for Image Encryption

Cryptography algorithms are becoming more necessary to ensure secure data transmission, which can be used in several applications. Increasing use of images in industrial process therefore it is essential to protect the confidential image data from unauthorized access. Advanced Encryption Standard (AES) is a well-known block cipher that has many benefits in data encryption process. In this paper, proposed some modification to the Advanced Encryption Standard (M-AES) to increase and reaching high level security and enhance image encryption. The modification is done by modifying the ShiftRow Transformation. Detailed results in terms of security analysis and implementation are given. Comparing the proposed algorithm with the original AES encryption algorithm shows that the proposed M-AES has more security from the cryptographic view and gives better result of security against statistical attack


I. INTRODUCTION
Encryption is the basic method to ensure information confidentiality in a communication system. Nowadays, different algorithms are used for data encryption, with public encryption keys, like RSA (Rivest-Shamir-Adleman), or secret encryption keys, such as AES (Advanced Encryption Standard). The robustness of an encryption algorithm depends on the key length, the number of rounds, and its mathematic complexity but also on its weaknesses. AES is considered the most efficient and robust encryption algorithm of our days. It is applied on octets, on the 8-bit Galois Field GF (256) [1].
With the continuing development of both computer and Internet technology, multimedia data (images, videos, audios, etc.) is being used more and more widely, in applications such as video-on-demand, video conferencing, broadcasting, etc. Now, multimedia data is closely related to many aspects of daily life, including education, commerce, and politics. Until now, various data encryption algorithms have been proposed and widely used, such as AES, RSA, or IDEA [2,3], most of which are used in text or binary data. It is difficult to use them directly in multimedia data, for multimedia data [4] are often of high redundancy, of large volumes and require real-time interactions, such as displaying, cutting, copying, bit rate conversion, etc.
In This paper proposes a modification of AES algorithm. The modification is focused on ShiftRow Transformations. In the ShiftRow Transformation, if the round number odd, it operates as normal ShiftRow transformation, else if the round number is even, each column are cyclically shifted bottom over different number of byte as offset. This modification allows for more security.
The rest of this paper is organized as follows: Section 2 gives brief survey of AES algorithm. Section 3 shows the proposed AES algorithm (ShiftRow transformation). Section 4 discusses the experimental results. Section 5 evaluates the performance of AES algorithm and Section 6 concludes the paper.

II. AES AlGORITHM
In cryptography, the Advanced Encryption Standard (AES) is an encryption standard adopted by the U.S. government. Back in 1997 the National Institute of Standards and Technology (NIST) made a public call for new cipher algorithms that could replace the DES. A rough summary of the requirements made by NIST for the new AES were the following:  Symmetric-key cipher  Block cipher  Support for 128-bit block sizes Support for 128-, 192-, and 256-bit key lengths finally in October 2000, the Rijndael algorithm was chosen as the basis for the new standard encryption algorithm. The original Rijndael algorithm also supported both fixed-size and variable-size bit cipher blocks. However, currently the Federal Information Processing Standards specification for the AES algorithm supports only the fixed-size, 128-bit blocks. The standard comprises three block ciphers, AES-128, AES-192 and AES-256, adopted from a larger collection originally published as Rijndael. Each AES cipher has a 128-bit block size, with key sizes of 128, 192 and 256 bits, respectively. The AES ciphers have been analyzed extensively and are now used worldwide, as was the case with its predecessor, the Data Encryption Standard (DES).
In AES algorithm, the encryption step uses a key that converts the data into an unreadable ciphertext, and then the decryption step uses the same key to convert the ciphertext back into the original data. This type of key is a symmetric key; other algorithms require a different key for encryption and decryption. Generally speaking, the strength of an encryption byproduct ciphers can be heightened by increasing the number of rounds used to process the data. The AES standard specifies that the number of rounds is determined by the length of the cipher key, as shown in Table 1. However, The AES algorithm is divided into four different phases, which are executed in a sequential way forming rounds. The encryption is achieved by passing the plaintext through an initial round, 9 equal rounds and a final round. In all of the phases of each round, the algorithm operates on a 4x4 array of bytes (called the State). In Fig. 1 we can see the structure of this algorithm [5].
An initial XOR operation is performed between the State and the Key matrices. These atrices are then processed using two independent functions, respectively the Round function and the Key Expansion function (not represented on the figure). The Round function is executed 10 times and parameterized using the result of the Key Expansion function that generates R (1•R•10) 128-bits round keys K(R) from the 128-bits original secret key. Details of this function can be found in [6].
The Round function is composed of 4 operations: SubBytes, ShiftRows, MixColumns, and AddRoundKey. As shown in Figure 1, all rounds are identical with the exception of the final one which does not include the MixColumns transformation [7].

Figure 1. AES Algorithm
Let's denote SR the State matrix at the beginning of every round R (1•R•10):  SubByte: A non-linear substitution step where each byte is replaced with another according to a lookup table called S-Box. The AES S-Box is a 256 entry table composed of two transformations such as multiplicative inverse in GF (2 8 ) and an affine Transformation. For decryption, inverse S-Box is obtained by applying inverse affine transformation followed by multiplicative inversion in GF (2 8 ). Where Affine Transformation is a transformation consisting of multiplication by a matrix followed by the addition of a vector [8].


The ShiftRows: This step operates on the rows of the state; it cyclically shifts the bytes in each row by a certain offset as shown in Fig. 2. For AES, the first row is left unchanged. Each byte of the second row is shifted one to the left. Similarly, the third and fourth rows are shifted by offsets of two and three, respectively. For the block of size 128 bits, the shifting pattern is the same. In this way, each column of the output state of the ShiftRows step is composed of bytes from each column of the input state.

KeyExpansion Transformation
The AES algorithm takes the Master Key K, and performs a Key Expansion routine to generate a key schedule. The Key Expansion generates a total of 11 sub-key arrays of 16 words of 8 bits, denoted wi , taking into account that the first subkey is the initial key.

III. A MODIFIED AES ALGORITHM (MAES)
The presented research modifies the AES algorithm (make modification in ShiftRow trans-formation) in order to make AES algorithm be more secure.

A. Modified ShiftRow Transformation
The proposed algorithm suggested checking the round number is odd or even: 1. When round number is odd, The ShiftRows transformation operates on the rows of the state array (as normal ShiftRow transformation); it cyclically shifts the bytes in each row by a certain offset. The first row unchanged, the second row is cyclically shifted by one to the left, the third row is cyclically shifted by tow to the left and the fourth row is cyclically shifted by three to the lift. As shown in

IV. EXPERIMENTAL RESULTS
The proposed modify AES encryption algorithm used to test and evaluate some bases image which uses in encryption process based on software simulation. Using some input images as the original images (plaint images) then encrypted by modified AES encryption algorithm in order to be not invisible. The encrypted images are depicted in Figs

I. Security Analysis By Statistical Approach
A good encryption scheme should resist all kinds of known attacks, such as known-plain-text attack, cipher-text attack, statistical attack, differential attack, and various brute-force attacks. Some security analysis techniques perform on the AES image encryption scheme, including the statistical analysis and key space analysis [10].

A. Statistical Analysis
Shannon suggested two methods of diffusion and confusion in order to frustrate the powerful attacks based on statistical analysis. Statistical analysis has been performed on the AES, demonstrating its superior confusion and diffusion properties which strongly defend against statistical attacks. This is shown by a test on the histograms of the enciphered image and on the correlation of adjacent pixels in the ciphered image [11,12].

1) Histogram
An image histogram illustrates that how pixels in an image are distributed by plotting the number of pixels at each gray scale level. The distribution of cipher-text is of much importance. More specifically, it should hide the redundancy of plaintext and should not leak any information about the plain-text or the relationship between plain-text and cipher-text.
The histograms of plain-image ( Fig. 10(a) ) and its ciphered image (Fig. 10(c)) produced by the proposed scheme are shown in Figs

2) Correlation of Two Adjacent Pixels
Testing the correlation between two horizontally adjacent pixels, and two vertically adjacent pixels respectively, in a ciphered image. First, select n pairs of two adjacent pixels from an image randomly. And then the correlation coefficient of each pair uses the following formula calculated.
Where xi and yi are grayscale values of ith pair of adjacent pixels, and N denotes the total number of samples. The results of the correlation coefficients for horizontal, vertical and diagonal adjacent pixels for the plain-image and its cipher-image are show in Table 2 . The visual testing of the correlation distribution of two vertically adjacent pixels and the cipher image produced by the proposed scheme is shown in fig 11. (2) A u g u s t 1 4 , 2 0 1 5

B. Key Space Analysis
Key space size is the total number of different keys that can be used in the encryption. For a secure image encryption, the key space should be large enough to make brute force attacks infeasible [13]. The proposed encryption process uses 2128 different combinations of the secret key. Using such long key space to encrypt image is sufficient for reliable use.

C. Performance of M-AES
There are some other issues important to image cryptosystem algorithm such as running speed, particularly for real time Internet multimedia application. Some experimental tests are given to demonstrate the efficiency of our scheme. An indexed image of a "Mickey" (see Fig. 7a) is used as a plain image and encryption of this image is shown in Fig. 7b . The personal laptop used in all programs and experiments was Intel CORE i3 at 2.27GHz, with 4GB of RAM and 500 GB of hard disc capacity. Table 3 shows Performance of AES and Modified-AES 32/12/16 using CBC mode of operation.

V. Conclusion And Future Work
A new modified version of AES has been presented in this paper in order to design a secure symmetric image encryption technique. The proposed version does not tried to change or require any additional operations just it tried to adjust the Shift Row transformation. The modified AES tested and compared with the original AES algorithm and the results shows that M-AES gives better results in security.
In future, the proposed modify algorithm can be implemented on video in case of image as cover to hide the secret data. The algorithm can be modified to increasing speed to translating the encrypted data into decrypted and versa verse.