Tarun Kumar Introduction To Dna Computing 2023
Tarun Kumar Introduction To Dna Computing 2023
Contents
1. Introduction 2
2. Fundamentals of DNA computing 5
2.1 Background of human DNA 6
2.2 DNA computing 17
2.3 Operations of DNA computing 22
3. Applications of DNA computing 25
4. Conclusions and future works 33
References 34
About the authors 37
Abstract
Currently, Deoxyribonucleic Acid (DNA) computing is considered as one of the
advanced fields of Information Technology (IT) industries. DNA computing is a tech-
nique inspired from biological science that makes the use of DNA bases, namely
Adenine (A), Guanine (G), Thymine (T), and Cytosine (C), for operations and as an infor-
mation carrier. L. M. Adleman first brought forth this concept in 1994. DNA computing
has many advantages, such as parallel computing, large storage capability, minimal
power requirement, and molecular computation. Nowadays, it is used in different fields,
including cryptography, steganography, big data storage, quantum computing, DNA
chip, and medical application. In this chapter, the fundamentals of human DNA and
DNA computing, including the structure of DNA, polymerase chain reaction, history,
advantages, disadvantages, operations of DNA computing, etc., have been discussed
in detail. In addition, many applications of DNA computing in different fields, namely
cryptography, steganography, big data, cloud computing, DNA chip, medical research
are also presented, which can be highly beneficial for the researchers, academicians,
and other professionals doing their research in DNA computing.
Abbreviations
A adenine
ABE attribute-based encryption
AES advanced encryption standard
ATP adenosine triphosphate
C cytosine
DNA deoxyribonucleic acid
dNTPs deoxynucleoside triphosphates
ER endoplasmic reticulum
G guanine
GA genetic algorithm
H hydrogen
HPP hamiltonian path problem
IBE identity-based encryption
IT Information Technology
Mg magnesium
Mn manganese
NP nondeterministic polynomial
OH hydroxyl group
PCR polymerase chain reaction
RNA ribonucleic acid
T thymine
U uracil
1. Introduction
DNA is a long molecule that contains the majority of the genetic
information needed for the reproduction and development of the body.
All cells in the human body have the same DNA, which is responsible
for all aspects of the cell. The coding scheme of the components of the
DNA molecule is mainly responsible for the complexity and organization
of all human beings. A double helix structure is formed by two biopolymer
strands curving in the opposite direction in a DNA molecule [1]. Here, a
nucleotide can be defined as an organic molecule, which is the basic building
block of DNA and RNA. Each nucleotide is made up of three distinct parts:
(1) a 5-carbon sugar (2) a nitrogen base, and (3) a phosphate group. There are
four nitrogen bases in DNA identifying A, G, T, and C. In DNA, A is always
paired with T, and C is always paired with G as per the base-pairing law [2].
Combinations of random DNA bases can be used to produce a large number
of DNA sequences. The structure of DNA is depicted in Fig. 1. In DNA
computing, genetic information is encoded in many computer systems using
the concept of DNA, molecular biology, hardware, and biochemistry. It is a
form of parallel computing that takes the advantage of a large number of dif-
ferent DNA molecules. Experiment, theory, and implementation are the
Introduction to DNA computing 3
Sugar-Phosphate Backbone 3¢
5¢
5¢
3¢
Complementary Bases (Paired via Hydrogen Bonds)
solve and calculate scientific problems and equations that are difficult to
solve using the current data sharing and storage techniques. There are
two main reasons for its popularity. It requires: (1) a least amount of storage,
and (2) minimal power. DNA can store memory space at a density of about 1
bit per cubic nanometer [6]. High computation power by combining the
DNA bases and the complex structure of DNA attracts a large number of
researchers to use DNA computing in a variety of fields. One of the most
critical issues in DNA computing is how researchers can reduce the likeli-
hood of errors occurring during execution. Several studies have been carried
out to show that by using the appropriate encoding technique, the efficiency
of DNA computing can be greatly improved [7].
DNA computing is now widely used in many fields, including cryptog-
raphy [8], nanotechnology [9], combinatorial optimization [10], Boolean
circuit construction [11], data storage [12], quantum computing [13], and
many more [14]. Nowadays, around 2.5 quintillion bytes of data are pro-
duced every day by humans. As most of the data are transmitted over the
internet, numerous attackers and malicious users always try to achieve
unauthorized access to the data. Thus, the application of DNA computing
in cryptography is most popular to encrypt any data. In DNA-based cryp-
tography, data are encrypted by using the nitrogen bases, i.e., A, T, G, and
C, instead of 0 and 1. Many researchers have proposed schemes to improve
data security by using DNA computing [15]. Here, a complete DNA
encoding character set must include alphabets, numbers, and special charac-
ters. The mapping table, which provides the complete characters of DNA
must be automatically generated [16]. Otherwise, again data may face secu-
rity issues. The term steganography refers to the practice of concealing the
presence of data. In DNA-based steganography, data are hidden using the
DNA bases. This technique is straightforward that only transforms the plain-
text into a DNA sequence. Basically, it does not encrypt any data, and hides
the plaintext, i.e., DNA sequence of the plaintext within other DNA
strands. Anyone who knows the primers can effortlessly find the location
of the original DNA sequence or plaintext.
DNA computing is also used in quantum computing. Quantum com-
puting aims to create computers focused on quantum theory that is capable
of dealing with the existence and behavior of all quantum aspects, while
DNA computing can focus on storage. Therefore, a combination of both
fields can change the world. The DNA molecules can be directly used in
quantum computers either by using nuclear magnetic resonance or by dopp-
ing the DNA molecules for implementing the quantum gate. Companies,
such as Microsoft, IBM, Google, etc., are investing in quantum computing.
Introduction to DNA computing 5
do not code for proteins. There are two copies of every gene in the human
body in which a single copy is inherited from the mother’s genes, and
another copy is inherited from the father’s genes. Most of the genes in all
human bodies are almost the same. However, there are differences in the
number of genes among people. This difference is less than 1% of the total
genes. Here, Alleles are the forms of the identical gene with minor changes
in the sequence of DNA bases, and these minor changes are responsible for
the unique physical features of every person.
molecule. It is the primary source of energy in human cells. There are two
ways to distinguish ribonucleotide and nucleotide:
(i) It contains a ribose sugar, which is distinguished from deoxyribose
sugar by the presence of the hydroxyl group on the 20 carbon rather
than the Hydrogen (H).
(ii) In RNA, the Uracil (U) base replaces the thymine base. Thus, there are
four bases in RNA, namely A, U, C, and G.
Nucleotides can be bound to each other in two ways:
(i) As shown in Fig. 4, 3’-OH of one nucleotide is bound to the
50 -phosphate group of another nucleotide. Thus, it forms a pho-
sphodiester bond, which is a tight covalent bond. It gives the direction
Introduction to DNA computing 9
molecule is extremely important. It also must be noted that the human DNA
molecules are linearly structured. However, bacterial DNA is often circular.
Circular molecules can be simply constructed by forming a phosphodiester
bond between the last and first nucleotide. The ability for processing DNA is
very important in genetic engineering, as well as in DNA computing [21].
(6) Final Hold: This step is mainly used for cooling the reaction chamber
from 4 °C to 15 °C for an unspecified period of time.
Step 1: The first step encodes the vertices and edges of the graph into
DNA bases and generates a random path through the graph. For every
vertex u V, a random strand consisting of 20 nucleotides is synthesized.
Su ¼ AATGCCTAGT
|fflfflfflfflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflfflfflfflffl}TCCTAATGGC
|fflfflfflfflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflfflfflfflffl}
au bu
Sv ¼ TAGGACTAGG
|fflfflfflfflfflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflfflfflfflfflffl}CTTCAAGTAT
|fflfflfflfflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflfflfflfflffl}
av bv
Sw ¼ CCGTATGATC
|fflfflfflfflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflfflfflfflffl}CGTACGGCTT
|fflfflfflfflfflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflfflfflfflfflffl}
aw bw
Here, Su, Sv and Sw represent the strand for vertex u, v and w, respec-
tively. For every edge u ! v E, an opportune strand is synthesized by
concatenating the 30 end of Su and 50 end of Sv, i.e., bu and av, respec-
tively. In the similar way, the edge v ! w can be synthesized by
concatenating the 30 end of Sv and 50 end of Sw, i.e., bv and aw, respec-
tively as given below:
Su!v ¼ TCCTAATGGC
|fflfflfflfflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflfflfflfflffl}TAGGACTAGG
|fflfflfflfflfflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflfflfflfflfflffl}
bu av
Sv!w ¼ CTTCAAGTAT
|fflfflfflfflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflfflfflfflffl}CGTACGGCTT
|fflfflfflfflfflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflfflfflfflfflffl}
bv aw
Sv ¼ ATCCTGATCCGAAGTTCATA
where Sv is the complementary edge of Sv. The ligation reaction takes
place on encoded vertex and edges to generate DNA strands that give
a random path through the graph.
Step 2: The DNA sequences generated in step 1 are expanded by PCR
with S0 and S6 as primers, a short sequence with complementary bases.
This step gives the routes from the starting to the final specified node of
the graph.
Step 3: In this step, the length is calculated on the result of step 2 using the
agarose gel to select the route with exact 7 nodes, which implies
20 ∗ 7 ¼ 140 basepair. This step selects the routes that visit the required
number of nodes.
Introduction to DNA computing 19
Step 4: The fourth step is used to verify the traversing of each node of the
graph. The strand Su!v corresponding to the vertex v is selected as it
belongs to the route incoming for the vertex v.
Step 5: Finally, the Hamilton path is calculated in this step. If a path is
generated in step 1, all the steps are skipped. Otherwise, steps 2 to 4
are executed.
The aforementioned steps use DNA computing to get the Hamiltonian
path. Adleman also observes that the time is increased linearly with the size
of the graph. Thus, Adleman has proved high parallelism capabilities of
DNA computing by solving NP-complete problem, i.e., HPP, in polyno-
mial time, which needs exponential time by the traditional system [3].
Although the HPP is a NP-complete problem, but, Adleman’s experi-
ment doesn’t ensure that DNA computing can be used to solve any other
NP-complete problem. Adleman’s DNA computing-based design is trivial
as when the number of nodes is increased, the number of DNA
computing-based components is also increased. So, biochemists and com-
puter scientists have started to explore this new field. Lipton has extended
Adleman’s model in such a way that biological computers can change the
way of computation [26]. At first, Lipton has generalized Adleman’s solution
and tried to solve the satisfiability problem, i.e., a basic NP-complete prob-
lem. The main contribution of Lipton’s solution is the way to encode a
binary string into DNA strands. However, there are some major concerns
in DNA computing:
(1) Its computational model is mostly based on molecular techniques to
solve any particular issue. The variety of problems leads to discrepancies
in computing systems and there is also no coding model and standard in
DNA computing.
(2) DNA computing is prone to errors. These are mainly randomly gener-
ated DNA sequences and the chances to occur error increase in all the
experimental stages.
(3) There are no mathematical models to prove the concept of DNA com-
puting, which is very critical in many sensitive computational problems.
processes require human intervention. There are some other major disad-
vantages of DNA computing as mentioned below:
(1) Requires High Memory: In DNA computing, a large amount of
memory is required to generate a set of solutions for relatively simple
problems. Even though DNA can store or save a trillion times more
data, if a significantly large problem needs to be resolved, the technique
by which the data is handled requires a large number of DNA strands.
(2) Accuracy: The synthesis of DNA is prone to errors like mismatching
pairs, and it is mainly dependent on the accuracy or the correctness of
the involved enzymes. The likelihood of error increases exponentially
and must limit the number of operations until the risk is higher than
producing the correct outcome. Due to this, DNA computing cannot
be applied in sensitive applications.
(3) Resource-Intensive: All the phases of parallel operations must require
time in days or hours determined by mechanical or human intervention
in many steps. As DNA strands are made for a particular problem, for
each and every new problem, a new DNA strand should be created
that is more critical and time-consuming. Because of the vast parallelism
of DNA computing, algorithms can be performed in polynomial
time. However, they are very limited to applying for small instances
of the problem as they need the creation of an unobstructed space of
solution.
(4) Non-Replaceable: Traditional computers cannot be replaced by
DNA computers at this time due to their high cost. In addition,
DNA computers are not flexible, as well as are not easily programmable.
Here, users cannot just sit with a familiar keyboard and start typing for
programming [37]. They must need to understand all the basic details of
molecular biology, DNA computing, hardware, and computer pro-
gramming language.
(6) DNA Encoding: In DNA encoding, the binary value of any data or
plaintext is converted into DNA bases by using DNA computing. It is
one of the popular operations of DNA computing. For example, a
DNA encoding rule can be defined as 00-A, 01-T, 10-G, and 11-C.
This implies if there are binary values as 00, 01, 10, and 11 in the plain-
text, they can be converted into A, T, G, and C, respectively. It does
not matter in which manner or sequence the binary values are repre-
sented in the plaintext. Anyone can assign any rule to convert the binary
values into DNA bases. Thus, a DNA encoding rule can be applied to
the binary values of any plaintext. Table 2 shows an example of the
DNA encoding rule.
(7) DNA Complementary Rule: The complementary pair-rule assigns a
DNA base to each nucleotide base. To make an algorithm more
complex, a researcher can create his or her own complementary rule
by using the DNA bases. As there are four DNA bases, i.e., A, C, G,
and T, the complementary pair-rule can be assigned as A-T and
Introduction to DNA computing 25
C-G, which means if there is A, it can be replaced with T and vice versa.
As there are 4 DNA bases, there can be 4!, i.e., 24 encoding rules to
transform binary values of any data into DNA bases. After converting
the binary values into DNA bases, DNA bases can be converted into
another DNA bases by using the complementary pair-rule [15].
For example, if the binary value of any data is 00011011, it can be
converted into DNA bases as ATGC by using any DNA encoding rule.
Here, A, T, G, and C are 00, 01, 10, and 11, respectively. Then, ATGC
can be converted into TACG by using the complementary pair rule.
This rule is popular in DNA cryptography.
(8) DNA XOR Rule: Because of the recent advancement of DNA com-
puting, many researchers are nowadays using the DNA XOR rule in
related fields. In DNA computing, the DNA XOR operation is iden-
tical to the XOR operation. Table 3 shows a DNA computing-based
XOR rule.
For example, if there is any DNA sequence ATGCCGTA and a key or DNA
strand CTAGTAGC, it can be converted into another DNA sequence
TTGCGGGT by using the DNA XOR rule of Table 3. Then, the original
DNA sequence can be retrieved by using the newly generated DNA
sequence, i.e., TTGCGGGT and original key CTAGTAGC. To retrieve
the original DNA sequence, again the same DNA XOR rule must be used.
high storage capacity and massive parallelism of DNA with the search
capability of GAs. In DNA computing, GA is one of the best solutions
to break the limit of the brute-force method. As 1 g of DNA has 1021
DNA bases, the results of each generation of GA can be easily encoded
in DNA bases by using the binary form. A large population can carry a
large range of genetic diversity. Thus, in a few generations, it can gen-
erate high-fitness chromosomes, and the size of the search space is effec-
tively reduced. In addition, if there is an experiment in vitro operations
on DNA, it integrally includes errors. These errors can be ignored by
executing GAs than by implementing deterministic algorithms. Here,
errors can be referred to as contributing factors in GA.
In 1997, Deaton et al. [42] have proposed a GA based on DNA
computing for efficient encoding. Yoshikawa et al. [43] have combined
pseudo-bacterial GA with the DNA encoding method. In 1999, Chen
et al. [44] have implemented DNA computing-based GA in a labora-
tory to solve some problems, such as the royal road, Max 1 s, and cold
war problems. Wood and Chen [45] have proposed a DNA strand
design that is well-matched for the royal road problem by using a
GA. They have used the vitro evolution started with a haphazard
population-based on DNA bases. In 2004, Yuan et al. [46] have
designed a DNA computing-based GA to solve the maximal clique
problem that is accomplished to produce an accurate solution within
a few rounds. The simulation of Yuan and Chen indicates that the time
required for their scheme is linear with the number of vertices of the
particular network.
(3) Cryptography: Information security plays a major role in several areas
like military relations, confidential business, financial institutions, and
so on. In conventional systems, customers or users are restricted to their
own domain. In today’s advanced technologies, users are much inter-
ested to store and access data from outside of their domain. As a result,
data security has become extremely important due to the involvement
of numerous attackers and hackers, who are constantly attempting to
hack users’ personal and sensitive data or file for their own gain or to
generate revenue. They often use their fake data to replace the original
data. Thus, users’ data may again face data security problems.
Several cryptographic techniques are already proposed by researchers
for data transfer. Identity-Based Encryption (IBE) was first introduced by
Shamir [47]. Here, the data sender defines an identity that should be mat-
ched by the recipient to decrypt the data. After some years, a novel
28 Tarun Kumar and Suyel Namasudra
encryption key or secret key compound. This means that the encryp-
tion key contains both the PCR primer pairs and public key, while the
decryption key contains both the complementary primer pairs and pri-
vate key [57]. To communicate any data, two primers are shared
between the sender and receiver in this technique through a safe chan-
nel before starting the data encryption processes.
In the process of data encryption, algorithms like RSA, Advanced
Encryption Standard (AES), etc., may be used as the preprocessing stage.
Then, a coding rule converts the ciphertext into the corresponding DNA
strand. Thus, a new ciphertext is generated. As shown in Fig. 10, DNA
cipher refers to the ciphertext of the data in the form of a DNA sequence
and plaintext refers to the binary form of the data. The DNA cipher
is surrounded by secret primers, which are then combined with
other unknown DNA strands. PCR technique is used to generate these
unknown DNA strands. The sender then sends the mixed DNA to the
sender. The receiver obtains the block DNA cipher by performing PCR
with the aid of the secret primer, and then, reverses the entire data
encryption operation. No one can retrieve the DNA cipher without
any prior knowledge of two primers.
The above-mentioned PCR approach has several implications, such as Cui
et al. [58] have suggested a data encryption approach based on PCR ampli-
fication and DNA coding. Tanaka et al. [59] have introduced a public key
scheme based on a DNA computing-based one-way function. Yamamoto
et al. [60] have proposed a novel encryption scheme that uses both modern
algorithms and molecular techniques to provide two-level security by using
the PCR-based large-scale DNA space. If one security level is breached, the
system is kept secure by using another level. However, one of the major
issues of this PCR-based security is the exchanging of the secret key between
the sender and recipient.
these repeated DNA peaks are isolated from bulk genomic DNA as
distinct peaks. It is a lab procedure, which is mainly used to solve a
criminal case. Here, the DNA sample of the crime scene is matched
with a suspect’s DNA sample. If both the DNA samples are the same,
then in most of the cases, the suspect is considered guilty for the crime.
Otherwise, an investigation is conducted in some other aspects. DNA
fingerprinting is also used for paternity determination [67].
(7) Boolean Circuit: The Boolean circuit is considered an important
Turing-based correspondent model of parallel computation. Here, a
Boolean circuit that is n input bounded fan in can be visualized as
an acyclic directed graph, S. There are mainly two types of node in
the graph, namely input node with zero in-degree and gate node with
at most two in-degree. Each input node is connected with a Boolean
variable from the input set and each gate node is connected with a
Boolean function. The collection of all such functions is known as
circuit basis.
Researchers have developed DNA computing-based Boolean cir-
cuits. The first DNA computing-based Boolean circuit was proposed
by Ogihara and Ray [5]. They have implemented a real-time simula-
tion of the depth of the Boolean circuit. In [68], it has been estimated
that the time complexity of the Boolean circuit must be proportional
to the circuit’s size. DNA computing-based Boolean circuit is based
on the polymerase chain reaction. Here, the logical gates consist of
one DNA strand only, which significantly decreases leakage reactions
and restoration steps of signal such that the performance of the circuit
is improved. A large logical circuit can be built from the gates by sim-
ple cascades. In particular, it has been shown a short and compact logic
circuit that calculates the four-bit input square root function [69].
Here, R1, R2, R3, and R4, are the input bits and the total number
of output bits is 8. The first four output bits represent one position
of the square root, while the next four bits represent the first decimal
position.
(8) Clustering: Clustering deals with the construction of meaningful
relationships in a high-dimensional complex dataset. DNA computing
can be used to develop clustering techniques. This technique is suit-
able, when dealing with huge datasets and there are heterogeneous
characters in the dataset. Nowadays, clustering is used in many appli-
cation areas, such as facility allocation [70], signal processing [71],
astronomy [72], medical data analysis [73], and many more. The main
32 Tarun Kumar and Suyel Namasudra
tiny parts, and organic edges. The job scheduling problem can be easily
managed by a standard computer or by a human. In [76], Ibrahim et al.
have proposed a DNA computing-based algorithm to solve the job
scheduling problem. They have added some operations to the evolu-
tionary operations to achieve better performance. Tian et al. [77] have
proposed another DNA computing-based algorithm in which an
encoding scheme for the job shop scheduling problem is developed
along with some novel DNA computing-based operations. Here,
all possible solutions are made after an initial result or solution is con-
structed. Then, DNA computing-based operations are utilized for
finding the optimal schedule. The complexity of DNA computing-
based algorithm of Tian et al. is O(n2). In addition, the final strand’s
length of the optimal schedule is always within the appropriate range.
References
[1] L.M. Adleman, Computing with DNA, Sci. Am. 279 (2) (1998) 54–61.
[2] J.D. Watson, T.A. Baker, S.P. Bell, A. Gann, M. Levine, R. Losick, Molecular Biology
of the Gene (International Ed.), Pearson Education, 2004.
[3] L.M. Adleman, Molecular computation of solutions to combinatorial problems, Science
266 (5187) (1994) 1021–1024.
[4] D.I. Lewin, DNA computing, Comput. Sci. Eng. 4 (3) (2002) 5–8.
[5] M. Ogihara, A. Ray, Simulating Boolean circuits on a DNA computer, Algorithmica
25 (2) (1999) 239–250.
[6] S. Tagore, S. Bhattacharya, M. Islam, M.L. Islam, DNA computation: application and
perspectives, J. Proteom. Bioinform. 3 (7) (2010).
[7] D. Boneh, C. Dunworth, R.J. Lipton, J. Sgall, Making DNA computers error resistant,
DNA Based Comput. II 44 (1996) 163–170.
[8] S. Namasudra, G.C. Deka, Introduction of DNA computing in cryptography, in:
S. Namasudra, G.C. Deka (Eds.), Advances of DNA computing in cryptography,
Taylor & Francis, 2018, pp. 17–34.
[9] R. Deaton, J. Chen, J.-W. Kim, M.H. Garzon, D.H. Wood, Test tube selection of
large independent sets of DNA oligonucleotides, in: Nanotechnology: Science and
Computation, Springer, 2006, pp. 147–161.
[10] G.G. Owenson, M. Amos, D.A. Hodgson, A. Gibbons, DNA-based logic, Soft
Comput. 5 (2) (2001) 102–105.
[11] G. Paun, G. Rozenberg, A. Salomaa, DNA Computing: New Computing Paradigms,
Springer, 2005.
[12] C. Bancroft, T. Bowler, B. Bloom, C.T. Clelland, Long-term storage of information in
DNA, Science 293 (5536) (2001) 1763.
[13] S. Namasudra, G.C. Deka, R. Bali, Applications and future trends of DNA computing,
in: S. Namasudra, G.C. Deka (Eds.), Advances of DNA Computing in Cryptography,
Taylor & Francis, 2018, pp. 181–192.
[14] P. Pavithran, S. Mathew, S. Namasudra, G. Srivastava, A novel cryptosystem based on
DNA cryptography, hyperchaotic systems and a randomly generated Moore machine
for cyber physical systems, Comput. Commun. 188 (2022) 1–12.
[15] S. Namasudra, Fast and secure data accessing by using DNA computing for the cloud
environment, IEEE Trans. Serv. Comput. (2020), https://doi.org/10.1109/TSC.2020.
3046471.
[16] H. Dongming, D.-F. Zhou, Y. Sheng, Y. Shaoliang, Z. Luozhi, Z. Xin, Image encryp-
tion using exclusive-OR with DNA complementary rules and double random phase
encoding, Phys. Lett. A 383 (9) (2019) 915–922.
[17] L. Kari, R. Kitto, G. Thierrin, Codes, involutions, and DNA encodings, in: Formal and
Natural Computing, Springer, 2002, pp. 376–393.
[18] S. Shah,, D. Limbachiya, and M. K. Gupta, “DNACloud: A potential tool for storing
big data on DNA,” arXiv preprint arXiv:1310.6992, 2013.
[19] A.C. Patel, C.G. Joshi, Deoxyribonucleic acid as a tool for digital information storage:
an overview, Indian J. Vet. Sci. Biotechnol. 15 (1) (2019) 1–8.
[20] D.L. Nelson, A.L. Lehninger, M.M. Cox, Lehninger Principles of Biochemistry,
Macmillan, 2008.
[21] J.D. Watson, F.H.C. Crick, A structure of deoxyribose nucleic acid, Nature 171
(1953) 737–738, https://doi.org/10.1038/171737a0.
[22] L. Garibyan, N. Avashia, Research techniques made simple: polymerase chain reaction
(PCR), J. Invest. Dermatol. 133 (3) (2013), https://doi.org/10.1038/jid.2013.1.
[23] W.B. Coleman, G.J. Tsongalis, Laboratory approaches in molecular pathology—the
polymerase chain reaction, in: Diagnostic Molecular Pathology, Academic Press,
2017, pp. 15–23.
Introduction to DNA computing 35
[24] L. Gonick, M. Wheelis, The Cartoon Guide to Genetics, Harper Perennial, 1991.
[25] K. Drlica, Understanding DNA and gene cloning: a guide for the curious, in:
Understanding DNA and gene cloning: a guide for the curious, ed. 2, John Wiley &
Sons, 1992.
[26] R.J. Lipton, Using DNA to solve NP-complete problems, Science 268 (4) (1995)
542–545.
[27] R.P. Feynman, D. Gilbert, Miniaturization, Reinhold, New York, 1961, pp. 282–296.
[28] E.B. Baum, Building an associative memory vastly larger than the brain, Science 268
(5210) (1995) 583–585.
[29] Q. Ouyang, P.D. Kaplan, S. Liu, A. Libchaber, DNA solution of the maximal clique
problem, Science 278 (5337) (1997) 446–449.
[30] Q. Liu, L. Wang, A.G. Frutos, A.E. Condon, R.M. Corn, L.M. Smith, DNA comput-
ing on surfaces, Nature 403 (6766) (2000) 175–179.
[31] L.M. Smith, R.M. Corn, A.E. Condon, M.G. Lagally, A.G. Frutos, Q. Liu, A.J.
Thiel, A surface-based approach to DNA computation, J. Comput. Biol. 5 (2)
(1998) 255–267.
[32] J.H. Reif, T.H. LaBean, M. Pirrung, V.S. Rana, B. Guo, C. Kingsford, G.S. Wickham,
Experimental construction of very large scale DNA databases with associative search
capability, in: International Workshop on DNA-Based Computers, Springer, Berlin,
Heidelberg, 2001, pp. 231–247.
[33] M. Sarkar, P. Ghosal, S.P. Mohanty, Exploring the feasibility of a DNA computer:
design of an ALU using sticker-based DNA model, IEEE Trans. Nanobioscience
16 (6) (2017) 383–399.
[34] S. Namasudra, R. Chakraborty, A. Majumder and N. R. Moparthi, “Securing multi-
media by using DNA based encryption in the cloud computing environment”, in ACM
Trans. Multimedia Comput. Commun. Appl., vol. 16, no. 3s, pp. 1–19, 2020, DOI:
https://doi.org/10.1145/3392665.
[35] S. Namasudra, P. Roy, Time saving protocol for data accessing in cloud computing,
IET Commun. 11 (10) (2017) 1558–1565.
[36] https://cs.stanford.edu/people/eroberts/courses/soco/projects/2003-04/dna-computing/
evaluation.htm, 2003 [Accessed on 12 May, 2021].
[37] J. Watada, R.B.A. Bakar, DNA computing and its applications, in: 2008 Eighth
international conference on intelligent systems design and applications, vol. 2, 2008,
pp. 288–294.
[38] L. Kari, S. Seki, P. Sosı́k, DNA Computing: Foundations and Implications, Handbook
of Natural Computing, Springer, 2012, pp. 1073–1127.
[39] G. Ventimiglia, S. Petralia, Recent advances in DNA microarray technology: an over-
view on production strategies and detection methods, BioNano Sci. 3 (4) (2013)
428–450.
[40] E. Czeizler, E. Czeizler, A short survey on Watson-Crick automata, Bull. EATCS
88 (3) (2006) 104–119.
[41] G.Z. Cui, Y. Liu, X. Zhang, New direction of data storage: DNA molecular storage
technology, Comput. Eng. Appl. 42 (26) (2006) 29–32.
[42] R. Deaton, R.C. Murphy, J.A. Rose, M. Garzon, D.R. Franceschetti, S.E. Stevens, A
DNA based implementation of an evolutionary search for good encodings for DNA
computation, in: Proceedings of 1997 IEEE International Conference on
Evolutionary Computation (ICEC’97), 1997, pp. 267–271.
[43] T. Yoshikawa, T. Furuhashi, Y. Uchikawa, The effects of combination of DNA coding
method with pseudo-bacterial GA, in: Proceedings of 1997 IEEE International
Conference on Evolutionary Computation (ICEC’97), 1997, pp. 285–290.
[44] J. Chen, E. Antipov, B. Lemieux, W. Cedeño, D.H. Wood, DNA computing
implementing genetic algorithms, in: Evolution as Computation, 1999, pp. 39–49.
36 Tarun Kumar and Suyel Namasudra
[45] D.H. Wood, J. Chen, Physical separation of DNA according to royal road fitness,
in: Proceedings of the 1999 Congress on evolutionary computation-CEC99 (cat.
No. 99TH8406), vol. 2, 1999, pp. 1011–1016.
[46] Y. Li, C. Fang, Q. Ouyang, Genetic algorithm in DNA computing: a solution to the
maximal clique problem, Chin. Sci. Bull. 49 (9) (2004) 967–971.
[47] A. Shamir, Identity-based cryptosystems and signature schemes, in: Workshop on the
theory and application of cryptographic techniques, Springer, Berlin, Heidelberg,
1984, pp. 47–53.
[48] R. Yanil, G. Dawu, W. Shuozhong, Z. Xinpeng, New fuzzy identity-based encryption
in the standard model, Informatica 21 (3) (2010) 393–407.
[49] A. Sahai, B. Waters, Fuzzy identity-based encryption, in: Annual international confer-
ence on the theory and applications of cryptographic techniques, Springer, Berlin,
Heidelberg, 2005, pp. 457–473.
[50] J. Bethencourt, A. Sahai, B. Waters, Ciphertext-policy attribute-based encryption, in:
2007 IEEE symposium on security and privacy (SP’07), IEEE, 2007, pp. 321–334.
[51] C.C. Lin, N.-L. Hsueh, A lossless data hiding scheme based on three-pixel block
differences, Pattern Recognit. 41 (4) (2008) 1415–1425.
[52] S. Voloshynovskiy, T. Pun, J. Fridrich, F.P. González, N. Memon, Security of data
hiding technologies, Signal Process. 83 (10) (2003) 2065–2067.
[53] S. Namasudra, P. Roy, P. Vijayakumar, S. Audithan, B. Balamurugan, Time efficient
secure DNA based access control model for cloud computing environment, Future
Gener. Comput. Syst. 73 (2017) 90–105.
[54] W. Xingyuan, Y. Hou, S. Wang, R. Li, A new image encryption algorithm based on
CML and DNA sequence, IEEE Access 6 (2018) 62272–62285.
[55] Y. Wang, Q. Han, G. Cui, J. Sun, Hiding message based on DNA sequence and recom-
binant DNA technique, IEEE Trans. Nanotechnol. 18 (2019) 299–307.
[56] M.I. Reddy, A.P.S. Kumar, K.S. Reddy, A secured cryptographic system based on
DNA and a hybrid key generation approach, Biosystems 197 (2020).
[57] M. Roy, S. Chakraborty, K. Mali, S. Mitra, I. Mondal, R. Dawn, D. Das,
S. Chatterjee, A dual layer image encryption using polymerase chain reaction amplifi-
cation and dna encryption, in: 2019 International Conference on Opto-Electronics and
Applied Optics (Optronix), IEEE, 2019, pp. 1–4.
[58] G. Cui, L. Qin, Y. Wang, X. Zhang, An encryption scheme using DNA technology, in:
2008 3rd International Conference on Bio-Inspired Computing: Theories and
Applications, IEEE, 2008, pp. 37–42.
[59] K. Tanaka, A. Okamoto, I. Saito, Public-key system using DNA as a one-way function
for key distribution, Biosystems 81 (1) (2005) 25–29.
[60] M. Yamamoto, S. Kashiwamura, A. Ohuchi, M. Furukawa, Large-scale DNA memory
based on the nested PCR, Nat. Comput. 7 (3) (2008) 335–346.
[61] V.I. Risca, DNA-based steganography, Cryptologia 25 (1) (2001) 37–49.
[62] A. Gehani, T. LaBean, J. Reif, DNA-based cryptography, in: Aspects of Molecular
Computing, Springer, 2003, pp. 167–188.
[63] S. Roy, S. Sadhukhan, S. Sadhu, S.K. Bandyopadhyay, A novel approach towards
development of hybrid image steganography using DNA sequences, Indian J. Sci.
Technol. 8 (22) (2015) 1–7.
[64] R. Gupta, R.K. Singh, An improved substitution method for data encryption using
DNA sequence and CDMB, in: International Symposium on Security in Computing
and Communication, Springer, Cham, 2015, pp. 197–206.
[65] T. Tuncer, E. Avci, A reversible data hiding algorithm based on probabilistic
DNA-XOR secret sharing scheme for color images, Displays 41 (2016) 1–8.
[66] B. Wang, Y. Xie, S. Zhou, C. Zhou, X. Zheng, Reversible data hiding based on DNA com-
puting, Comput. Intell. Neurosci. 2017 (2017), https://doi.org/10.1155/2017/7276084.
Introduction to DNA computing 37