Printer Friendly

A proposed algorithm using DNA-based cryptography and steganography techniques.

[FIGURE 1 OMITTED]

1. BACKGROUND AND INTRODUCTION

1.1 Cryptography Principles and Techniques

Cryptography (from the Greek kryptos, meaning "hidden") is the study of techniques and applications that hide the meaning of a message. This is also known as code making, or encryption, as distinguished from cryptanalysis, also known as code-breaking, or decryption [1]. There are a variety of different types of cryptography techniques that can be classified based on algorithm techniques into three categories as shown in figure 1:

1.2 Steganography Principles

Steganography (ste-g&n-o'gr&-f[bar.e]) (n.) The art and science of hiding information by embedding messages within other, seemingly harmless messages. Steganography works by replacing bits of useless or unused data in regular computer files (such as graphics, sound, text, or HTML) with bits of different, invisible information. This hidden information can be plain text, cipher text, or even images.

1.3 Steganography versus Cryptography Basically

The distinction between cryptography and Steganography is an important one, and is summarized by the following table:
Table 1: Comparison between Cryptography and
Steganography

Steganography                       Cryptography

Unknown message           Known message passing
Passing

Steganography             Encryption prevents an
prevents discovery of     unauthorized party from
the very existence of     discovering the contents
communication.            of a communication.

Little known              Common technology where
technology since          most of algorithm known
technology still being    by all.
developed for certain
formats.

Once detected             Strong current algorithms are
message is known.         currently resistant to attack,
                          and larger expensive computing
                          power is required for cracking.

Steganography does        Cryptography alters the
not alter the structure   structure of the secret
of the secret message.    message.


1.4 Molecular Biology Principles

Molecular biology is the study of biology at a molecular level. The term molecular biology was coined in 1938 by Warren Weaver. Molecular biology chiefly concerns itself with understanding the interactions between the various systems of a cell, including the interrelationship of DNA, RNA and protein synthesis and learning how these interactions are regulated [2].

1.4.1 Basics of DNA and RNA

Deoxyribonucleic acid (DNA) and Ribonucleic acid (RNA) are a chain of chemical "building blocks", called "bases" or "nitrogenous base", of which there are five different bases, each is denoted by a single letter as given in the parenthesis:

Adenine (A), Cytosine (C), Guanine (G), Thymine (T), and Uracil (U).

Among them, A, C, G and T exist in DNA; while, A, C, G and U exist in RNA.

1.4.2 Central Dogma of Molecular Biology Converting DNA to Protein

The majority of genes are expressed as the proteins they encode. The process occurs in two steps [3]:

* Transcription = DNA [right arrow] RNA

* Translation = RNA [right arrow] protein

Taken together, they make up the "central dogma" of biology:

DNA [right arrow] RNA [right arrow] protein.

Figure 2 provides an overview.

[FIGURE 2 OMITTED]

1.5 The Bio-Molecular Computation

The DNA-based information security technique was found with the growth of research in the DNA bio-molecular computation field. The Bio-Molecular Computation (BMC) is computation done at the molecular scale, using Biotechnological techniques. Such techniques have been proposed to solve difficult combinatorial search problems such as the Hamiltonian path problem [4], using the vast parallelism available to do the combinatorial search among a large number of possible solutions represented by DNA strands.

For example, [5] and [6] proposed BMC methods for breaking the Data Encryption Standard (DES). While these methods for solving hard combinatorial search problems may succeed for fixed sized problems, they are ultimately limited by their volume requirements, which may grow exponentially with input size. However, BMC has many exciting further applications beyond pure combinatorial search. For example, DNA and RNA are appealing media for data storage due to the very large amounts of data that can be stored in compact volume.

1.5.1 DNA Computing

The DNA computing, in the literal sense, is the use of DNA molecules, the molecules which encode genetic information for all living things, in computers. This is accomplished in a suspended solution of DNA, where certain combinations of DNA molecules are interpreted as a particular result to a problem encoded in the original molecules present. DNA computing is currently one of the fastest growing fields in both Computer Science and Biology, and its future looks extremely promising.

The DNA computing field was initially developed by "Leonard Adleman" of the University of Southern California. In 1994, "Adleman" demonstrated a proof-of-concept use of DNA as a form of computation which was used to solve the seven-point Hamiltonian path problem. His solution for this problem considers a map of cities connected by certain nonstop flights (top right). For example, a simplified version of the Hamiltonian Path problem Adleman solved involves the following scenario [7]:

1.5.2 DNA Computing Categorization

DNA computing research can be described through the following three general categories [8]:

a. Classical: In which applications are making use of "classic or theoretic" DNA computing schemes including classic computational problems such as Hamiltonian Graph problem, cryptography and steganography, and DNA storage systems.

b. Natural: In which applications are making use of the "natural" capabilities of DNA including natural computing, nanotechnology, and smart drugs.

c. Contributions to fundamental research: In both of computer science and the physical sciences especially bio-molecular chemistry including computing devices, DNA chips, and self-assembly.

Two applications of the classical category of DNA Computing are explained in the next section. They are DNA Cryptography and Steganography.

1.5.3 DNA Cryptography and Steganography

The concept of using DNA computing in the fields of cryptography and steganography may bring forward a new hope for powerful, or even unbreakable, algorithms. The researchers in DNA cryptography and steganography fields are still looking to be much more theory than practicality. The constraints of it are required high technical lab requirements.

A. DNA Cryptography

In general, the DNA Cryptography technique uses the fact that a molecule of DNA (the genetic material in all living things) can be regarded as a very long word in an alphabet of four letters A, C, G, T (the bases adenine, cytosine, guanine and thymine). Now that the technology exists to modify DNA very freely, it is possible to encode the message in this four-letter alphabet and insert this sequence into a DNA molecule as software for the Molecular computer. A small amount of DNA can then be concealed in a letter, in the same way as a microdot. The encoding and decoding processes are performed via the Molecular computer.

B. DNA Steganography

This section is a brief overview of the most important works in DNA steganography (hiding messages in DNA) field. Since, [9] had developed some procedures for DNA-based cryptography based on one-time-pads. They also critically examined different type of DNA steganography systems, and showed that in certain cases such schemes may not cryptographically secure, and can be broken with certain assumptions on the entropy of the plaintext messages. Therefore, they suggested using a DNA Steganography approach to improve the security of their DNA Cryptography system by adding the DNA coding message between two arbitrary non-coding segments.

Another work in DNA steganography field was proposed by Shimanovsky, et al, see [10], about an original idea for hiding the data in DNA and RNA. Moreover, they defined two combining methods for hiding the data:

--The first method was hiding data in non-coding DNA, non-transcribed DNA, or Non-translated RNA in chemical DNA sequences.

--The second method was placing data in active coding segments without changing the resulting amino acid sequence.

Also, there was another work in the DNA steganography field that used the DNA molecules to hide secret messages (DNA steganography technique) was published by "Viviana I. Risca" of Paul D. Schreiber High School in Port Washington, N.Y., and won the top prize at this year's Intel Science Talent Search. "Risca" worked with "Carter Bancroft" and "Catherine Taylor Clelland" of the Mount Sinai School of Medicine in New York City to demonstrate the scheme's feasibility [11]. Briefly, this work was based on the following idea: Any strand of DNA is adhered tightly to its complementary strand, in which T substitutes for A, G for C, and vice versa. For example, a single-stranded DNA segment consisting of the base sequence TAGCCT is stick to a section of another strand made up of the complementary sequence ATCGGA. The links between pairs of bases are responsible for binding together two strands to form the characteristic double helix of a DNA molecule. The research first assigned 3-base units to letters of the alphabet, numerals, and punctuation marks [12], see table 2, then it used the encryption key to encode a message reading "JUNE6_INVASION:NORMANDY" as a sequence of 69 bases and synthesized the following DNA strand: AGT CTGT CT GGCTT AAT AATGT CTCCTC GAACGATGGGATCTGCTTCTGGATCATCCCGA TCTTTGAAA.

The message sequence was then sandwiched between two carefully selected nucleotide units (primers), which are short sequences of nucleotides (RNA or DNA), typically with twenty or fewer bases, consisting of 20 bases each, known only to the sender and the intended recipient. As for example, they consider the following primers:

TCCCTCTTCGTCGAGTAGCA and the complement part is TCTCATGTACGGCCGTGAAT.

1.6 Combination of Cryptographic and Steganography Techniques

Currently, there are many information security systems combine the Cryptography and Steganography together such as "Xidie Security Suite" and "PSM Encryptor".

The main objective of this research is to propose an information Security algorithm combines the Cryptography and Steganography techniques and based on the functionality of the Central Dogma of the Molecular Biology. The combination of the Cryptography and Steganography techniques together achieves higher level of security by hiding the meaning of a message as well as concealing the physical message. If the message is intercepted, it can be blocked but not read.

The current research contains 5 basic items. The first item shows a complete survey as described above. The second item gives a detailed analysis and design of the proposed algorithm. The third item discusses the outputs and the obtained results. The fourth is devoted for conclusion. Finally, the references are listed.

2. THE PROPOSED ALGORITHM

The current DNA-based cryptography and steganography algorithm does not really use DNA sequences, but only the mechanisms of the DNA function; therefore, the algorithm is a kind of pseudo DNA-based cryptography and steganography techniques. The encoding/decoding processes of the algorithm are based on the central dogma of the molecular biology, and the processes are similar to the DNA transcription, splicing and RNA translation of the real organisms. This algorithm is an integration of DNA-based cryptography and DNA-based steganography techniques. In general; this algorithm is consisted of two reversed sub-algorithms: one for encoding and the other for decoding.

2.1 The Encoding Sub-Algorithm

The sub-algorithm of the encoding process can be illustrated as a flowchart shown in figure 3.

As mentioned above, the encoding sub-algorithm is consists of two phases: The Steganography phase and the Cryptography phase.

2.1.1 The Steganography Phase

Steganography using DNA is appealing due to its simplicity. This phase is achieved through two steps: Data formatting and Data hiding.

2.1.1.1 The Data Formatting (Encoding)

This step is converting the plaintext (message) into DNA form (represented by the four alphabets or letters A, T, C, G). The conversion process is performed by converting the plaintext letters to its equivalent ASCII values then to a binary form. Then grouping each two adjacent bits together and transforming it into DNA form (A = 00, C = 01, G = 10, T = 11). Let's suppose that a sender wants to send a plaintext message of a word "Hello" to a receiver, which can be represented in the binary format as: "01001000 01100101 01101100 01101100 01101111", see figure 4.

[FIGURE 3 OMITTED]
Figure 4: DNA formatting of the word "Hello"

The message: Hello

Binary format: 01001000 01100101 01101100 01101100 01101111

DNA format: C A G A C G C C C G T A C G T A C G T T


2.1.1.2 Data Hiding (XOR Encoding)

In this Steganography process, a symmetric (secret) key structure is used with XOR operation to hide the DNA form of message. Because it has a unique property (balanced).

Table 3 shows the DNA XOR operation based on the binary XOR logical operation, where: A = 00, C [approximately equal to] 01, G [equivalent to] 10, T [equivalent to] 11.

The DNA-message is taken as input and a random secret key of length n, where n = 64 (as a fixed selected value) is generated, then encrypts the input with the same key, as shown in figure 5.
Figure 5: XOR Encoding Process of Stego-message

DNA-message: C A G A C G C C C G T A C G T A C G T
T

key : A A G C T A A T T G C A C A T A T A A T G G G A
T T T A A C G G T T A A T A C T G A T A G T A T G T A
A G T A C T C T A C C T C


2.1.1 The Cryptography Phase

This Cryptography phase is based on the central dogma of the molecular biology. The process is similar to the DNA transcription, splicing and RNA translation of the real organisms. This phase is achieved through the following two processes: The DES (Data Encryption Standard) encryption process and the Biological process analogy.

2.1.2.1 The DES Encryption Process

This process is a Data Encryption Standard (DES) algorithm to encrypt the Steg-DNA form of data. The Stego-message is taken as input and a random secret key of length of n = 8 DNA character, as 64 bits key is generated, then encrypts the input with the key, see figure 6.
Figure 6: DES encoding process

Stego-message: C A A C G G C G G A G A A G A A G
G T A

Key : A G C T C G A A

DES-message: A T G C C A A C C G T T C G C T A T
A T C G A C A T C A C T G A C G C T C A A C C T G G
C C G G C T A G C G C A C T A G C A C G C C C A C T
A A C G C A C G G G C G T C C C G A C G C A C A A
T C T A A A T C C C C A T C T C C A G G T C T A G C
C A T C A T C


2.1.2.2 The Biological Process Analogy

This process is similar to the DNA biological transcription, splicing and translation processes consecutively.

A. The DNA Splicing and Transcription Processes

The splicing and transcription processes can be described briefly as follows:

1. The DNA form of information is scanned by the sender to find out the introns; the sender records the introns places, and cut out the introns according to the specified pattern.

2. Generate the complementary DNA strand (by converting 'A' to T', 'T' to 'A', 'C' to 'G', and 'G' to 'C').

3. The DNA complementary strand form of data will transcript into the mRNA form of data by replacing 'T' by 'U'.

4. It is clear that the number of nucleotides of mRNA format message in figure 7 is divisible by 3 as it must be.

To demonstrate how these two processes work, it is represented as shows in figure 7.
Figure 7: Splicing Process of DNA Cipher text

DNA ciphertext: A T G C C A A C C G T T C G C T A T A T C G A C
A T C A C T G A C G C T C A A C C T G G C C G G C T A G C G C A
C T A G C A C G C C C A C T A A C G C A C G G G C G T C C C G A
C G C A C A A T C T A A A T C C C C A T C T C C A G G T C T A G
C C A T C A T C

Splicing key:

The starting code of introns is: A C T

The pattern code of introns is: 110001100110100

The starting position: 30

The spliced introns: C G C A A T G C

The exons: A T G C C A A C C G T T C G C T A T A T C G A C A T C
A C T G A T C C C G C G


This means that it cuts the first 'ACT' and compares the fifteen nucleotides after it which are 'C G C A A T G C' with the pattern code, then cuts every nucleotide if its opposite pattern equal '0'.
Figure 8: shows the mRNA output of the transcription
process.

The exons: A T G C C A A C C G T T C G C T A T A
T C G A C A T C A C T G A T C C C G C G G C T A
G C G C A C T A G C A C G C C C A C T A A C G C
A C G G G C G T C C C G A C G C A C A A T C T A
A A T C C C C A T C T C C A G G T C T A G C C A
T C A T C

DNA complementary: T A C G G T T G G C A A G
C G A T A T A G C T G T A G T G A C T A G G G C
G C C G A T C G C G T GA T C G T G C G G G T G
A T T G C G T G C C C G C A G G G C T G C G T G
T T A G A T T T A G G G G T A G A G G T C C A G
A T C G G T A G T A G

The mRNA format: U A C G G U U G G C A A G C
G A U A U A G C U G U A G U G A C U A G G G C
G C C G A U C G C G U G A U C G U G C G G G U
G A U U G C G U G C C C G C A G G G C U G C G
U G U U A G A U U U A G G G G U A G A G G U C
C A G A U C G G U A G U A G


B. The DNA Translation Process

At this step, the sender translates the mRNA form of data into protein form according to the (4 x 4 x 4) genetic code table (64 codons to 20 amino acids). As it is shown in table 4, mRNA codons are 3 bases long. There are 4 possible bases 'U', 'C', 'A', and 'G'. That means that there are 64 unique codes that can be generated. However, there are only 20 amino acids that are encoded. Therefore, there is redundancy in the mRNA to amino acid mapping, and there are sets of 1,2,3,4 or 6 codons representing the same amino acid. This redundancy can change the decoded outputs after reversing the translated protein form to get the RNA form. To avoid the codon redundancy problem, we take the amino acid sequence that would be generated by the original mRNA, and generate a list of all possible codons that lead to the same sequence, listing the codons in alphabetical order. Figure 9; shows how this steps works according to the supposed example message "Hello".
Figure 9: The Translation Process of the mRNA

The mRNA format: U A C G G U U G G C A A
G C G A U A U A G C U G U A G U G A C U A
G G G C G C C G A U C G C G U G A U C G U
G C G G G U G A U U G C G U G C C C G C A
G G G C U G C G U G U U A G A U U U A G G
G G U A G A G G U C C A G A U C G G U A G
U A G
The mRNA format (represent the enzyme work
direction):

3 U A C G G U U G G C A A G C G A U A U A
G C U G U A G U G A C U A G G G C G C C
G A U C G C G U G A U C G U G C G G G U
G A U U G C G U G C C C G C A G G G C U
G C G U G U U A G A U U U A G G G G U A
G A G G U C C A G A U C G G U A G U A G 5

Protein format:

5 Asp Asp Gly !!! Thr Trp Arg Trp Gly
Phe Arg Leu Cys Val Gly Thr Pro Val
Arg !!! Trp Ala Cys !!! Cys Ala Ser Arg
Gly Ile Ser Asp Val Asp Ile Ala Asn Gly
Trp His 3

The Codon mapping:

1 1 1 1 1 0 0 0 0 1 0 5 0 1 2 2 1 2 5 1 0 2
0 1 0 3 0 3 2 1 1 1 1 1 0 2 0 3 0 1


2.2 The Decoding Sub-Algorithm

The processes of the decoding sub-algorithm, which are the same as these of the encoding one but in reverse order as illustrated in Figure 10.

The message in protein form, the secret keys and the biological key (starting and pattern codes of the introns, the places of the introns, the removed spaced introns, and the codon-amino acids mapping of the protein), the keys to for decoding process, are transferred to the receiver.

The receiver receives the message in protein form together with the secret XOR key, and biological key through a secure channel. The receiver uses the keys to recover mRNA form from the protein form data in the reverse order of the encoding information sent from the sender. The reverse steps continue by getting the DNA complementary, transcription, the spliced DNA, DNA Cipher text, Stego-message, and finally DNA format. Then, the binary form of the original sent message is obtained and the message is decoded.

[FIGURE 10 OMITTED]

3. OUTPUTS AND RESULTS/MEASURING AND ANALYZING ALGORITHM COMPLEXITY

The proposed algorithm includes two main encoding operations. The first operation is the XOR data hiding, and the second is DES encoding algorithm. Considering the "brute force attack" which means number of trails needed to crack the keys, we have the following facts:

* The complexity of XOR data hiding needs ([4.sup.64]) possible keys, where: 4 is the number of different DNA nucleotides and 64 is the length of steg XOR key.

* The complexity of DES encoding algorithm ([2.sup.56]) possible keys, where: 2 is number of different binary bits and 56 is length of DES key in bits. The average time required for exhaustive key search can be calculated as in table 5.

So, the cracker needs about ([4.sup.64] + [2.sup.56])/([10.sup.6] * [10.sup.6]) million instruction per second (MIPS), which equal: (3.4 x [10.sup.38] + 7.2 x [10.sup.16])/([10.sup.6] x [10.sup.6] * 3600) million instruction per hour = (3.4 x [10.sup.24] + 7.2 x [10.sup.2])/36 = ((3.4 x [10.sup.24])/36) + ((7.2 x [10.sup.2])/36 = 9.4 x [10.sup.22] + 20 million instruction per hour

That means the cracker needs about 4.7 * 1022 + 10 hours on average to crack the algorithm secret keys. In addition to the 3 step substitution processes binary to DNA, DNA to RNA (transcription) and RNA to Protein (translation). Make the algorithm so strong against brute force attacks.

4. EXPERIMENTAL TESTS AND RESULTS

The DNA-based Steganography and Cryptography algorithm simulation program is developed using Visual Basic .Net 2005. The programs can be executed under Windows compatible systems (without any configurations), as well as Linux systems. The program for receiver performs the reverse processes as those of the sender's program do.

The test data are randomly selected from varies sources of the Internet, where they are stored on local machine for process. This data that had been chosen are including and combining English alphanumeric, and all other ASCII special characters. The objective is to test the performance of the program with different kinds of information, and different lengths. To calculate the algorithm execution time 30 plaintexts with different lengths are selected. The resulting of the encoding and decoding time is calculated. Also, the same selected plaintexts are encoded and decoded using DES and Triple-DES and the time is calculated to compare with the proposed algorithm. The theoretical results of the algorithm which obtained from testing the simulation program are shown in table 6.

The experiments are performed under Windows VISTA operating system environment with machine configuration of 2.00 GHz processor and 1024 MB RAM. Each encoding and decoding process is performed 5 times, and the average system time is obtained and listed. The time performance of encoding and decoding are shown in figure 11 and 12.

[FIGURE 11 OMITTED]

[FIGURE 12 OMITTED]

It should be noted that; all of the thirty one chosen plaintext tests contain all ASCII characters (English alphanumeric and special characters). Therefore the examination on robustness can be performed with high confidence.

5. CONCLUSION

The current DNA-based Cryptography and Steganography techniques algorithm has been achieved through a graphical user interface which proved to be extremely friendly when running on Windows platform.

The program's inputs, outputs and processing have been tested and analyzed with the goal of identifying strengths and weaknesses of the designed algorithm. Where the integration between Cryptography and Steganography achieves a higher level of security by hiding the meaning of a message as well as conceal the physical message. And, the usage of more than one key with different techniques makes the cipher text is more complex to break. Also, the usage of session key technique as a biological key, almost one key for each message makes biological key more difficult to guess. Moreover, the usage of multi-level of substitution makes the algorithm's cipher text difficult to be cracked.

On the other side, the execution time of encoding and decoding is high comparing with other symmetric key algorithms such as DES or Triple-DES. In fact, the algorithm needs bio-molecular computer environment to be efficient for use not on the current silicon based computer environment.

According to these levels of strengths and weaknesses, one is able to show what new value can be offered by combining steganography and cryptography, and how to make use of this combination to complement the weaknesses or limitations of each one individually.

The current research uses the two aspects of classical (theoretical) DNA computation which rely on the Central Dogma of the Molecular Biology and which are presented in item two. These two aspects are applied in the Information System Security field trough the proposed algorithm in Steganography (data hiding) and Cryptography (data encryption). Each aspect has been explained separately and some of the famous previous works in each aspect has been shown. In addition to the ability to design an integrated algorithm; DNA-based Cryptography and Steganography techniques algorithm; combines the two aspects was proposed.

The theoretical implementation of the proposed algorithm proves that it is less efficient compared with other encryption algorithms such as DES or 3 DES when used through electronic computers. On the other side, practically this integrated algorithm can be more efficient if it is applied using a real DNA strands by the biotechnological computers or in a test tube.

6. REFERENCES

[1] Liddell and Scott, "An Intermediate Greek-English Lexicon", Logos Research Systems, Inc., 1996.

[2] Cohen, S.N., Chang, A.C.Y., Boyer, H. & Heling, "Construction of biologically functional bacterial plasmids in vitro", Proc. Natl. Acad. Sci., 1973.

[3] Darnell, J., "RNA", Scientific American, Vol. 253, PP. 68:78, 1985.

[4] Adleman, "Molecular computation of solutions to combinatorial problems", Science, PP. 266:1021, November 1994.

[5] Boneh, Dunworth, R. J. Lipton, "Breaking DES using a molecular computer", Technical report, American Mathematical Society, PP. 458:467, 1996.

[6] Roweis, Winfree, Burgoyne, N. V. Chelyapov, M. F. Goodman, P. W. K. Rothemund, and L. M. Adleman, "A sticker based architecture for DNA computation", held at Princeton University, June 10-12, 1996.

[7] Adleman, "Computing with DNA", Scientific American, PP. 54:61, Aug. 1998.

[8] Paun, Rozenberg, Salomaa, "DNA computing: new computing paradigms", Springer-Verlag, Berlin, 1998.

[9] Gehani, Thomas LaBean and John Reif., "DNA-Based Cryptography", American Mathematical Society, Vol. 54, PP. 233:249, 2000.

[10] Boris Shimanovsky, Jessica Feng, and Miodrag Potkonjak, "Hiding Data in DNA", Technical report, Computer Science Dept., University of California, Los Angeles; 2002.

[11] Bancroft, C. C.T. Clelland, V. Risca, "Genomic Steganography: Amplifiable Microdots", Cambridge, 2005.

[12] Peterson, "Hiding in DNA", Science News Online, April 2005.

[13] William Stallings, "Cryptography and Network Security", 3rd Edition, Prentice Hall, 1999.

Mostafa Reda El tantawi

mrrr_fci@yahoo.com

Dept. of Computer Science Faculty of Computers and Information Cairo University

Amr Mohamed Abd El Shafouk Ali

shafouk@hotmail.com

Institute of statistical researches and studies
Table 2: Alphanumeric--DNA
Nucleotides Table

Text to DNA
Encryption Key

Letter =
Nucleotide

A = CGA
B = CCA
C = GTT
D = TTG
E = GGC
F = GGT
G = TTT
H = CGC
I = ATG
J = AGT
K = AAG
L = TGC
M = TCC
N = TCT
O = GGA
P = GTG
Q = AAC
R = TCA
S = ACG
T = TTC
U = CTG
V = CCT
W = CCG
X = CTA
Y = AAA
Z = CTT
_ = ATA
, = TCG
. = GAT
: = GCT
0 = ACT
1 = ACC
2 = TAG
3 = GAC
4 = GAG
5 = AGA
6 = TTA
7 = ACA
8 = AGG
9 = GCG

Table 3: DNA XOR Truth Table

[direct sum]   A   C   G   T
(XOR)

A              A   C   G   T
C              C   A   T   G
G              G   T   A   C
T              T   G   C   A

Table 4: The mRNA--Amino Acid
Mapping Table

Value     Amino      Codon

0          Ala        GCA
1          Ala        GCC
2          Ala        GCG
3          Ala        GCU
0          Arg        AGA
1          Arg        AGG
2          Arg        CGA
3          Arg        CGC
4          Arg        CGG
5          Arg        CGU
0          Asn        AAC
1          Asn        AAU
0          Asp        GAC
1          Asp        GAU
0          Cys        UGC
1          Cys        UGU
0          Gln        CAA
1          Gln        CAG
0          Glu        GAA
1          Glu        GAG
0          Gly        GGA
1          Gly        GGC
2          Gly        GGG
3          Gly        GGU
0          His        CAC
1          His        CAU
0          Ile        AUA
1          Ile        AUC
2          Ile        AUU
0          Leu        CUA
1          Leu        CUC
2          Leu        CUG
3          Leu        CUU
4          Leu        UUA
5          Leu        UUG
0          Lys        AAA
1          Lys        AAG
0          Met        AUG
0          Phe        UUC
1          Phe        UUU
0          Pro        CCA
1          Pro        CCC
2          Pro        CCG
3          Pro        CCU
0          Ser        AGC
1          Ser        AGU
2          Ser        UCA
3          Ser        UCC
4          Ser        UCG
5          Ser        UCU
0       (STOP) !!!    UAA
1       (STOP) !!!    UAG
2       (STOP) !!!    UGA
0          Thr        ACA
1          Thr        ACC
2          Thr        ACG
3          Thr        ACU
0          Trp        UGG
0          Tyr        UAC
1          Tyr        UAU
0          Val        GUA
1          Val        GUC
2          Val        GUG
3          Val        GUU

Table 5: The Average Time Required for Exhaustive

Key         Number of               Time                 Time
Size       Alternative         required at 1          required at
(Bits)         Keys         encryption/[micro]s       [10.sup.6]
                                                      encryption/
                                                       [micro]s

32       [2.sup.32] = 4.3   [2.sup.31] [micro]s    2.15 millisecond
           x [10.sup.9]        = 35.8 minutes
56       [2.sup.56] = 7.2   [2.sup.35] [micro]s       10.01 hours
          x [10.sup.16]         = 1142 years
128      [2.sup.128] = 34   [2.sup.127] [micro]s   5.4 x [10.sup.18]
          x [10.sup.38]     = 5.4 x [10.sup.24]          years
                                   years
168      [2.sup.168] = 37   [2.sup.167] [micro]s   5.9 x [10.sup.30]
          x [10.sup.50]     = 5.9 * [10.sup.36]          years
                                   years

Table 6: The Encoding & Decoding Time of Algorithms
with Plaintexts of Different Lengths (time in ms)

Test   Plaintext     DNA based Alg.
        length
        in bits    Encoding   Decoding
                   Time ms    Time ms

1        4,000      12.674     12.724
2        8,000      22.860     22.911
3       12,000      34.290     34.366
4       16,000      45.721     45.821
5       20,000      57.151     57.276
6       24,000      68.581     68.732
7       28,000      80.011     80.187
8       32,000      91.441     91.642
9       36,000     102.871    104.766
10      40,000     114.301    117.889
11      44,000     125.731    129.678
12      48,000     137.161    141.467
13      52,000     148.591    153.256
14      56,000     160.021    165.045
15      60,000     261.302    263.814
16      64,000     362.582    362.582
17      68,000     385.244    385.244
18      72,000     407.905    407.905
19      76,000     430.567    436.561
20      80,000     453.228    465.217
21      84,000     475.890    488.478
22      88,000     498.551    511.739
23      92,000     521.213    535.000
24      96,000     543.874    558.260
25      100,000    552.349    559.542
26      104,000    560.823    560.823
27      108,000    582.394    582.394
28      112,000    603.964    603.964
29      116,000    625.534    631.134
30      120,000    647.104    658.304
31      124,000    668.674    680.248

Test          DES               Triple-DES

       Encoding   Decoding   Encoding   Decoding
       Time ms    Time ms    Time ms    Time ms

1       0.130      0.037      0.401      0.129
2       0.140      0.046      0.420      0.138
3       0.133      0.040      0.397      0.119
4       0.125      0.033      0.374      0.100
5       0.156      0.042      0.468      0.125
6       0.187      0.050      0.561      0.150
7       0.212      0.051      0.636      0.152
8       0.237      0.051      0.710      0.154
9       0.267      0.058      0.799      0.173
10      0.296      0.064      0.888      0.192
11      0.326      0.071      0.977      0.211
12      0.355      0.077      1.066      0.230
13      0.385      0.084      1.155      0.250
14      0.414      0.090      1.243      0.269
15      0.484      0.082      1.453      0.246
16      0.554      0.074      1.663      0.223
17      0.589      0.079      1.767      0.237
18      0.624      0.084      1.871      0.251
19      0.659      0.089      1.975      0.265
20      0.693      0.093      2.079      0.279
21      0.728      0.098      2.183      0.293
22      0.762      0.102      2.287      0.307
23      0.797      0.107      2.391      0.321
24      0.832      0.112      2.495      0.335
25      0.950      0.110      2.849      0.329
26      1.068      0.107      3.203      0.322
27      1.109      0.112      3.327      0.335
28      1.150      0.116      3.450      0.347
29      1.191      0.120      3.573      0.360
30      1.232      0.124      3.696      0.372
31      1.273      0.128      3.819      0.385
COPYRIGHT 2010 University of the West of Scotland, School of Computing
No portion of this article can be reproduced without the express written permission from the copyright holder.
Copyright 2010 Gale, Cengage Learning. All rights reserved.

Article Details
Printer friendly Cite/link Email Feedback
Author:tantawi, Mostafa Reda El; Ali, Amr Mohamed Abd El Shafouk
Publication:Computing and Information Systems
Article Type:Report
Date:Oct 1, 2010
Words:6069
Previous Article:Mitigating CAPTCHA relay attacks using multiple challenge-response mechanism.
Next Article:Does process maturity necessitate web usability?
Topics:

Terms of use | Privacy policy | Copyright © 2022 Farlex, Inc. | Feedback | For webmasters |