Volume 7, Issue 1, Jan-Feb 2016, pp. 107-114, Article ID: IJECET_07_01_011 Available online at
http://www.iaeme.com/IJECET/issues.asp?JType=IJECET&VType=7&IType=1 Journal Impact Factor (2016): 8.2691 (Calculated by GISI) www.jifactor.com ISSN Print: 0976-6464 and ISSN Online: 0976-6472
© IAEME Publication
INFORMATION SECURITY USING
MODULATION TECHNIQUE
Satish Kumar Garg
Govt. P G College, Ambala Cantt-133001 (Haryana)
Arun Gaur
Hindu P G College, Sonipat-131001 (Haryana)
S. P. Gupta
University College Kurukshetra University Kurukshetra-136119 (Haryana)
ABSTRACT
In the present work we have introduced a new cryptographic method, called algorithm SKG 3.11, for encryption and decryption of any text file at five stages (1) First, by converting each character into corresponding binary form using 8-bit ASCII Code thus we get 8N bits for a text of N characters (2) Secondly, by swapping the integral multiple of leftmost N1st bit with
corresponding N1st rightmost bit till 4Nth bit if remainder of (8N+1/N1) is zero
otherwise upto 8Nth bit (3) Thirdly, creating a binary string of 0’s and 1’s such that total number of 0’s and 1’s is 8N, the consecutive numbers of 0’s and 1’s in this string may be from 1 to 7 (4) Fourthly, using C-NOT Gate on binary strings obtained at stages two and three and (5) Finally, converting binary string obtained at stage four into corresponding characters using 8-bit ASCII Code. This algorithm can be applied to any text consisting of 10 or more characters. The results obtained after application of this algorithm are excellent and difficult to decrypt.
Key words: Encryption, Decryption, C-NOT Gate, Swapping of Bits.
Cite this Article: Satish Kumar Garg, Arun Gaur and S. P. Gupta. Information Security Using Modulation Technique. International Journal of Electronics and Communication Engineering & Technology, 7(1), 2016, pp. 107-114.
1. INTRODUCTION
Right from the day the scientists have invented wheel and fire, the mode of transfer of confidential information has changed from sealed-wax method to net surfing. Now-a-days most of the information is transmitted through internet [1,2] due its very high speed and low cost but the security and originality of information which is being transmitted via internet has become very challenging because there is always a possibility that anyone may intercept our information. So it is not safe to send confidential information from one computer to another computer. The confidential information may be bank statements, bank transaction, military information, confidential data of companies etc. Hence the data/ information should be protected from any unwanted intruder otherwise any massive disaster may happen all-on-a-sudden. In order to make secure the system one should consider the security primary attributes such as confidentiality, integrity, availability etc. and secondary attributes such as authenticity, non-repudiation, accountability etc. There are a large number of methods and techniques to achieve these security goals, one of these is Cryptography which is the study of mathematical techniques related to aspects of information security such as confidentiality, data integrity, entity authentication, and data origin authentication [3,4]. The cryptographic algorithm can be classified into two categories: (i) Symmetric Key Cryptography where one key is used for both encryption and decryption purpose and (ii) Public Key Cryptography where two different keys are used one for encryption and the other for decryption purpose. Due to massive computation the public key crypto system may not be suitable in security of data in sensor networks [5]. The authors have developed an algorithm named as algorithm SKG 3.00 which is successful for encrypting any string consisting of 10 or more characters [6] in which bit level manipulation of the message using C-NOT Gate and a clock pulse of width of 1 to 7 units is used. In the present work, algorithm SKG 3.11, the authors have added a second level of security, that is, interchange of the position of bits.
2. THEORY
In the present work, the authors have used C-NOT Gate which is reversible gate. The output of C-NOT Gate is equal to input if control input is 0 and is reverse of input if control input is 1[6]. One of the inputs of the C-NOT Gate is used for digital signal and another input for the string of characters/text in the binary form. The algorithm SKG 3.11 is basically combination of algorithms SKG 1.0 and SKG 3.00[7,6]. The algorithm SKG 3.11 consists of five stages:
1. First, convert each character into corresponding binary form using 8-bit ASCII Code thus we get 8N bits for a text of N characters
2. Secondly, swap the integral multiple of leftmost N1st bit with corresponding N1st
rightmost bit till 4N bit if remainder of (8N+1/N1) is zero otherwise upto 8Nth bit 3. Thirdly, create a string of 0’s and 1’s such that total number of 0’s and 1’s is 8N, the
consecutive numbers of 0’s and 1’s in this string may be from 1 to 7 (Ck= 1 to 7). 4. Fourthly, use C-NOT Gate on binary strings obtained at stages three and four and 5. Finally, convert binary string obtained at stage four into corresponding characters
using 8-bit ASCII Code.
When any text of 10 characters is converted into binary form using 8-bit ASCII Code, we get 80 bits which contains about 50% of 0’s and 1’s each. Therefore, total number of possible combinations is about 80!/ (40!)2= 1075×1020. The Super Computer available is Teraflop which is capable of doing 1012 floating point
calculations per second, so a teraflop super computer shall take about 3409 Years to find all possible combinations [6].
3. PSEUDO CODE FORENCRYPTION ALGORITHM
// Read the text input and check length of Input, if less than 10, give error message
Step 1: Start
Step 2: Read input text N Step 3: If (N.length()< 10)
Print error message that program is not applicable;
//Convert the text of N characters to binary form using 8-bit ASCII Code Step 4: initialize character array str[]// copying each character of text N to character array
str[]
Step 5: for(i=0; i<N.length(); i++) {
If(i==N.length() – 1)
Str[i] = N.substring(i); else
Str[i] = N.substring(I, i+1); }
Step 6: initialize byte array bytes[] // copy each text character of character array converted to
byte char
Step 7: for(i=0; i<str.length; i++) {
bytes[i]= (byte) Str[i]; }
Step 8: for each byte in array, convert each byte to binary bits and create string of those
binary bits
// Interchange the leftmost integral multiple of N1 bits with corresponding rightmost integral multiple of N1 bits
Step 9: initialize l = length of binary string //this will be used at number of places in program
Step 10: initialize integer j (to store length to be traversed [loop through]) Step 11: Read value of N1
Step 12: integer r = remainder of (binary+1) modulus N1 Step 13: if (r==0) j = l/2; else j = l; Step 14: for(i=1;N1*i<=j;i++) { ch = charAt(N1*i-1);
Replace/ set charAt((N1*i)–1)th position with charAt((l+1)- (N1*i))th position;
Replace/ set charat((l+1)-(N1*i))th position with char stored in variable ‘ch’; }
// Generate a string of consecutive 0’s and 1’s such that total no. of 0’s and 1’s is 8N and no. of consecutive 0’s and 1’s is 1 to 7
Step 15: Read value of ‘ck’ // number of characters to occur consecutively Step 16: initialize array a1[l]// of length of total bits stored in step 8 Step 17: string st = ‘’; // empty string
Step 18: bitsetb1[l]; bitsetb2[l];
Step 19: for(integer i=0; i<l; i++) // Loop on string of all bits {
ifa1[i] = = 1
Set bit in bitset b1; }
for(integer i=0; i<l; i++) // Loop on string of all bits { if((i%(2*ck))<ck) st=st+"0"; else { st=st+"1";
Set bit in bitset ‘b2’; }
}
Step 20: print bits string and string ‘st’ string on which CNOT/XOR operations is being
performed
Step 21: b1.xor(b2); // apply Exclusive OR operation on obtained strings Step 22: st = ‘’; // clear string ‘st’ to store the result XOR string
Step 23: for(i=0;i<l;i++) { if(b1.get(i)) st=st + "1"; else st=st + "0"; }
Step 24: print and return final result string st to output file
// Convert 8N bits so obtained into the text of N characters using 8-bit ASCII Code
Step 25: String s2 = ‘’;
Step 26: String s=binary; // to store the binary string
Step 27: char nextChar; // declare the variable to store next significant character in string
Step 28: for(inti = 0; i<s.length(); i += 8) //this is a little tricky, as we want [0, 7], [9, 15], etc
{
nextChar = Integer value of s.substring(i, i+8); s2 = s2 + nextChar;
}
Step 29: return s2 to output file // return the final string
Decryption Algorithm is just reverse of the Encryption Algorithm
4. IMPLEMENTATION OF ALGORITHM SKG 3.11
The authors have implemented the said algorithm SKG 3.11 on Java platform for different values of N1 = 1 to 8N/3 and width of the clock pulse from 1 to 7 units (Ck=
1 to 7).
“Located in Kurukshetra, the land of Bhagwadgita, Kurukshetra University is a premier institute of higher learning in India. Its foundation stone was laid on January 11, 1957 by Bharatratna Dr. Rajender Prasad, the first President of the Indian Republic”
The output is given Table 1. From Table 1, it is clear that if we change even a single variable (N1 or Ck) then output of the Algorithm SKG 3.11 is entirely different.
Table 1 Comparison of Encrypted Output Text using Algorithms SKG 1.0, SKG 3.00 and SKG 3.11
S.
No. Encrypted Output Text of Algorithms SKG 1.0 , SKG 3.00 and SKG 3.11
1. Encrypted Output Text of Algorithm SKG 1.0 for N1 = 3
Locatbd en nurdks etta,othn lindroftBhigwedg taa Krrurshntra U.iv rsttytisaa re ie9 i,st tuae af nigderllearnengtinnIntian Ifs tou.dadio s oni was aih oh Jonutryi11n 1r57mbypBh ra rainaeDrn Rajeedek Puas,d,itha fars P esadeet f rhehInuiaK Ripuelic.
Encrypted Output Text of Algorithm SKG 3.00 for Ck = 1
:64!01u<;u- ' >&=0!'4yu!=0u94;1u:3u=42"412<!4yu- ' >&=0!'4u112;<#0'&<!,u <&u4u%'08 <0'u<;&!<! !0u:3u=<2=0'u904';<;2u<;u;1<4{u!&u3: ;14!<:;u&!:;0u"4 &u94<1u:;u4; 4',ud dyudl`bu7,u=4'4!'4!;4u'{u4?0; 10'u'4&41yu!=0u3<'&!u'0&<10;!u:3u!=0u;1<4;u0% 79<6 Encrypted Output Text of Algorithm SKG 3.11 for N1 = 3 and Ck = 1
Q(╖Q#3yS≈QA?s3?uq•Q{ºA;#q;τ│?_•τ3≈Q2ua2≤?;O?c;#a≈
!7qC"•A•Q≈QWuKq9░φYaK?uI≤yc≤Q'1wQ?gQ?≈+≈3ó•'1?{Q2#y¬3C╙{W!Q?s1?q1?q3+π1≈ccq
║c1?cQ;ºS▓•k:τi╥#QP?a┬τs•S?u
?qK2π≈9?#}≈2≤Q?ºy eQ{τ!;≤9│≈Cq1úuq"≈q≤Asqs╙;y▓g?√▓úQ#πA2≈y?╖3g
2. Encrypted Output Text of Algorithm SKG 1.0 for N1 = 3
Locatbd en nurdks etta,othn lindroftBhigwedg taa Krrurshntra U.iv rsttytisaa re ie9 i,st tuae af nigderllearnengtinnIntian Ifs tou.dadio s oni was aih oh Jonutryi11n 1r57mbypBh ra rainaeDrn Rajeedek Puas,d,itha fars P esadeet f rhehInuiaK Ripuelic.
Encrypted Output Text of Algorithm SKG 3.00 for Ck = 2
•\PRGVWZ]xFAFX@[VGARG[V_R]W\Uq[RTDRWTZGRxFAFX@[VGA Rf]ZEVA
@ZGJZ@RCAV^ZVAZ]@GZGFGV\U[ZT[VA_VRA]Z]TZ]z]WZRzG@U\F]WRGZ\]@G\]VDR@ _RZW\]yR]FRAJQJq[RARGARG]RwAaRYV] WVAcAR@RWG[VUZA
@GcAV@ZWV]G\UG[Vz]WZR]aVCFQ_ZP
Encrypted Output Text of Algorithm SKG 3.11 for N1 = 3 and Ck = 2
7N╤7EU5?y7a'σUαe7┴']E]?}╒Y9w}}?Uv?7TT?•ⁿ])vY]Ee?{vG•
Q%D'|7t?71-t_╓??~-≈/t?-?q7AWv7⌡7⌠?M•?U─• •AWφ7TE╠U%╡1vG7ΣWΦWΣUM?Wt?•▄W∞7]┴5╘\?┤E76Y ñ?|
5²mΣ-T?}t?_σEw?}T?7⌠┴u?sv7?G]?_╒?%pW┼D?v?'╡]╘•φ?•╘┼7E?'T?ⁿ╤U
3. Encrypted Output Text of Algorithm SKG 1.0 for N1 = 4
Lociteupin nurdnshehrafothnelase o tBhifwahtitda KrPukedetja U.rveanitrtisah pybmi59 i,1tiyrtenaf noghia lsarneng s IitianuIt sfo .dadnonnitoni wae lred ih Jo uaut 1sn 1re7 er Ba ra yatsr Din Rarenhsr ruas,a, gde gars fPrdnid et , tte IkuiaK Re dblac.
Encrypted Output Text of Algorithm SKG 3.00 for Ck = 1
:64!01u<;u- ' >&=0!'4yu!=0u94;1u:3u=42"412<!4yu- ' >&=0!'4u112;<#0'&<!,u <&u4u%'08 <0'u<;&!<! !0u:3u=<2=0'u904';<;2u<;u;1<4{u!&u3: ;14!<:;u&!:;0u"4 &u94<1u:;u4; 4',ud dyudl`bu7,u=4'4!'4!;4u'{u4?0; 10'u'4&41yu!=0u3<'&!u'0&<10;!u:3u!=0u;1<4;u0% 79<6 Encrypted Output Text of Algorithm SKG 3.11 for N1 = 4 and Ck = 1
#╖Ñ!1╣}╡;u▒º1'º5▒!?5qσ1=!⌡1Ñ╗▒};3}?=Ñ33╡!;5!5±²?9?1?╖5!▒'╡}#=31╖'=▒=}╡?⌡%u5»11╜╣ »²5#┐╣5⌐9▒╣e│#u%Ñ35í╖e1╣╡┐3╡#ú}╜3e?ú9╡5c²?17²;ú1#▒Ñ1%ú3eº1│#íe;╡╖e1=╡!⌡ú#uÑ3▒ =┐=σ}²aσu}±πσ╖=}╡5┐Ñ1»=í╗=⌡ºc²╡?9│!╣º²┐Ñ7%▒yσ▒5▒²│╡'71u?71'╡!1│!}3#⌡9=▒e?ú╣=╜ úuí51╖9╡╖πe
5. RESULT AND DISCUSSION
From Table 1, it is clear that if we change the value of even a single parameter N1 or Ck then the output text is entirely different. The algorithm SKG 3.11 is successful for encrypting any text/string consisting of 10 or more characters. Minimum time required to decryt any text/string consisting of 10 or more characters is about 3000 years [6] which is sufficiently large to decrypt any text. The comparative analysis of existing algorithms SKG 1.0, SKG 3.00 and proposed algorithm SKG 3.11 is given in Table 2.
Table 2 Comparative Analysis of Existing Algorithms SKG 1.0, SKG 3.00 and Proposed Algorithm SKG 3.11
S. No. Metrics Algorithm
SKG 1.0 Algorithm SKG 3.00 Algorithm SKG 3.11 1. Security Parameters 1 1 2
2. Nature Simple Simple Complex
3. Encryption/Decryption Algorithm
Same Same Different
4. Character/Bit Oriented Character Oriented
Bit Oriented
Bit Oriented
5. Min. No. of Characters 30 10 10
6. Total No. of Possible Permutations
8.88×1019 10.75×1022 10.75×1022 7. Min. Time required to find all
Permutations
1028 Days 3409 Years 3409 Years
Previously existing method for information security was algorithm SKG 1.0, which was proposed on concept of transpose cipher. Then we have proposed algorithm SKG 3.00, which is based on the concept of modulation of digitized information on digital form of clock pulse, but the proposed algorithm SKG 3.11 is more complex as compare to algorithms SKG 1.0 & SKG 3.00 because here we have used double security parameters i.e., transpose/swapping variable and width of modulating pulse.
6. CONCLUSION
The proposed algorithm SKG 3.11 was tested in Java platform for different values of N1 (= 1 to 8N/3) and Ck (= 1 to 7). In all cases the result seems to be satisfactory. It has been estimated that to crack the code we will require more time than the data/information will reside on the medium to travel. So, it can be said that the proposed scheme will produce an efficient secured algorithm for data/information transfer in both wired and wireless networks.
The following conclusions are drawn:
1. If we change the value of even a single parameter N1 or Ck then the output text is entirely different
2. The proposed algorithm SKG 3.11 is more complex as compare to algorithms SKG 1.0 & SKG 3.00 because here we have used double security parameters i.e., transpose/swapping variable and width of modulating pulse.
3. In the proposed algorithm SKG 3.11, the encryption algorithm and decryption algorithm are different.
REFERENCES
[1] S. K. Garg, Review of Secured Routing for Wireless Ad hoc Network, International Journal of Computing and Business Research, 2(1), 2011
[2] S. K. Garg, Wireless Network Security Threats, International Journal of Information Dissemination and Technology, 1(2), 2011, 110-113
[3] T. Karygiannis, and L. Owens, Wireless Network Security, (NIST Special Publication 2002)
[4] W. Stallings, Cryptography and Network Security: Principles and Practice (5th Edition: Prentice Hall, 2011)
[5] R. H. Karpinski, Reply to Hoffman and Shaw, Datamation, 16(10), 1970, 11 [6] S. K. Garg, Information Security By Using Controlled NOT Gate: Algorithm
SKG 3.00, International Journal of Electronics Engineering, 6(2), 2014, 20-24 [7] S. K. Garg, Information Security By Interchanging Characters: Algorithm SKG
1.0,International Journal of Information Technology and Knowledge Management, 6(2), 2013, 129-131