You are on page 1of 6

International Journal of Computational Intelligence and Information Security, March 2012 Vol. 3, No.

A Cryptographic Protocol Developed by Cyclic Manner for Information Security


Sananda Bhattacharyya1, Tamisra Kundu2 , Prof (Dr) Pranam Paul3 1 Student, M. Tech. (CSE), Narula Institute of Technology, Agarpara, West Bengal, INDIA sanandabhattacharyya@gmail.com 2 Student, M. Tech. (CSE), Narula Institute of Technology, Agarpara, West Bengal, INDIA tamisrakundu@gmail.com 3 HOD of Computer Application, Narula Institute of Technology, Agarpara, West Bengal, INDIA pranam.paul@gmail.com Abstract
With the growth of internet and network, the need for secure data transmission become more and more essential and important, as security is a major concern in the internet world. Data likely to be kept hide from all people except from the authorized user, cannot be sent in plain text. So the plain text should be codified by the process of encryption. Each type of data has its own features; therefore different techniques should be used to protect confidential data from unauthorized access. In this paper, a newly developed technique for encrypting and decrypting data named Co-factor based cyclic technique is used by which we can secure any kind of file. The technique can be implemented on any kind file as it is implemented in bit-level. The strength of the technique is analyzed in this paper. In this algorithm encryption is done by applying several encryption rounds getting from L.C.M. of sum of cofactors and the reverse process is applied on encrypted text to get back the original source bit stream. Keywords: Cryptography, Encryption, Decryption, Plain Text, Cipher Text, Network Security

1. Introduction
Cryptography is the science of writing messages in secret code and an ancient art; the first documented use of cryptography in writing dates back to circa 1900 B.C. The new forms of cryptography came soon after the widespread development of computer communications. In data and telecommunications, cryptography is necessary when communicating over any untrusted medium, which includes just about any network, particularly the Internet. Cryptography, not only protects data from hacking or alteration, but can also be used for user authentication. In all cases, the initial unencrypted data is referred to as plaintext. It is encrypted into cipher text, which will in turn (usually) be decrypted into usable plaintext. Here I introduce a block based encryption technique named, co-factor based cyclic technique. For encryption a key has to be generated. Key length and bit stream is chosen at random. Now num [ ], sum [ ] and s [ ] are generated. Calculate distinct loops and L.C.M. Plaintext is decomposed into finite number of blocks having same size of random number. Converted into corresponding decimal numbers and apply encryption rounds.

15

International Journal of Computational Intelligence and Information Security, March 2012 Vol. 3, No. 3 In decryption process applying previous steps of encryption calculate L.C.M. and rest of the decryption rounds are performed to get the original text.

2. Algorithm 2.1 Encryption Process


Step1: Step2: A binary stream bs is taken. A random number r is generated by the user, which is length of block at the time of decomposition which is defined in the key. Step3: By the length of the random number say n all possible numbers are generated and kept in an array called num [ ]. Step4: For each number in num [ ], calculate the sum of co-factors and stored them in another array called sum [ ]. Step5: Find the rank (starting from 0) of the each element of sum [ ] in descending manner, put them in a separate array called s [ ]. Step6: Take any element from num [ ] and mapped it with its corresponding element in s[ ].Now, find that particular element of s[ ] in num[ ] and mapped it again with its corresponding element in s[ ].This process will continue until we get back the starting element of num[]. Step7: The distinct loops are formed applying step 6 until all the elements of num [ ] have traversed.

Step8: Take the length of each distinct loop and calculate the L.C.M. Step9: According to the length of random number r the binary stream bs is decomposed into k number of blocks such as b1,b2,..,bk. It may happen at the last some blocks having the length less than r, is kept in ub, which will be appended at the end of getting final encryption. Step10: Calculate the decimal values for each of the blocks, which must be equal to any of the elements of num []. Step11: The number of rounds for encryption provided by user, also kept in key. Calculated decimal values for each block b1, b2 bk will traversed following step 6 up to user defined round number. Step12: Resultant decimal values are converted to corresponding binary numbers and append the unchanged block ub at the end of the binary stream to get the final encrypted text ct.

2.2 Key Structure


Table 2.2.1 shows the structure of the key
Table 1: Key Formation

Segment 1 2

Description Random Number, having the maximum value 2^n-1 used to represents the block length. Encryption rounds Total Key size

Maximum number of bits required(size) n m n+m

16

International Journal of Computational Intelligence and Information Security, March 2012 Vol. 3, No. 3

2.3 Decryption Process


Step1: Encrypted binary text ct is decomposed into blocks according to the random number and the rightmost remaining bits are kept in ub as the unchanged block. Step2: To get the L.C.M. repeat the previous from steps 1 to Step 8 of Encryption process. Step3: The number of rounds for decryption is calculated by subtracting the number of rounds of encryption from the L.C.M. Step4: Each distinct block converted into corresponding number. Step5: This number of decryption rounds is applied on numbers to get back the original decimal values. Step6: Convert each decimal value to its corresponding binary number. Concatenate the unchanged block ub at the end and in this way the original plain text can be recovered.

3. Example
To illustrate the algorithm, an example has been shown. The algorithm can be operated on a binary stream bs act as plain text for an example. bs is :11100101101111

3.1 Encryption Process


Let us start with the encryption process first .Give any random number r from user. Let r is 100.

According to the encryption process the decimal num will be generated from 0 to 7 and keep it in num [ ]. Sum[ ] =Sum of co-factors of each number in num[ ] S[ ]=rank of the element of the sum[ ] in descending order.

num [ ] 0 1 2 3 4 5 6 7

co-factors 0 1 1,2 1,3 1,2,4 1,5 1,2,3,6 1,7

sum[ ] 0 1 3 4 7 6 12 8

s[ ] 7 6 5 4 2 3 0 1

First Loop :num[ ] 0 7 1 6 s[ ] 7 1 6 0 17

International Journal of Computational Intelligence and Information Security, March 2012 Vol. 3, No. 3 The distinct loop is:0------------>7---->1------>6--->0

Second Loop:num[ ] 2 5 3 4 s[ ] 5 3 4 2

The distinct loop is:2------------>5----->3---->4----->2

The L.C.M =(L.C.M of number of elements in each distinct loop) Here L.C.M is 4 Here the length of the random number is 3. Divide bs into four 3bits blocks. Now b1=111 b2=001 b3=011 b4=011 Last 2 bits block remain unchanged block ub which does not involve into any encryption process. so ub=11. b1,b2,b3,b4 are converted into corresponding decimal numbers and they are b1=7 b2=1 b3=3 b4=3 Now user will provide the number of encryption rounds. Say the encryption round =2. Then ,applying two rounds of step 6 on above decimal values will get---------b1 111 7 1st: 2 :
nd

b2 001 1 6 0

b3 011 3 4 2

b4 011 3 4 2

1 6

18

International Journal of Computational Intelligence and Information Security, March 2012 Vol. 3, No. 3 Now, converting above decimal numbers into binary stream we get:b1 6 110 b2 0 000 b3 2 010 b4 2 010

Append the unchanged block ub at the end of the stream to get the encrypted text ct. So, the final encrypted text is:-Ct =11000001001011.

3.2 Decryption Process


Now we have to start the decryption process. From key we get the length of random number to decompose the encrypted stream into four numbers of 3bits blocks. The rightmost remaining bits are kept in ub as unchanged block. Convert each block into corresponding decimal numbers. Repeat the steps from 1-8 to get the L.C.M. Now, from key we get the encryption round (here its 2) and subtract it from L.C.M (here its 4) to get the decryption round i.e. 4-2=2. Now, apply remaining two rounds on these decimal values. This is illustrated below:- ct =11000001001011 c1 110 6 1st: 2 :
nd

c2 000 0 7 1

c3 010 2 5 3

c4 010 2 5 3

0 7

Now converting the decimal values to corresponding binary numbers we get 111001011011 Now, appending the unchanged block ub i.e. 11 at the end we recover the whole plain text as bs=11100101101111

4. Analysis
In this algorithm encryption is performed on binary data. All data which is under stable by the computer is finally converted into binary bits. So it can be implemented for any data type encryption process. Such as text encryption, image encryption or sound encryption process. In this algorithm the length of the plain text is not restricted, so it can be applicable for any larger file. Random number is different for each user. The num [ ] array is generated using random number. Since random number kept in key so it is difficult to compute the number of elements of num [ ] array. If the block length is increases then the generation of numbers Then, applying two rounds of step 6 on above decimal values in num[ ] array will increases exponentially. That means the cofactors and the sum of the co-factors of each number also increase which will lead to increase the number of individual loops that means there will be a possibility for a large valued L.C.M will generate. So it will be very difficult for cryptanalytic to crack this methodology cause the total number of rounds will increase accordingly, among them some rounds are used for encryption and rest of the rounds which are 19

International Journal of Computational Intelligence and Information Security, March 2012 Vol. 3, No. 3 calculated by subtracting the number of encryption rounds from L.C.M, are used as decryption rounds. These rounds have to be applied to get back the original position from where it started. The number of rounds taken for encryption may be more than L.C.M. In that case expected rounds during the decryption process is the difference between immediate larger multiple of L.C.M. than the encryption round and the encryption round itself. As total length of the key file and the taken random number is known, it is very easy to calculate the number of bits used for keeping the encryption round in key.

5. Conclusion and Future Research


Using this technique, we can encrypt any size of file as well as, any kind of file, as this technique is implemented in bit level. For bigger block size more security is achieved and key breaking is practically impossible. Due to that large block size is recommended for increasing complexity and getting more efficient effect. Lastly, here we have implemented a new technique for secure message transmission. In future we will try to develop some more complex and difficult techniques for more efficient transmission.

References
[1] Prof.(Dr)Pranam Paul, Saurabh Dutta, A.K.Bhattacharjee-Enhancement of Security through an Efficient Substitution based Block Cipher of Bit-level Implementation with Possible Lossless CompressionIJCSNS International Journal of Computer Science and Network Security, (VOL.8 No.4, April 2008) [2] Prof.(Dr)Pranam Paul-An Application to ensure Security through Bit-leve Encryption IJCSNS International Journal of Computer Science and Network Security,( VOL.9 No.11, November-2009). [3] Prof.(Dr)Pranam Paul- Implementation of Information Security based on Common Division IJCSNS International Journal of Computer Science and Network Security,(VOL.11 No.2, February 2011). [4] John C. Bowman, Math 422 Coding Theory & Cryptography, University of Alberta, Edmonton, Canada. [5] David A. Santos, Linear Algebra Notes, January 2, 2010 Revision, dsantos@ccp.edu. [6] Pranam Paul, Saurabh Dutta, An Enhancement of Information SecurityUsing Substitution of Bits Through Prime Detection in Blocks, of National Conference on Recent Trends in Information Systems (ReTIS-06), , Proceedings Organized by IEEE Gold Affinity Group, IEEE Calcutta Section, Computer Science &

Engineering Department,CMATER & SRUVM Project- Jadavpur University and Computer Jagat. July 1415, 2006. [7] Koblitz, N. A Course in Number Theory and Cryptography, 2nd ed. New York: Springer-Verlag, 1994. [8] A. Menezes, P. van Oorschot, and S. Vanstone, Handbook of Applied Cryptography, CRC Press, 1996 [9] Mark Adler and Jean-Loup Gailly,An Introduction to Cryptography, released June 8, 2004. www.pgp.com. [10] Prakash Kuppuswamy, Dr.C.Chandrasekar, ENRICHMENT OF SECURITY THROUGH

CRYPTOGRAPHIC PUBLIC KEY Science ALGORITHM BASED ON BLOCK CIPHER Indian Journal of Computer and Engineering (IJCSE), Vol. 2 No. 3 Jun-Jul.2011.

20

You might also like