Académique Documents
Professionnel Documents
Culture Documents
LEVEL SECURITY
PROJECT REPORT
Submitted by
V.ARAVINDAN (113115205009)
B.INDRAJITH (113115205023)
Of
BACHELOR OF TECHNOLOGY
in
INFORMATION TECHNOLOGY
ENGINEERING COLLEGE
APRIL 2019
BONAFIDE CERTIFICATE
Certified that this project report “ENHANCED NETWORK SECURITY USING THREE LEVEL
SECURITY” is the bonafide work of V.ARAVINDAN (113114205009), G.SURIYA PRAKASH
(113114205065), B.INDRAJITH (113114205023) who carried out the project work under
my supervision certificate further, that to the best of my knowledge, the work reported
here is does not form part of any other project report or dissertation on the basis of which
degree or award was conferred on an earlier occasion of this or any other candidate.
SIGNATURE SIGNATURE
ii
CERTIFICATE OF EVALUATION
Semester : VIII
[113115205023]
The report of this project work submitted by the above students in partial
fulfillment for the award of Degree of Bachelor of Technology in Information
Technology of Anna University was evaluated and confirmed to be the report of
work done by the above student. This project report was submitted for the viva-
voce held on at Vel Tech Multi Tech Dr.Rangarajan
Dr.Sakunthala Engineering College.
iii
ACKNOWLEDGEMENT
We wish to express our sincere thanks to almighty and the people who
extended their help during the course of our work.
We would like to express our special thanks to our Head of the Department
Mr.R.Prabu, M.Tech., Department of Information Technology Engineering and
our project supervisor Dr.M.Rajesh Khanna, B.Tech, M.E, Ph.D., for their
moral support by taking keen interest on our project work and guided us all along,
till the completion of our project work.
iv
TABLE OF CONTENTS
ABSTRACT ix
1. INTRODUCTION 1
2. SYSTEM ANALYSIS 2
3. SYSTEM IMPLEMENTATION 10
11
5. SYSTEM DESIGN 14
6. CONCLUSION 22
7. FUTURE ENHANCEMENT 22
REFERENCES 69
LIST OF FIGURES
vii
LIST OF ABBREVIATIONS
ABBREVIATIONS EXPANSION
RSA Rivest-Shamir-Adlmen
IDE Integrated Development Environment
MR Magic Rectangle
AES Advanced Encryption Standard
DES Data Encryption Standard
viii
ABSTRACT
ix
CHAPTER 1
INTRODUCTION
The efficiency of cryptographic algorithm is not only based on the time taken
for encryption and decryption, but also the number of levels used to get the cipher text
from a plain text. The public key cryptosystem RSA is one of the widely used
algorithms. However, several attacks are introduced to break this algorithm due to
certain limitations. Also, it may not be guaranteed that the cipher text is fully secured.
One of such limitations in the past cryptosystem is using ASCII characters for numerical
representation of the text. To overcome the above said limitation, an innovative
algorithm namely Magic Rectangle Generation Algorithm (MRGA) is being proposed in
this work. It is helpful to enhance the security due to its complexity in encryption
process. The singly even magic rectangle is formed based on the seed number, start
number, row sum and column sum. The value of row sum and column sum is very
difficult to be traced. The proposed work introduces one more level of security in public
key algorithms such as RSA, ElGAMAL etc. Finally, MRGA helps to overcome the
weakness of public key cryptosystem. Cipher text developed by this method can be
entirely different when compared to the plain text and will be suitable for the secured
transmission over the internet. Cryptography is a science of secret writing. It is the
technique of defending the information by transforming it into an unreadable format in
which a message can be hidden from the casual reader and only the intended recipient
will be able to convert it into original text. It is the study of mathematical techniques
related to aspects of information security such as confidentiality, Data Integrity, user
validation, and data source authentication. Symmetric and Asymmetric keys are the two
categories of cryptography algorithms. In Symmetric keys encryption or secret key
1
encryption, for encryption and decryption of data a single key is used. The secret key is
known only to the sender and receiver of a message who can apply the same key for
encryption and decryption process. The main challenge is getting the sender and receiver
to agree on the secret key without anyone else finding out. The key should be distributed
before transmission between entities. The concept of public- key cryptography was
brought into use during 1976 by Whitfield Diffie and Martin Hellman to overcome the
key management issues. Two separate keys are used in Public-key cryptography. The
first key is acting as a secret key and the remaining one is public. Even though these
keys are different, the two parts of the key pair are mathematically linked. The
algorithms used for public key cryptography are based on mathematical relationships
such as integer factorization an discrete logarithms.
1.2 OBJECTIVE
Add-on Security Level for Public Key Cryptosystem using Magic Rectangle
with Column/Row Shifting to provide encryption and decryption more efficient by
applying two thick layer of security. To provide encryption and decryption more efficient
by applying two thick layer of security. The parameters used in encryption and decryption
process of the algorithm plays a vital role for security. In RSA, the secret key is derived
from the public key and choosing p and q with very large size. Even though the above
parameters are considered carefully in RSA, it is not fully secured because of using ASCII
character. The same cipher text value will be repeated if the same character is repeated
more than one place in the plain text. To overcome this problem, this paper tries to
develop a method with different singly even magic rectangle of the order 32 x 48. Thus
preferably different numerals representing the position of ASCII values are taken from
magic rectangle. The encryption process is being performed using RSA crypto-system. It
provided another layer of security to any public key algorithm. Sonia Goyat proposed an
algorithm pertaining to the application of Genetic algorithm to cryptography and modifies
2
the approach to generate keys that have more strength. There is no repetition of random
values used in key generation. Proposed a work focuses on factorization of all trivial and
nontrivial integer numbers and requires fewer steps for factorization process of RSA
modulus N. The Pollard rho factorization method forms the basis for New Factorization
method. Sonal Sharma, Saroj Hiranwal, Prashant Sharma[6] present a new algorithm
(Modified Subset-Sum cryptosystem over RSA) which is secured against various types of
Mathematical attacks on RSA as well as Shamir attacks.
Analyzed the speed of RSA public key cryptosystem to reduce the time taken for finding
factor for a large number, and proposed a new algorithm and its performance was
compared with Fermats factorization Algorithm and trial division algorithm. The security
of RSA cryptography algorithm based on additive homomorphic properties. The proposed
algorithm is secured based on the factoring problem as well as decisional composite
residuosity assumption. It is observed that whenever the file size is increases, the total
time for encryption and decryption process will also increases as shown in. The limitation
in the proposed work is that it needs additional time to construct magic rectangle initially.
However, encryption and decryption process does not call for any addition time. The
randomness of the value of magic rectangle enhances the security of the cipher text. In the
existing concept of ASCII, the cipher text values are repeated whenever the same
characters are repeated in the plain text.
CHAPTER 2
3
SYSTEM ANALYSIS
YEAR : 2017
Description: The security of any cryptosystems is based on the way in which it produces
different ciphertext for the same plaintext. Normally, various block cipher modes viz.,
CBC, OFC, etc., are used in producing different ciphertext for the same plaintext but it is
a time consuming process. Instead of using block cipher, a different encoding method for
the plaintext is proposed in this paper using magic rectangle. The advantage of using the
encoding scheme is different numerals is used in encoding each characters of a plaintext.
Thus instead of considering the ASCII encoding for a character to be encrypted, the
numeral which occurs at the position which corresponds to the ASCII value of the
character is taken from the magic rectangle. Further, different numerals from magic
rectangles for the same character are produced by considering the magic sum, starting
number and template of magic rectangle. Once the magic rectangles are created, the
numerals which occur in the magic rectangles are considered for the encoding of the
plaintext character which is then used for encryption in the cryptosystems like RSA,
ElGamal. The proposed work provides an additional layer of security to any public key
cryptosystems. As this model is acting as a wrapper to any public key cryptosystems, it
ensures enhanced security.
TITLE : Add-on Security Level for Public Key Cryptosystem using
Magic Rectangle
4
AUTHOR : Hardik Gandhi,Vinit gupta,Rajput
YEAR : 2015
5
AUTHOR : Alaa Hussein Al-Hamami and Ibrahem abdallah aldariseh,
“Enhanced Method of RSA cryptosystem Algorithm”,Kuala Lampur
YEAR : 2013
DESCRIPTION : This work prohibits any intruders from obtaining the plain text in a
readable form. The security aspect is enhanced as there is no repetition of values in Magic
rectangle. There are several parameters used to increase the time complexity for the
construction of magic rectangle such as seed value, column sum, Minstart and Maxstart
values. Even if the intruders found the initial values of MR, it is very difficult to trace the
row/column. It plays a vital role in increasing the randomness and security of the
algorithm. And the use of RSA have the issue that the prime numbers used should be more
than 100. So have taken N-prime RSA so that more than two prime numbers will be used
and that can make the prediction of prime numbers som what easier. And the other thing is
that two same character in plain text do not have same cipher text. One of the issues in the
proposed work is additional time needed for the construction of Magic rectangle initially.
Each number has 100 digits and “n” has 300 digits as before.
6
Maintaining a database for this problem also has lots of problem with it.
Two large prime numbers are used
RSA Cryptosystem is used to generate keys
Plaintext is encrypted with respect to ASCII values
Cipher text is decrypted by RSA
Repeated characters will have repeated ciphers.
2.2.1 DRAWBACKS
Prime numbers should be carefully chosen such that they are not relatively
The methodology of the proposed security model is described in the following steps.
Construct different singly even magic rectangle of order 32x48 and used in lieu of ASCII
table with 128 values. The Magic rectangle contains totally 1536 values. It has been
divided into 12 quadrants, each consists of 128 characters. Each character of the plain
text is converted into numerals based on its position in magic rectangle in different
quadrants. The numerals are then encrypted and decrypted using RSA algorithm.
The magic square concept forms the basis for magic Rectangle. A magic square of order
7
n is an arrangement of integers in an nxn matrix such that the sums of all the elements in
every row, column are equal. In addition, the sums of all elements along the two main
diagonals are also equal. The magic constant of a magic square depends only on n and
has the value
M (n) = n (n2 + 1) / 2
Magic square can be classified into three types: odd, doubly even (n divisible by four),
singly even (n is even and not divisible by four) .
The MR algorithm started with the input values Minstart, Maxstart, column sum and
seed value. The seed value is the 4 bit binary value. If the input seed value is ‘1’ bit, then
either row or column of Magic Rectangle is shifted circularly. Otherwise shifting of row
or column is not warranted. The Pseudo code of the above concept is shown in Figure 3.
This methodology is implemented in Java. The time taken for encryption and decryption
of various size of file message are measured. As an illustration, the following magic
rectangles are generated with row sum as 4629 and column sum as 3086. In this
experiment, the seed value is 0010. The first, second and the last Magic rectangles are
unchanged as the respective seed value is ‘0’. The column values are shifted circularly in
the third Magic rectangle since the seed value for the same is ‘1’.
2.3.3 ADVANTAGES:
8
It is observed that whenever the file size is increases, the total time for encryption and
decryption process will also increases. The limitations in the proposed work it that it needs
additional time to construct magic rectangle initially. However, encryption and decryption
process does not call for any addition time. The randomness of the value of magic
rectangle enhances the security of the cipher text. In the existing concept of ASCII, the
cipher text values are repeated whenever the same characters are repeated in the plain text.
In the proposed magic rectangle, different values are applied in the cipher text for each
occurrence of same character in plain text. It enhances of the security of the cipher text.
Instead of single ASCII table, 12 tables with different set of values are used. It is more
complicated to identify the value of MR assigned into the plain text by any intruders.
It is summarized that,
2. Increases the randomness of the cipher text value even though the characters are
repeated.
3. Can generate rectangles from any values with equal row sums and column sums.
5. Increases the complexity to derive the plain text from the cipher text by any intruders.
CHAPTER 3
SYSTEM IMPLEMENTATION
9
3.1 HARDWARE REQUIREMENTS:
Hardware Specifications
RAM 4 GB
Software Specifications
10
CHAPTER 4
SYSTEM MODULES
11
4.1.1 MODULE DESCRIPTION
4.1.1.2 Mapping
4.1.1.3 Encryption
12
column sum is taken as a odd value such as 12345. The column sum generated
by the rectangle is 12344.
4.1.1.4 Decryption
Choose three distinct prime numbers p, q and s.And find n such that
n = p*q*s. ‘N’ will be used as the modulus for both the public and private
keys. Then find the Phi of n, ¥(n) = (p-1)(q-1)(s-1).Finally choose an e such
that 1 < e < ¥ (n), and such that e and ¥ (n) share no divisors other than 1 (e
and ¥ (n) are relatively prime). At last ‘E’ is kept as the public key exponent.
Then determine d (using modular arithmetic) which satisfies the congruence
relation .d=e ^- 1 (mod ¥ (n)).
13
CHAPTER 5
SYSTEM DESIGN
14
5.1.1 USE CASE DIAGRAM
DESCRIPTION :
The user receives the ascii message before starting the process. Then magic
rectangle is generated based on some conditions. Then the ascii message or ascii
values are mapped to the MRG values and they are encrypted. The encrypted
key is passed to the receiver in order to decrypt the same message. The
decryption process is performed similar to encryption process and hence the
plaintext is obtained.
15
5.1.2 SEQUENCE DIAGRAM
DESCRIPTION :
The ascii message is mapped with MRG values. The resultant would be
randomized input, which is further used to generate key. The encrypted cipher is
sent to the receiver for decryption process. The decryption process is performed
similar to encryption process and hence the plaintext is obtained. After all the
process acknowledgement will be sent to the user.
16
5.1.3 ACTIVITY DIAGRAM
DESCRIPTION :
In this process, the quadrant separation is done. The quadrants are generated
based on the some conditions. It uses several parameters such as min_start,
max_start, column_sum and so on. Only after generating magic rectangle the
mapping process is performed. Thus, the input message is encrypted and then
decrypted within few process.
DESCRIPTION :
There are several classes such as 3-prime RSA, Receiver, Mapping, Sender, and
finally MRGA. It even has 1 to 1 mapping and 1 to many mapping. The classes
consist of objects such as seed value, sender id etc. The classes communicate
with other classes through objects.
18
Fig: 5.1.5 Collaboration Diagram
DESCRIPTION :
It is similar to class diagram. All the properties, objects, etc used by the classes
are also used by the collaboration diagram. It is similar to interaction diagram.
There are several classes such as 3-prime RSA, Receiver, Mapping, Sender, and
finally MRGA. The process is performed based on step by step manner.
19
Fig: 5.1.7 Deployment Diagram
DESCRIPTION :
The entire system is deployed by this deployment diagram. The tools and
databases are used to represent the outside layer of the system. The java runtime
environment is used and all the data contents are fetched from databases. The
operating system is used in order to run the softwares related to the system.
20
Fig: 5.1.8 Package Diagram
DESCRIPTION :
CONCLUSION
21
• The encryption and decryption has become efficient
FUTURE ENHANCEMENT
• The randomness is increased enormously but the time taken is very high.
• Chosen prime number should not be much higher and it should not be
much lower as both are prone to attacks.
• The improvement in choosing the prime number and reducing the time
for matrix generation and mapping needs to be done.
APPENDIX-I
SOURCE CODE
MRGAlgorithm.java
22
package mrgalgorithm;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.lang.*;
import java.math.BigInteger;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Scanner;
import javax.swing.JOptionPane;
import javax.swing.JFrame;
23
String input;
new MRGAlgorithm().start();
*******************");
compute4Into6RowSum(_4Into6colSum);
generateMatrix(pivot);
}
24
private void generateMatrix(Integer pivot) {
int count = 4;
count += i % 2 != 0 ? 32 : 16;
25
_4Into6Matrixes.add(_4Into6);
display(_4Into6);
if (i % 4 == 0) {
combineMatrix(_4Into6Matrixes.get(0), _4Into6Matrixes.get(1),
_4Into6Matrixes.get(2), _4Into6Matrixes.get(3));
display(_8Into12);
_8Into12Matrixes.add(_8Into12);
_4Into6Matrixes.removeAll(_4Into6Matrixes);
if (i % 16 == 0) {
combineMatrix(_8Into12Matrixes.get(0), _8Into12Matrixes.get(1),
_8Into12Matrixes.get(2), _8Into12Matrixes.get(3));
display(_16Into24);
_16Into24Matrixes.add(_16Into24);
26
_8Into12Matrixes.removeAll(_8Into12Matrixes);
_16Into24Matrixes.get(1), _16Into24Matrixes.get(2),
_16Into24Matrixes.get(3));
display(_32Into48);
System.out.println();
encrypt");
//JOptionPane.showInputDialog(input);
JOptionPane.showMessageDialog(frame, input);
doEncryption(map, input);
27
private void doEncryption(Map < Integer, Integer[] > map, String
input) {
int count;
message:\n");
System.out.println(quadrants[i]);
bigIntegerArray[i] = BigInteger.valueOf(quadrants[i]);
eValue = rsa.RSAencrypt(bigIntegerArray);
System.out.println("\t" + eValue[i]);
// JOptionPane.showMessageDialog(null,"Encrypted cipher:
"+"\n"+eValue[i]);
dValue = rsa.RSAdecrypt(eValue);
// rsa.RSAdecrypt(eValue);
29
//System.out.println("\nThe decrypted value is:");
System.out.print("\t" + dValue[i]);
int count = 1;
while (temp.contains(c.toString())) {
count++;
return count;
30
private void doDecryption() {
return colSum / 8;
minStart) {
mr[0][0] = maxStart;
mr[0][1] = minStart + 2;
mr[0][2] = minStart + 4;
mr[0][3] = maxStart - 6;
31
mr[0][5] = minStart + 16;
mr[1][0] = minStart + 8;
mr[2][3] = maxStart - 8;
mr[3][0] = minStart + 6;
mr[3][1] = maxStart - 4;
32
mr[3][2] = maxStart - 2;
mr[3][3] = minStart;
int m = p.length;
int n = p[0].length;
buildfinalMatrix(0, 0, m, n, p, matrix);
buildfinalMatrix(0, n, m, n + n, q, matrix);
buildfinalMatrix(m, 0, m + m, n, r, matrix);
buildfinalMatrix(m, n, m + m, n + n, s, matrix);
33
return matrix;
private void buildfinalMatrix(int startM, int startN, int endM, int endN,
finalMatrix[i][j] = subMatrix[x][y];
34
System.out.print(matrix[i][j] + "\t");
System.out.println();
finalmatrix[][]) {
int p = 0, q = 4, count = 0;
Map < Integer, Integer[] > map = new HashMap < Integer, Integer[]
> ();
map.put(1, _1dquad1);
map.put(2, _1dquad2);
map.put(3, _1dquad3);
map.put(4, _1dquad4);
map.put(5, _1dquad5);
map.put(6, _1dquad6);
map.put(7, _1dquad7);
map.put(8, _1dquad8);
map.put(9, _1dquad9);
36
map.put(10, _1dquad10);
map.put(11, _1dquad11);
map.put(12, _1dquad12);
37
final List < Integer[][] > quadrant = new ArrayList < Integer[][] > ();
count = 0;
if (k == 1) {
quadrant_1[m][count] = finalmatrix[m][l];
} else if (k == 2) {
quadrant_2[m][count] = finalmatrix[m][l];
} else if (k == 3) {
quadrant_3[m][count] = finalmatrix[m][l];
} else if (k == 4) {
quadrant_4[m][count] = finalmatrix[m][l];
} else if (k == 5) {
38
quadrant_5[m][count] = finalmatrix[m][l];
} else if (k == 6) {
quadrant_6[m][count] = finalmatrix[m][l];
} else if (k == 7) {
quadrant_7[m][count] = finalmatrix[m][l];
} else if (k == 8) {
quadrant_8[m][count] = finalmatrix[m][l];
} else if (k == 9) {
quadrant_9[m][count] = finalmatrix[m][l];
} else if (k == 10) {
quadrant_10[m][count] = finalmatrix[m][l];
} else if (k == 11) {
quadrant_11[m][count] = finalmatrix[m][l];
} else if (k == 12) {
quadrant_12[m][count] = finalmatrix[m][l];
39
}
count++;
p = p + 4;
q = q + 4;
quadrant.add(quadrant_1);
quadrant.add(quadrant_2);
quadrant.add(quadrant_3);
quadrant.add(quadrant_4);
quadrant.add(quadrant_5);
quadrant.add(quadrant_6);
40
quadrant.add(quadrant_7);
quadrant.add(quadrant_8);
quadrant.add(quadrant_9);
quadrant.add(quadrant_10);
quadrant.add(quadrant_11);
quadrant.add(quadrant_12);
int b = 0;
_1dquad1[b] = quadrant_1[i][j];
b++;
41
display_quadrants(quadrant_1);
display_one_d(_1dquad1);
b = 0;
_1dquad2[b] = quadrant_2[i][j];
b++;
display_quadrants(quadrant_2);
display_one_d(_1dquad2);
b = 0;
42
for (int j = 0; j < 4; j++) {
_1dquad3[b] = quadrant_3[i][j];
b++;
display_quadrants(quadrant_3);
display_one_d(_1dquad3);
b = 0;
_1dquad4[b] = quadrant_4[i][j];
b++;
43
display_quadrants(quadrant_4);
display_one_d(_1dquad4);
b = 0;
_1dquad5[b] = quadrant_5[i][j];
b++;
display_quadrants(quadrant_5);
display_one_d(_1dquad5);
b = 0;
44
for (int j = 0; j < 4; j++) {
_1dquad6[b] = quadrant_6[i][j];
b++;
display_quadrants(quadrant_6);
display_one_d(_1dquad6);
b = 0;
_1dquad7[b] = quadrant_7[i][j];
b++;
45
display_quadrants(quadrant_7);
display_one_d(_1dquad7);
b = 0;
_1dquad8[b] = quadrant_8[i][j];
b++;
display_quadrants(quadrant_8);
display_one_d(_1dquad8);
b = 0;
46
for (int j = 0; j < 4; j++) {
_1dquad9[b] = quadrant_9[i][j];
b++;
display_quadrants(quadrant_9);
display_one_d(_1dquad9);
b = 0;
_1dquad10[b] = quadrant_10[i][j];
b++;
47
display_quadrants(quadrant_10);
display_one_d(_1dquad10);
b = 0;
_1dquad11[b] = quadrant_11[i][j];
b++;
display_quadrants(quadrant_11);
display_one_d(_1dquad11);
b = 0;
48
for (int j = 0; j < 4; j++) {
_1dquad12[b] = quadrant_12[i][j];
b++;
display_quadrants(quadrant_12);
display_one_d(_1dquad12);
return map;
System.out.print("\n ");
49
System.out.print(sub_quads[i][j] + "\t");
System.out.print("\n");
System.out.print("\t" + sub_quads[i]);
if (i % 32 == 0 && i != 0) {
System.out.print("\n");
50
RSA.java
package mrgalgorithm;
import java.math.BigInteger;
import java.util.Random;
import java.io.*;
import java.io.*;
import java.util.*;
import java.sql.*;
import javax.swing.*;
/**
*/
int primeSize;
/**
*/
BigInteger p, q, s;
/**
* Modulus N.
*/
51
BigInteger N;
/**
*r=(p-1)*(q-1)
*/
BigInteger r;
/**
*/
BigInteger E, D;
/**
String publicKey;
String privateKey;
String randomNumber;
BigInteger[] ciphertext;
52
this.primeSize = primeSize;
generatePrimeNumbers();
generatePublicPrivateKeys();
publicKey = publicKeyB.toString();
privateKey = privateKeyB.toString();
randomNumber = randomNumberB.toString();
//Encrypt data
//inputMessage=JOptionPane.showInputDialog(null,"Enter message
to encrypt");
//encryptedData=RSAencrypt(inputMessage);
//System.out.println("Encrypted message"+encryptedData);
//JOptionPane.showMessageDialog(null,"Encrypted Data
"+"\n"+encryptedData);
//Decrypt data
//decryptedMessage=RSAdecrypt();
53
//JOptionPane.showMessageDialog(null,"Decrypted Data
"+"\n"+decryptedMessage);
/**
*/
do {
do {
/**
*/
54
public void generatePublicPrivateKeys() {
N = p.multiply(q);
N = N.multiply(s);
r = p.subtract(BigInteger.valueOf(1));
r = r.multiply(q.subtract(BigInteger.valueOf(1))); //(p-1)(q-1)
do {
D = E.modInverse(r);
return (p);
return (q);
return (r);
}
55
public BigInteger getN() {
return (N);
return (E);
return (D);
/** Encryption */
E = new BigInteger(publicKey);
N = new BigInteger(randomNumber);
try {
ciphertext = encrypt(quadrants);
} catch (Exception e) {
System.out.println(e);
return ciphertext;
56
int i;
return (encrypted);
D = new BigInteger(privateKey);
N = new BigInteger(randomNumber);
//int k1= 0;
//while (st.hasMoreTokens()) {
//k1++;
//}
57
System.out.println("encrypted value passed:" + eData[i]);
//iv=decrypted[i].intValue() ;
//byteArray[i] = iv.byteValue();
//}
//try {
//}
//catch (Exception e) {
//System.out.println(e);
//}
return (decrypted);
/**
*/
58
public static void main(String[] args) throws IOException {
APPENDIX – 2
SNAPSHOTS
INPUTS
59
GENERATING 4*6 MATRIX
60
GENERATING 8*12 MATRIX
61
GENERATING 16*24 MATRIX
62
GENERATING 32*48 MATRIX
63
SPLITTING INTO QUADRANTS
64
INPUT PLAIN TEXT
65
MRGA MAPPING AND 3-PRIME RSA KEY GENERATION
66
ENCRYPTION
67
DECRYPTION AND SEARCHING
REFERENCES
68
[1]. A.J.Menezes ,P.C.Van Oorschot, and S.Vanstone , “Handbook of Applied
cryptography”, CRC Press, Boca Ration,Florida, USA,1997.
[2]. Gopinath Ganapathy, and K.Mani , “ Add-On Security Model for public
key Cryptosystem Based on Magic Square Implementation”, ISBN 978-988-
17012-6-8, Proceedings of the world congress on Engineering and Computer
Science 2009 Vol I, San Fransisco, USA
[4]. Ravi Shankar Dhakar, Amit Kumar Gupta, Prashant Sharma ”Modified
RSA Encryption Algorithm(MREA)”- 978-0-7695-46407/12, IEEE2012.
[6]. Sami A Nagar and Saad Alshamma, “High speed implementation of RSA
Algorithm with modified Keys exchange”, SETIT2012,IEEE
[7]. Adam Rogers, and Peter Loly ,”The inertial properties of Squares and
Cubes”, Nov-2004, pp.1-3.
[8]. en.wikipedia.org/wiki/Golden_rectangle
[9]. Omotheinwa T.O, Ramon S.O., “ Fibonacci Numbers and Golden Ratio
in Mathematics and Science”, International Journal of Computer and Information
Technology (ISSN”2279-0764) Volume 03-Issue 04, July 2013
69
International Journal of Computer Science & Information Technology (IJCSIT)
Vol 3, No 5,Oct 2011.
[11]. B.Schenier. “Applied Cryptography”, John Wiley & Sons Inc, New
York, Second Edition, 1996.
70