A Block Cipher Involving a Key Bunch Matrix and an Additional Key Matrix, Supplemented with Modular Arithmetic Addition and supported by Key-based Substitution

— In this paper, we have devoted our attention to the development of a block cipher, which involves a key bunch matrix, an additional matrix, and a key matrix utilized in the development of a pair of functions called Permute() and Substitute(). These two functions are used for the creation of confusion and diffusion for each round of the iteration process of the encryption algorithm. The avalanche effect shows the strength of the cipher, and the cryptanalysis ensures that this cipher cannot be broken by any cryptanalytic attack generally available in the literature of cryptography.


INTRODUCTION
Security of information, which has to be maintained in a secret manner, is the primary concern of all the block ciphers. In a recent development, we have studied several block ciphers [1][2] [3], "in press" [4], "unpublished" [5] [6], "in press" [7], "unpublished" [8], wherein we have included a key bunch matrix and made use of the iteration process as a fundamental tool. In [7] and [8], we have introduced a key-based permutation and a key-based substitution for strengthen the cipher. Especially in [8], we have introduced an additional key matrix, supplemented with xor operation for adding some more strength to the cipher.
In the present paper, our objective is to modify the block cipher, presented in [7], by including and an additional key matrix supplemented with modular arithmetic addition. Here, our interest is to see how the permutation, the substitution and the additional key matrix would act in strengthening the cipher. Now, let us mention the plan of the paper. We put forth the development of the cipher in section 2. Here, we portray the flowcharts and present the algorithms required in the development of this cipher. Then, we discuss the basic concepts of the key based permutation and substitution. We give an illustration of the cipher and discuss the avalanche effect, in section 3. We analyze the cryptanalysis, in section 4. Finally, we talk about the computations carried out in this analysis, and arrive at the conclusions, in section 5.

II. DEVELOPEMNT OF THE CIPHER
Consider a plaintext matrix P, given by for all i and j.
Here, it is to be noted that ij d will be obtained as odd numbers and lie in the interval .
The additional key matrix F, can be taken in the form Here r denotes the number of rounds in the iteration process. The functions Permute() and Substitute() are used for achieving transformation of the plaintext, so that confusion and diffusion are created, in each round of the iteration process. The function Mult() is used to find the decryption key bunch matrix D from the given encryption key bunch matrix E. The functions IPermute() and ISubstitute() stand for the reverse process of the Permute() and Substitute(). The details of the permutation and substitution process are explained later.
The algorithms corresponding to the flowcharts are written as follows.
In the development of the permutation and the substitution, we take a key matrix K in the form given below. The serial order, the elements in the key, the order of elements can be used and form a table of the form. In the process of permutation, we convert the decimal numbers in the plaintext matrix into binary bits and swap the rows firstly and the columns nextly, one after another, and achieve the final form of the permuted matrix by representing the binary bits in terms of decimal numbers. In the case of the substitution process, we consider the EBCDIC code matrix consisting of the decimal numbers 0 to 255, in 16 rows 16 columns, and interchange the rows firstly and the columns nextly, and then achieve the substitution matrix. For a detailed discussion of the functions Permute() and Substitute(), we refer to [7].

III. ILLUSTRATION OF THE CIPHER AND THE AVALANCHE EFFECT
Consider the plaintext given below.
Dear Brother! I have got posting in army as a Captain a few days back. Both father and mother are advising me not to go Read C,E,K,F,n,r there. They say that they have committed a sin in sending you as an Army Doctor. You know all the problems which you are facing in that environment in Indian Army. Tell me what shall I do? Would you suggest me to join in the same profession in which you are? All the retired Army employees who are residing in our area are telling "Serving Mother India is really great". But most of their sons are working here only in our city. (3.6) On using the P, the E, and the F, given by (3.3) -(3.5), and applying the encryption algorithm, given in section 2, w get the ciphertext C in the form (3.7) On using the C, the D, and the F, and applying the decryption algorithm, we get back the original plaintext P, given by (3.3).
Let us now examine the avalanche effect. On replacing the 2nd row 2nd column element 194 of the plaintext P, given by (3.3), by 195, we get the modified plaintext, wherein a change of one binary bit is there. On using this modified plaintext, the E and F, given by (3.4) and (3.5), and applying the encryption algorithm, we get the corresponding ciphertext. (3.8) On comparing (3.7) and (3.8), after representing them in their binary form, we notice that these two ciphertexts differ by 72 bits out of 128 bits.
In a similar manner, let us offer one binary bit change in the encryption key bunch matrix E. This is achieved by replacing 3rd row 1st column element 33 of E by 32. Then on using this E, the original P, given by (3.3), the F, given by (3.5), and using the encryption algorithm, we obtain the corresponding ciphertext in the form (3.9) On carrying out a comparative study of (3.7) and (3.9), after putting them in their binary form, we find that these two differ by 78 bits out of 128 bits. From the above discussion, we conclude that this cipher is exhibiting a strong avalanche effect, and the strength of the cipher is expected to be a remarkable one.

IV. CRYPTANALYSIS
In the development of all the block ciphers, the importance of cryptanalysis is commendable. The different cryptanalytic attacks that are dealt with very often in the literature are 1. Ciphertext only attack (Brute force attack), 2. Known plaintext attack, 3. Chosen plaintext attack, and 4. Chosen ciphertext attack. Generally, the first two attacks are examined in an analytical manner, while the latter two attacks are inspected with all care, in an intuitive manner. It is to be noted here that no cipher can be accepted, unless it withstands the first two attacks [9], and no cipher can be relied upon unless a clear cut decision is arrived in the case of the latter two attacks.
Let us now consider the brute force attack. In this analysis, we have 3 important entities namely, the key bunch matrix E, the additional key matrix F, and the special key K, used in the Permute() and Substitute() functions. On account of these three, the size of the key space can be written in the form 95 years  As this is a very long span, this cipher cannot be broken by the brute force attack. Now, let us examine the known plaintext attack. In the case of this attack, we know any number of plaintext and ciphertext pairs, which we require for our investigation. Focusing our attention on r=1, that is on the first round of the iteration process, in the encryption, we get the set of equations, given by p ] mod 256)+F)mod 256, i=1 to n, j=1 to n, (4.1) P = Permute(P), (4.2) P = Substitute(P), (4.3) and C = P (4.4) Here as C in (4.4) is known, we get P. However, as the substitution process and permutation process depend upon the key, one cannot have any idea regarding ISubstitute() and IPermute(). Thus it is simply impossible to determine P even at the next higher level that is in (4.3). In a spectacular manner, if one has a chance to know the key K (a rare situation), then one can determine P, occurring on the left hand side of (4.1), by using ISubstitute() and IPermute(). Then also, it is not at all possible to determine the ij e (elements of the key bunch matrix), as this equation is totally involved on account of the presence of F and the mod operation. This shows that the cipher is strengthened by the presence of F.
From the above analysis, we conclude that this cipher cannot be broken by the known plaintext attack. As there are 16 rounds of iteration process, we can say very emphatically, that this cipher is unbreakable by the known plaintext attack.
On considering the set of equations in the encryption process, including mod, permute and substitute, we do not envisage any possible choice, either for the plaintext or for the ciphertext to make an attempt for breaking this cipher.
In the light of all these factors, we conclude that this cipher is a strong one and it can be applied for the secure transmission of any secret information.

V. COMPUTATIONS AND CONCLUSIONS
In this paper, we have developed a block cipher which involves an encryption key bunch matrix, an additional matrix and a key matrix utilized for the development of a pair of functions called Permute() and Substitute(). In this analysis the additional matrix is supplemented with modular arithmetic addition. The cryptanalysis carried out in this investigation firmly indicates that this cipher cannot be broken by any cryptanalytic attack.
The programs required for encryption and decryption are written in Java.
The entire plain text given by (3.1) is divided into 3 blocks, wherein each block is written as a square matrix of size 16. As the last block is containing 37 characters, 219 zeroes are appended as additional characters so that it becomes a complete block.
From this analysis the sender transmits all the 3 blocks of the cipher text, corresponding to the entire plain text, and the cipher text of EK and FK, given in (5.1), (5.2) and (5.3), In addition to this information, he provides the key bunch matrix E, the additional matrix F and the key matrix K in a secured manner. He also supplies the number of characters with which the last block of the entire plain text is appended.
From the cryptanalysis carried out in this investigation we have found that this cipher is a strong one and cannot be broken by any cryptanalytic approach. www.ijacsa.thesai.org Here it may be noted that this cipher can be applied for the encryption of a plain text of any size, and for the encryption of a gray level or color image.