A Composite key using Division Algorithm and Matrix Inversion in Symmetric Key Encryption

International Journal of Computer Science and Engineering
© 2018 by SSRG - IJCSE Journal
Volume 5 Issue 11
Year of Publication : 2018
Authors : Shriram B. Patil

How to Cite?

Shriram B. Patil, "A Composite key using Division Algorithm and Matrix Inversion in Symmetric Key Encryption," SSRG International Journal of Computer Science and Engineering , vol. 5,  no. 11, pp. 1-8, 2018. Crossref, https://doi.org/10.14445/23488387/IJCSE-V5I11P101


In communication system no one should hack or modify the sent information with malicious intentions. One can obtain security in transformation using cryptography techniques. Many of the variants of algorithm such as stream cipher or block cipher use symmetric and public keys. Stream cipher technique involves encryption and decryption of one byte at a time. Block cipher techniques encrypts block of text at a time. The usual size in block cipher is 64, 128 or 256 bits where as in stream cipher it is 8 bits. In this paper, an invertible matrix (block cipher) is composed with division algorithm (stream cipher) based symmetric key encryption algorithm designed in DASKEA [5]. The sent message is encrypted twiceusing composition of stream and block cipher. This increases complexity of decrypting original message. The algorithm is based on matrix equation Ax = b, where A is square integer matrix of size n, defined over Z, the set of integers and is invertible over Z , x is a message vector. Matrix A acts on message x to get encrypted message b. The decrypted message is obtained by acting A-1on message b and gives back original message x. Message is divided into group g of n characters. If the message length is not multiple of n then message is padded with some special character which is not used as a character in message so that length is multiple of n. Each character is mapped onto unique integer. Group is taken as column vector g of integers. Matrix A acts on g and then encode it as A.g = b, a process of block cipher. On each element of b, encryption procedure defined in DASKEA [5] is applied, a process of stream cipher. The message is encrypted as E, a combination of block and stream cipher. Reverse process of decryption in DASKEY and then followed by matrix inversion gives original message.


Division algorithm, Cryptography, Symmetric key, Secret key, Asymmetric key, Public key, Stream cipher, Block cipher, Encryption, Decryption, Integer matrix, Inverse of matrix


[1] Andrew S Tanenbaum (2003), Computer Networks, 4 th Edition, Pearson Education Inc. and Dorling Kindersley Publishing Inc. , Delhi, ISBN:0-13-046002-8 
[2] Gary K. (2012), “An Overview of Cryptography”, www.garykessler.net 
[3] William Stallings(2006), Cryptography and Network Security – Principles and Practice, 4 thEdition ,Pearson Education Inc. and Dorling Kindersley Publishing Inc., Delhi, ISBN–978–81–7758-774-6 
[4] William Stallings(2008),Network Security Essentials – Applications and Standards, Pearson Education Inc. and Dorling Kindersley (India) Private Ltd. , Delhi, Third Edition, ISBN–978–81–317–1664–9. 
[5] Shriram B. Patil (2013), A Division algorithm based symmetric key encryptionalgorithm [DASKEA], The IUP Journal of Computer Sciences, VolVII, No 3,pp 35-42 
[6] EricksenW. S.(1980) Inverse Pairs of Matrices with Integer Elements, SIAM J.Numer. Anal. 1980, Vol 17, No 3, pp 474-477 
[7] Alfred J. Menezes, Scott A. Vanstone, and Paul C. Van Oorschot. Handbook of Applied Cryptography. CRC Press, Inc., Boca Raton, FL, USA, 1stedition, 1996. 
[8] https://www.jscape.com/blog/stream-cipher-vs-block-cipher 
[9] https://eprint.iacr.org/2014/677.pdf