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
![]() ![]() ![]() ![]() | |
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: |