0% found this document useful (0 votes)
14 views25 pages

An Innovative DNA Cryptography Technique

This document presents an innovative DNA cryptography technique aimed at secure data transmission using a symmetric key exchange and one-time-pad (OTP) methods. The proposed algorithm encrypts messages into DNA sequences, making it difficult for intruders to decrypt the data without the key, and demonstrates improved efficiency compared to traditional cryptography methods. The implementation of the algorithm is simulated in a web-based environment and mobile application, showcasing its effectiveness in protecting data during transmission.

Uploaded by

Sharique Khan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views25 pages

An Innovative DNA Cryptography Technique

This document presents an innovative DNA cryptography technique aimed at secure data transmission using a symmetric key exchange and one-time-pad (OTP) methods. The proposed algorithm encrypts messages into DNA sequences, making it difficult for intruders to decrypt the data without the key, and demonstrates improved efficiency compared to traditional cryptography methods. The implementation of the algorithm is simulated in a web-based environment and mobile application, showcasing its effectiveness in protecting data during transmission.

Uploaded by

Sharique Khan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 25

238 Int. J. Bioinformatics Research and Applications, Vol. 12, No.

3, 2016

An innovative DNA cryptography technique for


secure data transmission

Sanchita Paul*, Tausif Anwar and


Abhishek Kumar
Department of Computer Science & Engineering,
Birla Institute of Technology,
Mesra, Ranchi 835215, India
Email: [email protected]
Email: [email protected]
Email: [email protected]
*Corresponding author
Abstract: DNA cryptography is a field of bioscience technology used to
encrypt large messages into a compact volume. Nowadays, substantial amount
of active research is being done in the field of secure data transmission. In this
work, an algorithm has been proposed in which a two-part key generation
scheme is performed, which is helpful for both encryption and decryption
algorithms to protect data moving through insecure channel. Encrypting
messages into DNA sequences is an important part of cryptography. In this
paper, a new DNA cryptography technique is proposed using Symmetric Key
Exchange. It is used to protect data from intruders while data travel through an
insecure channel. When symmetric key is used, intruders are unable to generate
a crack key, thus protecting the data. If the key is not known, it is impossible to
decrypt data even when data are sent through an insecure channel. XOR
operation with one-time-pad DNA sequence is used as the encryption
technique. Symmetric Key Exchange presents a novel secure key generation
scheme. This method is very efficient in encrypting, transmitting and
preventing powerful attacks. The proposed algorithm is simulated in Java 8.1,
Net beans 8.1, Apache tomcat, Glass fish server 4.1 and Struts Model-View-
Controller (MVC) architecture framework. This has been developed in a web-
based environment and mobile application using Struts MVC architecture.
It was observed that the implementation of the algorithm based on DNA
sequences gave better results as compared to other cryptography methods.

Keywords: DNA cryptography; one time pad; DNA technologies; XOR


operation; symmetric key; encryption; decryption; cipher text; key generation;
ASCII code; matrix.

Reference to this paper should be made as follows: Paul, S., Anwar, T. and
Kumar, A. (2016) ‘An innovative DNA cryptography technique for secure data
transmission’, Int. J. Bioinformatics Research and Applications, Vol. 12, No. 3,
pp.238–262.
Biographical notes: Sanchita Paul is an Assistant Professor in the Department of
Computer Science & Engineering, Birla Institute of Technology, Mesra, Ranchi
(India). She holds the BE, ME and PhD degrees in Computer Science and
Engineering. Her area of interest is artificial intelligence, cloud computing,
bioinformatics, NLP, automata theory, design and analysis of algorithms and
big data.
Tausif Anwar is currently working as a Software Developer in CapitalVia
Global Research Limited, since August 2015. He obtained his ME degree

Copyright © 2016 Inderscience Enterprises Ltd.


An innovative DNA cryptography technique for secure data transmission 239

in Software Engineering from Birla Institute of Technology, Mesra, Ranchi,


India, in 2015. He obtained his BTech degree in Computer Science &
Engineering from Bhadrak Institute of Engineering Technology, Odisha. His
research area includes cryptography and network security.

Abhishek Kumar completed his ME in Software Engineering from Birla


Institute of Technology, Mesra, Ranchi, India. He obtained his BE degree in
Information Science & Engineering from CMR Institute of Technology,
Bangalore, India. His research areas include Internet of Things, cloud
computing and internet security. He has three years’ industry experience as
Software Developer in web-based projects.

1 Introduction

DNA cryptography is a relatively new field of bioscience technology dealing with


encryption of any kind of message. Nowadays researchers are focusing on different DNA
technologies. There are two ways to realise a DNA technology: DNA computing and
conventional cryptography. DNA computing uses molecular biology, which consists of
DNA hybridisation, DNA fragmentation and microbiology. According to Adleman (1994),
DNA computing is used to solve Hamiltonian path problem. Hamiltonian path problem
basically deals with finding the shortest path to reach from a source to a destination. For
this, he solved a seven-vertex graph and encoded it in molecular structure form, which
was further extended by Lipton to solve NP-complete problem (Cox, 2001). It has a
parallel processing capability with molecular biology and new data structure. DNA
cryptography has parallel computing properties to perform the encryption and decryption
of the public and private keys. In public key cryptography, the same key is used for
encrypting and decrypting messages and provides security, confidentiality and integrity.
A traditional cryptography like Data Encryption Standard can be broken by the use of
DNA computing (Pramanik and Setua, 2004). Adleman and Lipton performed DNA
polymerase, PCR amplification on DNA strands to encode plaintext into binary string
(Amin et al., 2006). One-time-pad (OTP) technique can be used for splitting the DNA
sequence and extending in steganography. In modern technology, there is a high-storage
requirement for storing huge amount of information (Conrad, 2006). DNA cryptography
stores huge amount of data in small volume with the combination of only these four
letters: A, C, G and T. These bases form the structure of DNA strands by forming hydrogen
bonds with each other to keep two strands intact (Chen, 2003). DNA cryptography based
on conventional cryptography consists of key generation, encryption and decryption
process. DNA cryptography achieved a higher level of security while sending data over
network. The storage capacity of DNA molecules is (1 g = 1021 DNA bases), which is
equal to (1 g = 108 TB). This much amount of data is stored, which is efficient for DNA
cryptography to reduce space complexity.
Only a few DNA technologies are used in DNA cryptography like Polymerase Chain
Reaction (PCR), DNA coding and DNA synthesis. PCR technique is used for encoding a
message between two primers. It is difficult to encode a message without knowing the
correct primers. Plain text is encoded in binary code, which is combination of 0 and 1,
and then it is converted into DNA sequence. DNA coding is based on four nucleotides
for encrypting binary to DNA sequence, namely adenine ‘A’, cytosine ‘C’, thymine ‘T’
240 S. Paul, T. Anwar and A. Kumar

and guanine ‘G’ (Cui, 2008). A combination of these nucleotides stores information
present in all living organisms. The cipher text is completely different from plain text and
is not easily detectable by intruders.
In this paper, a new DNA cryptography technique is proposed using Symmetric Key
Exchange, OTP scheme and DNA hybridisation to minimise time complexity. XOR
operation with OTP DNA sequence is used as the encryption technique. Symmetric Key
Exchange presents a secure key generation scheme. This method is very efficient in
encrypting, transmitting and preventing powerful attacks. The proposed algorithm is
simulated in Java 8.1, NetBeans 8.1, Apache Tomcat, GlashFish Server 4.1 and Struts
MVC architecture framework. This has been developed in a web-based environment and
mobile application platform using struts MVC architecture. It is quite interesting to
simulate the proposed algorithm in order to analyse the results. The analysis of the result
becomes even more interesting when the proposed algorithm is compared with other
existing algorithm like those presented in Pramanik and Setua (2004) and Kaundal
(2014). The proposed algorithm gives better results with respect to providing different
input sizes and delay times as compared to other algorithms.

2 Literature review

In 2003, Chen proposed DNA cryptographic algorithm on carbon nano-tube and DNA-
based systems. DNA-based cryptosystems are used to convert messages into segments.
OTP is used as a code book to convert plain text into cipher text. Code book should be
random and unique. Jie Chen presented DNA encryption and decryption images of
biomolecular methods based on the proposed algorithm.
Pramanik and Setua (2004) presented cryptography methodologies using DNA
hybridisation and DNA digital coding using OTP, which minimises time complexity.
DNA technologies require huge computing time, high computational complexity and are
extensively laboratory dependent. The researchers used a parallel technique to decrypt
the message in less time.
Tanaka et al. (2005) presented a cryptographic algorithm based on public key. This
is helpful for encryption and decryption techniques. After generating a public key,
messages are encoded in DNA sequence. They used the immobilisation process and PCR
amplification to decode the conceded DNA sequence.
Amin et al. (2006) used the symmetric key algorithm in DNA cryptographic approach,
where keys estimated in DNA sequences are obtained from genomes and stored as large
DNA sequences in a compact space. The DNA cryptographic approach has great storing
capabilities compared to other conventional cryptography algorithms. In this paper, the
author has described a symmetric DNA-based cipher approach and effective scalability
for large digital information products.
Cui et al. (2008) proposed the encryption scheme using DNA coding, PCR
amplification and DNA synthesis. The PCR amplification having two primers pair was
used as key and this is not designed by the sender or receiver. This encryption algorithm
is used for increased security purpose. Using this method, we can get different cipher text
as PCR primers, which can prevent attacks from intruders. This encryption scheme
shows high confidentiality strength.
Lai and Zhang (2008) explained a novel key generation scheme based on DNA
cryptographic approach. It uses matrix operations to increase computational speed.
They generated a key expansion matrix M and generated an encryption between two keys
An innovative DNA cryptography technique for secure data transmission 241

using XOR operations. In this paper, the DNA sequence was used as a randomised
database, thereby reducing the computation time and influence of matrix operation on the
computed speed.
Wang and Zhang (2009) applied cryptography approach in many fields and solved
many hard problems. The authors applied a new technique to work cryptography with
DNA computing and connect the RSA algorithm with DNA computing to encrypt message
efficiently. DNA computing is a method to solve some hard problems and compute faster
as compared to an electronic computer. This paper introduced a new encryption
algorithm combined with the RSA algorithm. DNA computing and model cannot be used
in laboratory, but this method of parallel computing is a new method of computation.
Lai (2010) proposed DNA sequence as an asymmetric encryption and signature method
wherein DNA technology matrix is obtained for encoding the image. In this DNA sequence,
matrix is divided into blocks and addition operation is performed between blocks. In this
paper, the original image was scrambled by addition and complement operation, which
provided a large secret key space, and this secret key of encryption algorithm is highly
sensitive. This algorithm can resist exhaustive attack, statistical attack and differential attack.
Borda and Tornea (2010) presented DNA secret writing technique wherein the principles
of bio molecular computation and several algorithms for DNA steganography and
cryptography such as One-Time-Pad and DNA chromosomes indexing have been discussed.
Kumar and Singh (2011) presented a technique of secret data writing using DNA
sequence. They focused on DNA computing, DNA sequence, which have large storage
capacity and extraordinary information density. The authors presented encryption and
decryption algorithms based on the OTP technique through which one can secure data in
DNA sequence. Steganography was used in this paper to hide messages in double-strand
DNA sequence microdots. The authors designed a data-hiding algorithm by using DNA
sequence and traditional cryptography. This algorithm is easy to use and efficient.
Wang and Yu (2011) proposed an Index-based DNA encryption algorithm. They used
Block cipher and Index of strings for encrypting messages into DNA sequences, which
are sent to the receiver by a secure communication medium. First, the message is converted
into the ASCII code and then into a binary code, which is further converted into DNA
sequence. DNA sequence searches in the key sequence and writes in the index number.
Zhang et al. (2012) proposed a DNA cryptography based on DNA fragment assembly.
They mentioned features of DNA molecular, key biotechnologies, DNA digital coding
and related software. Using the DNA digital coding and DNA fragmentation, the authors
designed a symmetric system algorithm, which converted plain text into a binary ASCII
code and then into DNA sequences.
Tornea and Borda (2013) proposed message encryption using DNA sequences. They
described data hiding based on DNA sequences. A DNA sequence-based data encryption
algorithm fulfils the current information security needs. In this paper, an algorithm using
DNA sequences for data hiding is proposed and discussed for secure data transmission
and reception.
Mandge and Choudhary (2013) presented a new field of cryptography based on
DNA computing due to high storage capacity, vast parallelism and exceptional energy
efficiency of biological DNA. Here, a DNA encryption technique based on matrix
manipulation and secure key generation scheme has been discussed.
Kaundal (2014) proposed a Feistel-inspired structure for DNA cryptography. They
conclude with a Feistel-inspired structure for DNA cryptography using OTP for key
generation, which achieves a better encryption (confidentiality) although at the cost of
increased encryption and decryption time (Table 1).
242 S. Paul, T. Anwar and A. Kumar

Table 1 Different types of DNA technologies

Types of DNA
Explanation
technologies
 DNA biomolecular stores genetic instruction as DNA sequence.
1. DNA  DNA biomolecular structure has three-dimensional shapes which are
biomolecular formed by protein, DNA and RNA.
 Bio molecular structure decomposed into primary structure, secondary
structure, tertiary structure, quaternary structure.
 OTP is randomly generated key which is used only one time for
encryption and it changes every time.
2. One Time
 Size of key is greater than or equal to plaintext message. Key should be
Pad (OTP)
defined uniquely and kept secret.
 OTP technique makes it difficult to guess the right key.
 DNA chip technology is defined independently in biological sample.
 DNA chip technology support by the method of micro-printing using
3. DNA chip large number of DNA probes and then hybridization with labelled
technology sample and obtained genetic information.
 DNA chip is also known as Gene chips, DNA array and oligonucleotide
array.
 DNA fragmentation is essential to library construction for DNA
4. DNA sequence.
fragmentations
 DNA fragmentation is used to split DNA sequence into small pieces.
 PCR is defined as enzymatic replication and DNA fragment.
5. Polymerase
 PCR is a molecular biology technique to amplify several copies of DNA
Chain Reaction
up to order of magnitude of particular DNA.
(PCR)
 PCR is used to amplify a specific region of DNA strand.

3 DNA coding method

The DNA coding method is a procedure for conversion of plain text into the ASCII code
and subsequent conversion of the ASCII code into a DNA sequence (Tables 2 and 3).
Table 2 DNA sequence to binary conversion

DNA sequence Binary


A 00
C 01
G 10
T 11

Table 3 Complement of DNA sequence

DNA sequence Complement of DNA sequence


A T
C G
G C
T A
An innovative DNA cryptography technique for secure data transmission 243

3.1 A new encryption algorithm


The proposed algorithm is based on Symmetric Key Exchange and XOR operation
technique, which encrypts plain text messages into DNA cipher texts. To avoid possible
attacks on cipher text by intruders, modified messages are checked at the receiver side.
The two parties involved in communication are sender and receiver. The sender encrypts
the plain text using symmetric key into the DNA sequence and sends through insecure
channels like internet:
Sender  E  K dna , P   Cdna

Receiver decrypts the cipher text into plain text using DNA key sequence:
Receiver  D  Cdna , K dna   P

3.1.1 Key generation


In this algorithm, the symmetric key exchange technique is used to calculate OTP DNA
sequences to facilitate secure communication. Randomly generated OTP DNA sequences
are used only once for encryption and decryption process.
Sender ‘A’ and receiver ‘B’ agree on two larges prime numbers (g and n). x and y are
any two numbers chosen by sender ‘A’ and receiver ‘B’. A key exchange algorithm is
used to calculate symmetric key K.
a Calculate R = (g*x) mod n and S = (g*y) mod n.
Sender sends the value of R to receiver (B) and receiver sends value of S to sender (A).
b Sender computes secret key K1 = (S*x) mod n.
c Receiver computes secret key K2 = (R*y) mod n.
d Finally, the value of K is obtained, K = K1 = K2.
The value of K is the number of oligonucleotide present in a nucleotide sequence. For
example, if the value of K = 5, then one nucleotide sequence is ATCGC (length is 5)
consisting of five oligonucleotides. The length of the final key or the final DNA key
sequences become K*length of plain text (see illustrations).
Generate OTP DNA sequence: (1) reverse the nucleotides first (where the total
number of nucleotide is equal to the length of plain text; say if plain text size is 16 bit,
then 16 nucleotides are present and each nucleotide is having five oligonucleotides); (2)
take complements of nucleotides of DNA sequences and consider it at positions 0, 1, 2, 3,
…, n and add A at the end with the first nucleotide, C with the second nucleotide, G with
third nucleotide and so on up to the end of DNA sequence (see the example in Section 4).
The sender and the receiver, after using the DNA key sequence for encryption and
decryption, have to destroy it, thereby making it impossible for any intruder to know the
correct sequence.

3.1.2 Steps for encryption algorithm


 Step 1: Choose the plaintext to be sent and convert it into ASCII code and then to
binary code.
 Step 2: Put binary code (plain text) bit-wise and column-wise from left to right in an
m*n matrix, say Z.
244 S. Paul, T. Anwar and A. Kumar

 Step 3: Find a mirror image of the above matrix (Z), say M.


 Step 4: Take any random DNA sequence which is equal to the length of binary plain
text and arrange it column-wise in an m*n [where m and n values are similar with the
previous m and n values] matrix, say N.
 Step 5: Apply XOR operation between matrices M and N to get a new matrix say MN.
 Step 6: Take the column-wise matrix elements from MN and arrange them in a row
to obtain a binary sequence.
 Step 7: Start scanning the binary sequence from left to right to find the occurrences
of 1s. Once a ‘1’ is found, get its position from the OTP DNA sequence and get the
corresponding DNA sequences from the generated OTP DNA sequences. Compute
this DNA sequence and remove the last bit from it.
 Step 8: Repeat step 7 for all the occurrences of 1s and put them all together. Find the
complement of DNA sequences to obtain the final cipher text.
 Step 9: Sender sends the single strand(ss) DNA sequences in the form of packets to
the receiver.

3.1.3 Steps for decryption algorithm


The decryption algorithm decrypts the message at receiver side in the following steps:
 Step 1: Once cipher text DNA sequence is received, complement it. Find the
corresponding sequence from OTP DNA sequence and attach the last position’s bit.
 Step 2: Repeat step 1 till the end.
 Step 3: Find the position of DNA sequences from OTP DNA sequences and form a
binary sequence by plotting 1s for all such occurrences; other positions in binary
sequence should be 0.
 Step 4: Arrange the obtained binary sequence column-wise in m*n matrix say MN.
 Step 5: Take same random DNA sequence which is used in the encryption algorithm
operation and which is equal to the length of binary plain text and arrange column-
wise in an m*n matrix (where m, n are the same values used previously), say N.
 Step 6: Perform XOR operation between MN and N to obtained matrix M.
 Step 7: Find mirror image of M, say Z.
 Step 8: Arrange the column-wise elements of matrix Z in a row to form a binary
sequence.
 Step 9: Convert the binary sequence to ASCII code which in turn will be converted
to plain text.
Sender has to send: 1 Key is calculated for both sender and receiver machines.
2 The random DNA sequence which is of equal length to binary
plain text
(used for XOR operation) for both sender and receiver
machines.
3 OTP DNA sequences.
4 Cipher text.
An innovative DNA cryptography technique for secure data transmission 245

Flow chart for OTP generation

START

g, n:‐ prime nos. shared by A


Input g, n ,x, y
and B
x:‐ random no. chosen by A
y:‐ random no. chosen by B

Sender (A) Receiver (B)

Calculate R:‐ Calculate S:‐


R = (g*x) mod n
S = (g*y) mod n

Send the value of ‘R’ Send the value of ‘S’


and receive ‘S’. and receive ‘R’.

Calculate the key K1 :‐ Calculate the key K2:‐


K1 = (S*x) mod n
K2 = (R*y) mod n

The computed key K:‐

K = K1 = K2

Generate the OTP


= (K*bit length of plain K = no. of oligonucleotides
text) in a nucleotides sequences

STOP
246 S. Paul, T. Anwar and A. Kumar

Flow chart for Encryption technique

Start

Choose a Plain Text

Convert into ASCII Code

Convert into Binary Code

Arrange binary text column wise in 4*4


m*n
matrixes.

Take
Binaryany
form
random
of DNA
DNA sequence
sequence= length
which of
is
Form the
Right shiftmirror
columns
matrix
of matrix
of the to
above
form mirror equal to the length of binary plain text,
plain text.
image matrix.
generated matrix. converts into binary form and arranges it in a
m*n matrix

XOR operation will be done between above


two matrices.

Arrange in a single row from matrix column


wise elements.

Find the occurrences of 1s in sequences get


its position and obtain the corresponding
DNA sequence from OTP DNA sequence.

Complement obtained DNA sequences and


remove the last bit, repeat for all occurrences
of 1s.

Cipher text

Stop
An innovative DNA cryptography technique for secure data transmission 247

Flow chart for Decryption technique

Start

Cipher text

Find complement
Complement it. of k bits
Find theDNA sequence
corresponding
sequence
and attach from
last bitOTP DNArepeat
position, sequence and
the same
attach the last position bit.
for subsequent k bits DNA sequence.

Find the position of DNA sequence


obtained in OTP DNA sequence; put 1 for
such occurrences and 0 at other position to
form binary sequence.

Convert
Take OTP
same DNA DNA
random sequence to its binary
sequence, used
Arrange the obtained binary sequences
form
previously in encryption algorithm, covert
column wise in 4*4
m*nmatrixes
matrixesAB.
AB.
it to binary form and arrange in m*n matrix
i i

Perform XOR operation b/w AB and B to


obtain matrix A’.

Formshift
Left a mirror
column
image
of matrix
of A’ is
A’matrix
to from
A.
matrix A.

Arrange the column wise elements of


matrix A in a row to form a binary
sequence.

Convert binary code to ASCII code.

Convert ASCII code to plain text .

Stop
248 S. Paul, T. Anwar and A. Kumar

4 Illustration 1

4.1 Key generation


Let us take plain text (SE) for encryption and decryption. Convert it into ASCII code and
subsequently binary code, i.e. 01010011 01000101 = 16 bits.

S E

Now, the length of plain text ‘SE’ is 16 bits. Suppose we take prime numbers g = 5,
n = 11 and sender takes any value, i.e. x = 3 and receiver takes y = 4.
a Calculate R = (g*x) mod n and S = (g*y) mod n.
R = (5*3) mod 11 = 4 and
S = (5*4) mod 11 = 9
Sender sends the value of R to receiver and receiver sends the value of S to sender.
b Sender computes secret key K1 = (S*x) mod n = (9*3) mod 11 = 5.
c Receiver computes secret key K2 = (R*y) mod n = (4*4) mod 11 = 5.
d Finally, we get the value of K, K = K1 = K2 = 5 [Symmetric key].
Now the length of DNA sequences become (16*5) = 80.
Generate randomly length of 80 DNA sequences:
CGTAC TAAGG GCGTA CCTTT AAAGC ATCGG AACCC GTACG GGCGT AATTG
GGATT CGGTA CGCCA AATTC GACCG TAGGC. (There are 16 nucleotides and
each is of length 5)
Generate OTP DNA sequence:
1 Reversely placed nucleotide. Ex: TAGGC. GACCG AATTC CGCCA CGGTA
GGATT AATTG GGCGT GTACG AACCC ATCGG AAAGC CCTTT GCGTA
TAAGG CGTAC.
2 Take complement of above nucleotides. Ex: ATCCG CTGGC TTAAG GCGGT
GCCAT CCTAA TTAAC GCGCA CATGC TTGGG TAGCC TTTCG GGAAA
CGCAT ATTCC GCATG.
3 Consider it at positions 0, 1, 2, 3, 4, …, 15 and add A with the first nucleotide, C
with the second, G with the third, T with the fourth, again A with the fifth and so
on. Ex: ATCCGA CTGGCC TTAAGG GCGGTT GCCATA CCTAAC TTAACG
GCGCAT CATGCA TTGGGC TAGCCG TTTCGT GGAAAA CGCATC ATTCCG
GCATGT.

4.2 Encryption algorithm


a Let binary plain text (SE) be 01010011 01000101. Arrange the binary plain text
column-wise in matrix.
An innovative DNA cryptography technique for secure data transmission 249

 Step 1: Arrange binary plain text bit-wise and column-wise from left to right in
4*4 (m = 4 and n = 4) matrix say Z.

0 0 0 0
1 0 1 1
0 1 0 0
1 1 0 1

 Step 2: We obtain a mirror image of the above matrix, say M.

0 0 0 0
1 1 0 1
0 0 1 0
1 0 1 1

 Step 3: Take randomly any DNA sequence which is equal to the length of
binary plain text and arrange it column-wise in a 4*4 (m = 4 and n = 4) matrix,
say N. Ex: DNA sequences are CGATTAAG and its binary numbers are
0110001111000010.

0 0 1 0
1 0 1 0
1 1 0 1
0 1 0 0

 Step 4: Apply XOR operation between matrices M and N to get new matrix say
MN.

0 0 1 0
0 1 1 1
1 1 1 1
1 1 1 1

b Arrange elements of matrix column-wise from left to right in a row; the result will be
(0011011111110111). Start scanning the binary sequence from left to right to find
the occurrences of 1s. Once a ‘1’ is found, get its position (0, 1, 2, 3, …, 15) from
the OTP DNA key sequence and get the corresponding DNA sequence from the
generated OTP DNA sequence. The result will be given below.
DNA sequences: TTAAGG GCGGTT CCTAAC TTAACG GCGCAT CATGCA
TTGGGC TAGCCG TTTCGT CGCATC ATTCCG GCATGT.
c Replace the last attached DNA sequence and find the complement of the remaining
DNA sequences. The final result will be: AATTC CGCCA GGATT AATTG
CGCGT GTACG AACCC ATCGG AAAGC GCGTA TAAGG CGTAC. This is
our cipher text.
250 S. Paul, T. Anwar and A. Kumar

4.3 Decryption algorithm


a Once cipher text DNA sequences is received, i.e. AATTC CGCCA GGATT
AATTG CGCGT GTACG AACCC ATCGG AAAGC GCGTA TAAGG CGTAC,
take a complement of it. Find the corresponding sequence from the OTP DNA
sequence and attach the last position bit. The result will be TTAAGG GCGGTT
CCTAAC TTAACG GCGCAT CATGCA TTGGGC TAGCCG TTTCGT CGCATC
ATTCCG GCATGT.
b Find the position of the DNA sequences obtained in the OTP DNA sequence and
form a binary sequence by putting 1s for all such occurrences. Other positions in the
binary sequence should be 0. The result will be (0011011111110111).
 Step 1: Arrange the obtained binary sequence column-wise in a 4*4 matrix,
say MN.

0 0 1 0
0 1 1 1
1 1 1 1
1 1 1 1

 Step 2: Take the same DNA sequences CGATTAAG to its binary form, i.e.
0110001111000010, and arrange column-wise in a 4*4 matrix, say N.

0 0 1 0
1 0 1 0
1 1 0 1
0 1 0 0

 Step 3: Perform XOR operation between MN and N to obtain a matrix, say M.

0 0 0 0
1 1 0 1
0 0 1 0
1 0 1 1

 Step 4: Form a mirror image of a matrix, say Z.

0 0 0 0
1 0 1 1
0 1 0 0
1 1 0 1

c Arrange column-wise the elements of matrix A in a row to form a binary sequence,


which is (01010011 01000101) and obtained desire plain text is SE.
An innovative DNA cryptography technique for secure data transmission 251

5 Illustration 2

5.1 Key generation


Let us take a plain text (SEA) to encrypt and decrypt using our proposed method and
convert it into the ASCII code and the subsequent binary code, i.e. 01010011 01000101
01000001 = 24 bits.

S E A

Now the length of the DNA key sequences becomes (24*5) = 120.
Generate key DNA sequences of length 120: CGTAC TAAGG GCGTA CCTTT AAAGC
ATCGG AACCC GTACG GGCGT AATTG GGATT CGGTA CGCCA AATTC GACCG
TAGGC AAAAA AAAAA AAAAA AAAAA AAAAA AAAA AAAAA AAAAA.
OTP DNA sequences.
1 Ex: AAAAA AAAAA AAAAA AAAAA AAAAA AAAA AAAAA AAAAA
TAGGC. GACCG AATTC CGCCA CGGTA GGATT AATTG GGCGT GTACG
AACCC ATCGG AAAGC CCTTT GCGTA TAAGG CGTAC.
2 Take a complement of the above nucleotides from the OTP DNA sequences. Ex:
TTTTT TTTTT TTTTT TTTTT TTTTT TTTTT TTTTT TTTTTT TTTTT ATCCG
CTGGC TTAAG GCGGT GCCAT CCTAA TTAAC GCGCA CATGC TTGGG
TAGCC TTTCG GGAAA CGCAT ATTCC GCATG.
3 Consider it at positions 0, 1, 2, 3, 4, …, 23 and substitute them with A, C, G and T
correspondingly up to the end of the DNA sequences. Ex: TTTTTA TTTTTC
TTTTTG TTTTTT TTTTTA TTTTTC TTTTTG TTTTTT ATCCGA CTGGCC
TTAAGG GCGGTT GCCATA CCTAAC TTAACG GCGCAT CATGCA TTGGGC
TAGCCG TTTCGT GGAAAA CGCATC ATTCCG GCATGT.

5.2 Encryption algorithm


a Let binary plain text (SEA) be 01010011 01000101 01000001. Arrange the binary
plain text column-wise in matrix.
 Step 1: Arrange the binary plain text bit-wise and column-wise from left to right
in a 4*6 matrix, say Z.

0 0 0 0 0 0
1 0 1 1 1 0
0 1 0 0 0 0
1 1 0 1 0 1
252 S. Paul, T. Anwar and A. Kumar

 Step 2: A mirror image of the above matrix is obtained, say M.

0 0 0 0 0 0
0 1 1 1 0 1
0 0 0 0 1 0
1 0 1 0 1 1

 Step 3: Take randomly any DNA sequences which are equal to the length
of the binary plain text and arrange it column-wise in a 4*6 matrix, say N. Ex:
OTP DNA sequences are CGATTAAGGGGG and the binary numbers are
011000111100001010101010.

0 0 1 0 1 1
1 0 1 0 0 0
1 1 0 1 1 1
0 1 0 0 0 0

 Step 4: Apply XOR operation between matrices M and N to get a new matrix,
say MN.

0 0 1 0 1 1
1 1 0 1 0 1
1 1 0 1 0 1
1 1 1 0 1 1

b Arrange elements of matrix column-wise from left to right in a row. The result
will be (0111, 0111, 1001, 0110, 1001, 1111). Start scanning the binary sequence
from left to right to find the occurrences of 1s. Once a ‘1’ is found, get its position
(0, 1, 2, 3,…, 23) in the OTP DNA key sequence and get the corresponding DNA
sequence from the generated OTP DNA key sequence. The result will be given
below.
DNA sequences: TTTTTC TTTTTG TTTTTT TTTTTC TTTTTG TTTTTT ATCCGA
GCGGTT CCTAAC TTAACG CATGCA TTTCGT GGAAAA CGCATC ATTCCG
GCATGT.
c Replace the last attached DNA sequence and find the complement of the remaining
DNA sequences. The final result will be AAAAA AAAAA AAAAA AAAAA
AAAAA AAAAA TAGGC CGCCA GGATT AATTG GTACG AAAGC CCTTT
GCGTA TAAGG CGTAC. This is our cipher text.

5.3 Decryption algorithm


a Once cipher text DNA sequence, i.e. AAAAA AAAAA AAAAA AAAAA AAAAA
AAAAA TAGGC CGCCA GGATT AATTG GTACG AAAGC CCTTT GCGTA
TAAGG CGTAC, is received, take a complement of it. Find the corresponding
An innovative DNA cryptography technique for secure data transmission 253

sequence from the OTP DNA sequence and attach the last position bit. The result
will be TTTTTC TTTTTG TTTTTT TTTTTC TTTTTG TTTTTT ATCCGA GCGGTT
CCTAAC TTAACG CATGCA TTTCGT GGAAAA CGCATC ATTCCG GCATGT.
b Find the position of the DNA sequences obtained in step 1 from the OTP DNA
sequence and form a binary sequence by putting 1s for all such occurrences; other
positions in the binary sequence should be 0.
The result will be (0111, 0111, 1001, 0110, 1001, 1111).
 Step 1: Arrange the obtained binary sequence column-wise in a 4*6 matrix, say
MN.
0 0 1 0 1 1
1 1 0 1 0 1
1 1 0 1 0 1
1 1 1 0 1 1

 Step 2: Take DNA sequences CGATTAAGGGGG and their binary numbers


011000111100001010101010 and arrange them in a 4*6 matrix.
0 0 1 0 1 1
1 0 1 0 0 0
1 1 0 1 1 1
0 1 0 0 0 0

 Step 3: Perform XOR operation between MN and N to the obtained matrix


say M.
0 0 0 0 0 0
0 1 1 1 0 1
0 0 0 0 1 0
1 0 1 0 1 1

 Step 4: To shift column-wise of matrix M to form mirror image of matrix say Z.


0 0 0 0 0 0
1
0 1 1 1 0
0 1 0 0 0 0
1 1 0 1 0 1

c Arrange column-wise the elements of matrix A in a row to form a binary sequence,


which is (01010011 01000101, 01000001), and the desired plain text SEA is
obtained.
254 S. Paul, T. Anwar and A. Kumar

6 Simulation and results

The proposed algorithms were implemented in Java 8.0 and NetBeans 8.1, and the results
were documented. Screenshots that show how the simulation runs and how the results are
generated after the end of the simulation of a particular scenario are shown in the
following sections. The proposed algorithm is simulated using the Java 8.0 framework
using an Intel core i5 processor with a 4GB RAM (Figure 1).

Figure 1 Login form

6.1 Key generation


Figure 2 shows that the key generation of a given plain text. It also indicates the size of
the DNA key generation, which is helpful for splitting into sub-DNA sequences. The
plaintext is ‘BIT Mesra’ entered in required text field and generated size of DNA
sequences = 9*8*5 (size of key) = 360.

Figure 2 Key generation


An innovative DNA cryptography technique for secure data transmission 255

A DNA key generation using a cryptosystem accessed in the mobile device using struts
and MVC structure is shown in Figure 3.

Figure 3 Key generation in mobile phone

6.1.1 Mobile DNA key generation cryptosystem


An encryption algorithm is implemented in Java and NetBean frameworks. It is shown in
web browser in Figure 4.

Figure 4 Encryption
256 S. Paul, T. Anwar and A. Kumar

6.2 Encryption cryptosystem


An encryption algorithm cryptosystem in mobile application is shown in Figure 5.

Figure 5 Encryption in mobile phone

Mobile Encryption Cryptosystem

6.2.1 Mobile encryption cryptosystem


The decryption algorithm cryptosystem is used to decrypt DNA sequence in the desired
plain text. It is implemented in decrypt action Java file, a screenshot of which is shown in
Figure 6.

Figure 6 Decryption
An innovative DNA cryptography technique for secure data transmission 257

6.3 Decryption cryptosystem


6.3.1 Mobile decryption cryptosystem
For security purposes, it is accessed in a mobile device and by using a mobile device,
message is sent to the registered email ID on the receiver side (Figures 7 and 8). The
receiver receives the encrypted DNA sequence and a plain text is obtained using
decryption cryptosystem (see Tables 4 and 5).

Figure 7 Mobile decryption form

Figure 8 Decryption in mobile phone


258 S. Paul, T. Anwar and A. Kumar

Table 4 Encryption time analysis for proposed algorithm

Test Plaintext size Cipher text size Key size Encryption time of proposed algo. (ms)
Test 1 8 103 320 16
Test 2 10 135 400 18
Test 3 20 360 800 28
Test 4 40 642 1600 42
Test 5 80 1289 3200 84
Test 6 100 1560 4000 112
Test 7 500 8016 20,000 486

Table 5 Decryption time analysis for proposed algorithm

Test Plaintext size Cipher text size Key size Decryption time of proposed algo. (ms)
Test 1 8 103 320 41
Test 2 10 135 400 42
Test 3 20 360 800 57
Test 4 40 642 1600 123
Test 5 80 1289 3200 310
Test 6 100 1560 4000 415
Test 7 500 8016 20,000 1896

7 Comparison study

We have compared our algorithm with those in Pramanik and Setua (2004) and Kaundal
(2014) (Figures 9–11) and the results are given in Table 6.

Figure 9 Size analysis (time) for encryption algorithm

Test size
An innovative DNA cryptography technique for secure data transmission 259

Figure 10 Size analysis (time) for decryption algorithm

Figure 11 Comparative size analysis (time) for encryption and decryption


Table 6

260
S. Paul, T. Anwar and A. Kumar
Comparison study of proposed algorithm and existing algorithms
Decryption time Decryption time Decryption time Encryption time Encryption time Encryption time
Plaintext Cipher Key
Test of existing of existing Algo. of proposed of existing of existing Algo. of proposed
size text size size
Algo.1 (ms)* 2 (ms)** Algo. (ms) Algo.1 (ms)* 2 (ms)** Algo.(ms)
Test 1 10 135 400 37 49 42 15 20 18
Test 2 20 360 800 44 68 57 27 35 28
Test 3 40 642 1600 110 159 123 38 49 42
Test 4 80 1289 3200 270 414 310 70 96 84
Sources: *Pramanik and Setua (2004)
**Kaundal (2014)
An innovative DNA cryptography technique for secure data transmission 261

8 Conclusion and future scope

In this paper, we have implemented a new DNA encryption and decryption algorithm
based on symmetric key exchange, matrix operation and XOR technique. Large messages
can be encrypted using OTP DNA sequence in lesser time with no issues with respect to
storage of the messages. We use DNA sequence for encryption and decryption to avoid
storage problem. Random DNA key sequence in DNA symmetric key cryptography
makes it secure from attacks. Matrix operation technique makes encryption algorithm
more powerful and less time-consuming. DNA cryptography makes it different from
traditional cryptography. XOR operation between mirror image of the matrix and DNA
sequence gives unbroken result, which makes this encryption algorithm unique.
Time complexity of the proposed encryption and decryption algorithm is O(n). Every
algorithm has limitations. We have not been able to test this algorithm for large text
messages because the secret key used here is small in size like an ATM pin code, login
password or any small text message. We will consider extrapolating it as our future work.
This algorithm is highly secure and protected. The authors have used the MVC
architecture framework GlassFish Server to develop encryption and decryption
algorithms. The system as a whole is a little difficult to set up for all configurations;
however, it is easy to use in different mobile devices. Communication of messages
through a mobile device is secure and difficult to break.

References
Adleman, L.M. (1994) “Molecular computation of solution to combinatorial problems’, Science,
Vol. 11, No. 266, pp.1021–1024.
Amin, S.T., Saeb, M. and Salah, E-G. (2006) ‘A DNA-based implementation of YAEA encryption
algorithm’, Proceedings of the International Conference on Computational Intelligence,
20–22 November, San Francisco, CA, pp.120–125.
Borda, M., and Tornea, O. (2010) ‘DNA secret writing techniques’, Proceedings of the 8th IEEE
International Conference on Communications, 10–12 June, Bucharest, pp.451–456.
Chen, J. (2003) ‘A DNA-based biomolecular cryptography design’, Proceedings of the IEEE
International Symposium on Circuits and Systems, Vol. 3, 25–28 May, Bangkok, Thailand,
pp.III-822–III-825.
Conrad, E. (2006) Explanation of three types of cryptosystem. Available online at: http://www.
giac.org/cissp-papers/52.pdf
Cox, J.P.L. (2001) ‘Long-term data storage in DNA’, Trends in Biotechnology, Vol. 19, No. 7,
pp.247–250.
Cui, G., Qin, L., Wang, Y. and Zhang, X. (2008) ‘An encryption scheme using DNA technology’,
Proceedings of the 3rd International Conference on Bio-Inspired Computing: Theories and
Applications, 28 September–1 October, Adelaide, SA, pp.37–42.
Kaundal, A.K. (2014) Feistel inspired structure for DNA cryptography. Available online at:
http://dspace.thapar.edu:8080/dspace/bitstream/10266/2843/1/801233002_Ashish.pdf.
Kumar, D. and Singh, S. (2011) ‘Secret data writing using DNA sequences’, Proceedings of the
IEEE International Conference on Emerging Trends in Networks and Computer
Communications, 22–24 April, Udaipur, pp.402–440.
Lai, X-S. and Zhang, L. (2008) ‘A novel generation key scheme based on DNA’, Proceedings of
the International Conference on Computational Intelligence and security, 13–17 December,
Suzhou, pp.264–266.
262 S. Paul, T. Anwar and A. Kumar

Lai, X.J. (2010) ‘Asymmetric encryption and signature method with DNA technology’, Science
China Information Sciences, Vol. 53, No. 3, pp.506–514.
Mandge, T. and Choudhary, V. (2013) ‘A DNA encryption technique based on matrix
manipulation and secure key generation scheme’, Proceedings of the International Conference
on Information Communication and Embedded Systems, 21–22 February, Chennai,
pp.47–52.
Pramanik, S. and Setua, S.K. (2004) ‘DNA cryptography’, Proceedings of the 7th IEEE
International Conference on Electrical & Computer Engineering, 20–22 December, Dhaka,
pp.551–554.
Tanaka, K., Okamoto, A. and Saito, I. (2005) ‘Public-key system using DNA as a one-way
function for distribution’, Biosystems, Vol. 81, No. 1, pp.25–29.
Tornea, O. and Borda, M.E. (2013) ‘Security and complexity of a DNA-based cipher’,
11th Roedunet International Conference, 17–19 January, Sinaia, pp.1–5.
Wang, X. and Zhang, Q. (2009) ‘DNA computing-based cryptography’, Proceedings of the
4th International Conference on Bio-Inspired Computing, 16–19 October, Beijing, pp.1–3.
Wang, Z. and Yu, Z. (2011) ‘Index-based symmetric DNA encryption algorithm’, Proceedings of
the 4th International Congress on Image and Signal Processing, 15–17 October, Shanghai,
pp.2290–2294.
Zhang, Y., Fu, B. and Zhang, X. (2012) ‘DNA cryptography based on DNA fragment assembly’,
Proceedings of the IEEE International Conference on Information Science and Digital
Content Technology, Vol. 1, 26–28 June, Jeju, pp.179–182.

You might also like