High-capacity storage of digital information in DNA

CA2874540CActive Publication Date: 2026-10-13EURO LAB FUER MOLEKULARBIOLOGIE EMBL
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CA2874540
Authority / Receiving Office
CA · CA
Patent Type
Patents
Current Assignee / Owner
Priority Date
2012-06-01
Filing Date
2013-05-31
Publication Date
2026-10-13
Estimated Expiration
2033-05-31
Patent Text Reader

Abstract

A method for storage of an item of information (210) is disclosed. The method comprises encoding bytes (720) in the item of information (210), and representing using a schema the encoded bytes by a DNA nucleotide to produce a DNA sequence (230). The DNA sequence (230) is broken into a plurality of overlapping DNA segments (240) and indexing information (250) ad- ded to the plurality of DNA segments. Finally, the plurality of DNA segments (240) is synthesized (790) and stored (795).
Need to check novelty before this filing date? Find Prior Art

Description

Field of the Invention

[0001] The disclosure relates to a method and apparatus for the storage of digital infor- mation in DNA. Sequence Listing [0001.1] The instant application contains a Sequence Listing which has been submitted electronically in ASCII format. Said ASCII copy, created on June 1, 2015, is named 4091.91216USC1_SL.txt and is 1,592 bytes in size. Background

[0002] DNA has the capacity to hold vast amounts of information, readily stored for long periods in a compact form1,2. The idea of using DNA as a store for digital information has existed since 19953. Physical implementations of DNA storage have to date stored only trivial amounts of information — typically a few numbers or words of English text4-8. The inventors are unaware of large-scale storage and recovery of arbitrarily sized digital infor- mation encoded in physical DNA, rather than data storage on magnetic substrates or opti- cal substrates.

[0003] Currently the synthesis of DNA is a specialized technology focused on biomedical applications. The cost of the DNA synthesis has been steadily decreasing over the past decade. It is interesting to speculate at what timescale data storage in a DNA molecule, as disclosed herein, would be more cost effective than the current long term archiving process of data storage on tape with rare but regular transfer to new media every 3 to 5 years. Cur- rent "off the shelf" technology for DNA synthesis equates to a price of around 100 bytes per U.S. dollar. Newer technology commercially available from Agilent Technologies (Santa Clara, CA) may substantially decrease this cost. However, account also needs to be made for regular transfer of data between tape media. The questions are both the costs for this transfer of data and whether this cost is fixed or diminishes over time. If a substantial amount of the cost is assumed to be fixed, then there is a time horizon at which use of DNA molecules for data storage is more cost effective than regular data storage on the tape media. After 400 years (at least 80 media transfers), it is possible that this data storage using DNA molecules is already cost effective.

[0004] A practical encoding-decoding procedure that stores more information than previ- ously handled is described in this disclosure. The inventors have encoded five computer files — totaling 757051 bytes (739kB) of hard disk storage and with an estimated Shannon information of <semantics>5.2×106<annotation encoding="application / x-tex">5.2 \times 10^6< / annotation>< / semantics> bits — into a DNA code. The inventors subsequently synthesized this DNA, transported the synthesized DNA from the USA to Germany via the UK, se- quenced the DNA and reconstructed all five computer files with 100% accuracy.

[0005] The five computer files included an English language text (all 154 of Shake- speare's sonnets), a PDF document of a classic scientific paper10, a JPEG colour photo- graph and an MP3 format audio file containing 26 seconds of speech (from Martin Luther King's "I Have A Dream" speech). This data storage represents approximately 800 times as much information as the known previous DNA-based storage and covers a much greater variety of digital formats. The results demonstrate that DNA storage is increasingly realis- tic and could, in future, provide a cost-effective means of archiving digital information and may already be cost effective for low access, multi-decade archiving tasks. Prior Art

[0006] The high capacity of DNA to store information stably under easily achieved con- ditions1,2 has made DNA an attractive target for information storage since 19953. In addi- tion to information density, DNA molecules have a proven track record as an information carrier, longevity of the DNA molecule is known and the fact that, as a basis of life on Earth, methods for manipulating, storing and reading the DNA molecule will remain the subject of continual technological innovation while there remains DNA-based intelligent life1,2. Data storage systems based on both living vector DNA5-8 (in vivo DNA molecules) and on synthesized DNA4,1 (in vitro DNA) have been proposed. The in vivo data storage systems have several disadvantages. Such disadvantages include constraints on the quanti- ty, genomic elements and locations that can be manipulated without affecting viability of the DNA molecules in the living vector organisms. Examples of such living vector organ- isms include but are not limited to bacteria. The reduction in viability includes decreasing capacity and increasing the complexity of information encoding schemes. Furthermore, germline and somatic mutation will cause fidelity of the stored information and decoded information to be reduced over time and possibly a requirement for storage conditions of the living DNA to be carefully regulated.

[0007] In contrast, the "isolated DNA" (i.e., in vitro DNA) is more easily "written" and routine recovery of examples of the non-living DNA from samples that are tens of thou- sands of years old11-14 indicates that a well-prepared non-living DNA sample should have an exceptionally long lifespan in easily-achieved low-maintenance environments (i.e. cold, dry and dark environments)15–17.

[0008] Previous work on the storage of information (also termed data) in the DNA has typically focused on "writing" a human-readable message into the DNA in encoded form, and then "reading" the encoded human-readable message by determining the sequence of the DNA and decoding the sequence. Work in the field of DNA computing has given rise to schemes that in principle permit large-scale associative (content-addressed) memory3,18- 20, but there have been no attempts to develop this work as practical DNA-storage schemes. Fig. 1 shows the amounts of information successfully encoded and recovered in 14 previ- ous studies (note the logarithmic scale on the y-axis). Points are shown for 14 previous experiments (open circles) and for the present disclosure (solid circle). The largest amount of human-readable messages stored this way is 1280 characters of English language text8. equivalent to approximately 6500 bits of Shannon information9.

[0009] The Indian Council of Scientific and Industrial Research has filed a U.S. Patent Application Publication No. US 2005 / 0053968 (Bharadwaj et al) that teaches a method for storing information in DNA. The method of U.S. '968 comprises using an encoding meth- od that uses 4-DNA bases representing each character of an extended ASCII character set. A synthetic DNA molecule is then produced, which includes the digital information, an encryption key, and is flanked on each side by a primer sequence. Finally, the synthesized DNA is incorporated in a storage DNA. In the event that the amount of DNA is too large, then the information can be fragmented into a number of segments. The method disclosed in U.S. '968 is able to reconstruct the fragmented DNA segments by matching up the < header primer of one of the segments with the tail primer on the subsequent one of the segments.

[0010] Other patent publications are known which describe techniques for storing infor- mation in DNA. For example, U.S. Patent 6,312,911 teaches a steganographic method for concealing coded messages in DNA. The method comprises concealing a DNA encoded message within a genomic DNA sample followed by further concealment of the DNA sample to a microdot. The application of this U.S. '911 patent is in particular for the con- cealment of confidential information. Such information is generally of limited length and thus the document does not discuss how to store items of information that are of longer length. The same inventors have filed an International Patent Application published as In- ternational Publication No. WO 03 / 025123. Summary of the Invention

[0011] A method for storage of an item of information is disclosed. The method compris- es encoding bytes in the item of information. The encoded bytes are represented using a schema by a DNA nucleotide to produce a DNA sequence in-silico. In a next step, the DNA sequence is split into a plurality of overlapping DNA segments and indexing infor- mation is added to the plurality of DNA segments. Finally, the plurality of DNA segments is synthesized and stored.

[0012] The addition of the indexing information to the DNA segments means that the position of the segments in the DNA sequence representing the item of information can be uniquely identified. There is no need to rely on a matching of a head primer with a tail primer. This makes it possible to recover almost the entire item of information, even if one of the segments has failed to reproduce correctly. If no indexing information were present, then there is a risk that it might not be possible to correctly reproduce the entire item of information if the segments could not be matched to each other due to "orphan" segments whose position in the DNA sequence cannot be clearly identified.

[0013] The use of overlapping DNA segments means that a degree of redundancy is built into the storage of the items of information. If one of the DNA segments cannot be decod- ed, then the encoded bytes can still be recovered from neighboring ones of the DNA seg- ments. Redundancy is therefore built into the system.

[0014] Multiple copies of the DNA segments can be made using known DNA synthesis techniques. This provides an additional degree of redundancy to enable the item of infor- mation to be decoded, even if some of copies of the DNA segments are corrupted and can- not be decoded.

[0015] In one aspect of the invention, the representation schema used for encoding is designed such that adjacent ones of the DNA nucleotides are different. This is to increase the reliability of the synthesis, reproduction and sequencing (reading) of the DNA seg- ments.

[0016] In a further aspect of the invention, a parity-check is added to the indexing infor- mation. This parity check enables erroneous synthesis, reproduction or sequencing of the DNA segments to be identified. The parity-check can be expanded to also include error correction information.

[0017] Alternate ones of the synthesized DNA segments are reverse complemented. These provide an additional degree of redundancy in the DNA and means that there is more information available if any of the DNA segment is corrupted. Description of the Figures

[0018] Fig. 1 is a graph of amounts of information stored in DNA and successfully re- covered, as a function of time.

[0019] Fig. 2 shows an example of the method of the present disclosure. Fig. 2 discloses SEQ ID NO: 4.

[0020] Fig. 3 shows a graph of the cost effectiveness of storage over time.

[0021] Fig. 4 shows a motif with a self-reverse complementary pattern (SEQ ID NO: 5).

[0022] Fig. 5 shows the encoding efficiency.

[0023] Fig. 6 shows error rates.

[0024] Fig. 7 shows a flow diagram of the encoding of the method.

[0025] Fig. 8 shows a flow diagram of the decoding of the method. Detailed Description

[0026] One of the main challenges for a practical implementation of DNA storage to date has been the difficulty of creating long sequences of DNA to a specified design. The long sequences of DNA are required to store large data files, such as long text items and videos. It is also preferable to use an encoding with a plurality of copies of each designed DNA. Such redundancy guards against both encoding and decoding errors, as will be explained below. It is not cost-efficient to use a system based on individual long DNA chains to en- code each (potentially large) message8. The inventors have developed a method that uses 'indexing' information associated with each one of the DNA segments to indicate the posi- tion of the DNA segment in a hypothetical longer DNA molecule that encodes the entire message.

[0027] The inventors used methods from code theory to enhance the recoverability of the encoded messages from the DNA segment, including forbidding DNA homopolymers (i.e. runs of more than one identical base) that are known to be associated with higher error rates in existing high throughput technologies. The inventors further incorporated a simple error-detecting component, analogous to a parity-check bit9 into the indexing information in the code. More complex schemes, including but not limited to error-correcting codes9 and, indeed, substantially any form of digital data security (e.g. RAID-based schemes21) currently employed in informatics, could be implemented in future developments of the DNA storage scheme3.

[0028] The inventors selected five computer files to be encoded as a proof-of-concept for the DNA storage of this disclosure. Rather than restricting the files to human-readable information, files using a range of common formats were chosen. This demonstrated the ability of the teachings of the disclosure to store arbitrary types of digital information. The files contained all 154 of Shakespeare's sonnets (in TXT format), the complete text and figure of ref. 10 (in PDF format), a medium-resolution color photograph of the EMBL- European Bioinformatics Institute (JPEG 2000 format), a 26 second extract from Martin Luther King's "I Have A Dream" speech (MP3 format) and a file defining the Huffman code used in this study to convert bytes to base-3 digits (as a human-readable text file).

[0029] The five files selected for DNA-storage were as follows.

[0030] wssnt10.txt 107738 bytes ASCII text format all 154 Shakespeare sonnets (from Project Gutenberg)

[0031] watsoncrick.pdf ___ 280864 bytes PDF format document Watson and Crick's (1953) publication10 describing the structure of DNA (from the Nature website, modified to achieve higher compression and thus smaller file size).

[0032] EBI.jp2 — 184264 bytes — JPEG 2000 format image file color photograph (16.7M colors, 640 x 480 pixel resolution) of the EMBL-European Bio- informatics Institute (own picture).

[0033] MLK excerpt VBR 45-85.mp3 — 168539 bytes — MP3 format sound file 26 second-long extract from Martin Luther King's "I Have A Dream" speech (modified to achieve higher compression: variable bit rate, typically 48–56kbps; sampling frequency 44.1kHz)

[0034] View huff3.cd.new 15646 bytes ASCII file human-readable file defining the Huffman code used in this study to convert bytes to base- 3 digits (trits)

[0035] The five computer files comprise a total of 757051 bytes, approximately equiva- lent to a Shannon information of <semantics>5.2×106<annotation encoding="application / x-tex">5.2 \times 10^6< / annotation>< / semantics> bits or 800 times as much encoded and ered human-designed information as the previous maximum amount known to have been stored (see Fig. 1).

[0036] The DNA encoding of each one of the computer files was computed using soft- ware and the method is illustrated in Fig. 7. In one aspect of the invention 700 described herein, the bytes comprising each computer file 210 were represented in step 720 as a DNA sequence 230 with no homopolymers by an encoding scheme to produce an encoded file 220 that replaces each byte by five or six bases (see below) forming the DNA sequence 230. The code used in the encoding scheme was constructed to permit a straightforward encoding that is close to the optimum information capacity for a run length-limited channel (i.e., no repeated nucleotides). It will, however, be appreciated that other encoding schemes may be used.

[0037] The resulting in silico DNA sequences 230 are too long to be readily produced by standard oligonucleotide synthesis. Each of the DNA sequences 230 was therefore split in step 730 into overlapping segments 240 of length 100 bases with an overlap of 75 bases. To reduce the risk of systematic synthesis errors introduced to any particular run of bases, alternate ones of the segments were then converted in step 740 to their reverse comple- ment, meaning that each base is "written" four times, twice in each direction. Each seg- ment was then augmented in step 750 with an indexing information 250 that permitted de- termination of the computer file from which the segment 240 originated and its location within that computer file 210, plus simple error-detection information. This indexing in- formation 250 was also encoded in step 760 as non-repeating DNA nucleotides, and ap- pended in step 770 to the 100 information storage bases of the DNA segments 240. It will be appreciated that the division of the DNA segments 240 into lengths of 100 bases with an overlap of 75 bases is purely arbitrary. It would be possible for other lengths and overlaps to be used and this is not limiting of the invention.

[0038] In total, all of the five computer files were represented by 153335 strings of DNA. Each one of the strings of DNA comprised 117 nucleotides (encoding original digital in- formation plus indexing information). The encoding scheme used had various features of the synthesized DNA (e.g. uniform segment lengths, absence of homopolymers) that made it obvious that the synthesized DNA did not have a natural (biological) origin. It is there- fore obvious that the synthesized DNA has a deliberate design and encoded information2.

[0039] As noted above, other encoding schemes for the DNA segments 240 could be used, for example to provide enhanced error-correcting properties. It would also be straightforward to increase the amount of indexing information in order to allow more or larger files to be encoded. It has been suggested that the Nested Primer Molecular Memory (NPMM) scheme19 reaches its practical maximum capacity at 16.8M unique addresses20, and there appears to be no reason why the method of the disclosure could not be extended beyond this to enable the encoding of almost arbitrarily large amounts of information.

[0040] One extension to the coding scheme in order to avoid systematic patterns in the DNA segments 240 would be to add change the information. Two ways of doing this were tried. A first way involved the "shuffling" of information in the DNA segments 240, The information can be retrieved if one knows the pattern of shuffling. In one aspect of the dis- closure different patterns of shuffles were used for different ones of the DNA segments 240.

[0041] A further way is to add a degree of randomness into the information in each one of the DNA segments 240. A series of random digits can be used for this, using modular addition of the series of random digits and the digits comprising the information encoded in the DNA segments 240. The information can easily be retrieved by modular subtraction during decoding if one knows the series of random digits used. In one aspect of the disclo- sure, different series of random digits were used for different ones of the DNA segments 240.

[0042] The digital information encoding in step 720 was carried out as follows. The five computer files 210 of digital information (represented in Fig. 2A) stored on a hard-disk drive were encoded using software. Each byte of each one of the five computer files 210 to be encoded in step 720 was represented as a sequence of DNA bases via base-3 digits ('trits' 0, 1 and 2) using a purpose-designed Huffman code listed in Table 1 (below) to produce the encoded file 220. This exemplary coding scheme is shown in outline in Fig. 2B. Each of the 256 possible bytes was represented by five or six trits. Subsequently, each one of the trits was encoded as a DNA nucleotide 230 selected from the three nucleotides different from the previous nucleotide (Fig. 2C). In other words, in the encoding scheme chosen for this aspect of the disclosure, each one of the three nucleotides was different from the previous one used to ensure no homopolymers. The resulting DNA sequence 230 was split in step 730 to DNA segments 240 of length 100 bases, as shown in Fig. 2D. Each one of the DNA segments overlapped the previous DNA segment by 75 bases, to give DNA segments of a length that was readily synthesized and to provide redundancy. Alter- nate ones of the DNA segments were reverse complemented.

[0043] The indexing information 250 comprised two trits for file identification (permit- ting <semantics>32=9<annotation encoding="application / x-tex">3^2 = 9< / annotation>< / semantics> files to be distinguished, in this implementation), 12 trits for intra-file location information (permitting <semantics>312=531441<annotation encoding="application / x-tex">3^{12} = 531441< / annotation>< / semantics> locations per file) and one 'parity-check' trit. The indexing information 250 was encoded in step 760 as non-repeating DNA nucleotides and was appended in step 770 to the 100 information storage bases. Each indexed DNA seg- ment 240 had one further base added in step 780 at each end, consistent with the 'no ho- mopolymers' rule, that would indicate whether the entire DNA segment 240 were reverse complemented during the 'reading' stage of the experiment.

[0044] In total, the five computer files 210 were represented by 153335 strings of DNA, each comprising <semantics>117(1+100+2+12+1+1)<annotation encoding="application / x-tex">117 (1 + 100 + 2 + 12 + 1 + 1)< / annotation>< / semantics> nucleotides (encoding original digital in- formation and indexing information).

[0045] The data-encoding component of each string in the aspect of the invention de- scribed herein can contain Shannon information at 5.07 bits per DNA base, which is close to the theoretical optimum of 5.05 bits per DNA base for base-4 channels with run length limited to one. The indexing implementation 250 permits <semantics>314=4782969<annotation encoding="application / x-tex">3^{14} = 4782969< / annotation>< / semantics> unique data loca- tions. Increasing the number of indexing trits (and therefore bases) used to specify file and intra-file location by just two, to 16, gives <semantics>316=43046721<annotation encoding="application / x-tex">3^{16} = 43046721< / annotation>< / semantics> unique locations, in excess of the 16.8M that is the practical maximum for the NPMM scheme 19,20.

[0046] The DNA synthesis process of step 790 was also used to incorporate 33bp adapters to each end of each one of the oligonucleotides (oligo) to facilitate sequencing on IlluminaTM sequencing platforms:

[0047] 5' adapter: ACACTCTTTCCCTACACGACGCTCTTCCGATCT (SEQ ID NO: 1)

[0048] 3' adapter: AGATCGGAAGAGCGGTTCAGCAGGAATGCCGAG (SEQ ID NO: 2)

[0049] The 153335 DNA segment designs 240 were synthesized in step 790 in three dis- tinct runs (with the DNA segments 240 randomly assigned to runs) using an updated ver- sion of Agilent Technologies' OLS (Oligo Library Synthesis) process described previous- ly22, 23 to create approx. 1.2x107 copies of each DNA segment design. Errors were seen to occur in only about one error per 500 bases and independently in different copies of the DNA segments 240. Agilent Technologies adapted the phosphoramidite chemistry devel- oped previously24 and employed inkjet printing and flow cell reactor technologies in Ag- ilent's SurePrintTM in situ microarray synthesis platform. The inkjet printing within an anhydrous chamber allows the delivery of very small volumes of phosphoramidites to a confined coupling area on a 2D planar surface, resulting in the addition of hundreds of thousands of bases in parallel. Subsequent oxidation and detritylation are carried out in a flow cell reactor. Once the DNA synthesis has been completed, the oligonucleotides are then cleaved from the surface and deprotected25.

[0050] The adapters were added to the DNA segments to enable a plurality of copies of the DNA segments to be easily made. A DNA segment with no adapter would require ad- ditional chemical processes to "kick start" the chemistry for the synthesis of the multiple copies by adding additional groups onto the ends of the DNA segments.

[0051] Up to ~99.8% coupling efficiency is achieved by using thousands-fold excess of phosphoramidite and activator solution. Similarly, millions-fold excess of detritylation agent drives the removal of the 5'-hydroxyl protecting group to near completion. A con- trolled process in the flowcell reactor significantly reduced depurination, which is the most prevalent side reaction22. Up to 244000 unique sequences can be synthesized in parallel and delivered as <semantics>∼<annotation encoding="application / x-tex">\sim< / annotation>< / semantics>1-10 picomole pools of oligos.

[0052] The three samples of lyophilized oligos were incubated in Tris buffer overnight at 4°C, periodically mixed by pipette and vortexing, and finally incubated at 50°C for 1 hour, to a concentration of 5ng / ml. As insolubilized material remained, the samples were left for a further 5 days at 4°C with mixing two-four times each day. The samples were then incu- bated at 50°C for 1 hour and 68°C for 10 minutes, and purified from residual synthesis by- products on Ampure XP paramagnetic beads (Beckman Coulter) and could be stored in step 795. Sequencing and decoding is shown in Fig. 8.

[0053] The combined oligo sample was amplified in step 810 (22 PCR cycles using ther- mocycler conditions designed to give even A / T vs. G / C processing26) using paired-end IlluminaTM PCR primers and high-fidelity AccuPrime reagents (InvitrogenTM), a combina- tion of Taq and Pyrococcus polymerases with a thermostable accessory protein. The am- plified products were bead purified and quantified on an AgilentTM 2100 Bioanalyzer, and sequenced using AYB software in paired-end mode on an Illumina HiSeqTM 2000 to pro- duce reads of 104 bases.

[0054] The digital information decoding was carried out as follows. The central 91 bases of each oligo were sequenced in step 820 from both ends and so rapid computation of full- length (117 base) oligos and removal of sequence reads inconsistent with the designs was straightforward. The sequence reads were decoded in step 830 using computer software that exactly reverses the encoding process. The sequence reads for which the parity-check trit indicated an error or that at any stage could not be unambiguously decoded or assigned to a reconstructed computer file were discarded in step 840 from further consideration.

[0055] The vast majority of locations within every decoded file were detected in multiple different sequenced DNA oligos, and simple majority voting in step 850 was used to re- solve any discrepancies caused by the DNA synthesis or the sequencing errors. On comple- tion of this procedure 860, four of the five original computer files 210 were reconstructed perfectly. The fifth computer file required manual intervention to correct two regions each of 25 bases that were not recovered from any sequenced read.

[0056] During decoding in step 850, it was noticed that one file (ultimately determined to be watsoncrick.pdf) reconstructed in silico at the level of DNA (prior to decoding, via base-3, to bytes) contained two regions of 25 bases that were not recovered from any one of the sequenced oligos. Given the overlapping segment structure of the encoding, each region indicated the failure of four consecutive segments to be synthesized or sequenced, as any one of four consecutive overlapping segments would have contained bases corre- sponding to this location. Inspection of the two regions indicated that the non-detected bases fell within long repeats of the following 20-base motif:

[0057] 5' GAGCATCTGCAGATGCTCAT 3' (SEQ ID NO: 3)

[0058] It was noticed that repeats of this motif have a self-reverse complementary pat- tern. These are shown in Fig. 4.

[0059] It is possible that long, self-reverse complementary DNA segments might not be readily sequenced using the Illumina paired-end process, owing to the possibility that the DNA segments might form internal nonlinear stem-loop structures that would inhibit the sequencing-by-synthesis reaction used in the protocol used in the method described in this document. Consequently, the in silico DNA sequence was modified to repair the repeating motif pattern and then subjected to subsequent decoding steps. No further problems were encountered, and the final decoded file matched perfectly the file watsoncrick.pdf. A code that ensured that no long self-complementary regions existed in any of the designed DNA segments could be used in future. Example of Huffman Coding Scheme

[0060] Table 1 shows an example of the exemplary Huffman coding scheme used to con- vert byte values (0-255) to base-3. For highly compressed information, each byte value should appear equally frequently and the mean number of trits per byte will be (239*5 + <semantics>17*6<annotation encoding="application / x-tex">17*6< / annotation>< / semantics>) / 256 = 5.07. The theoretical maximum number of trits per byte is <semantics>log(256) / log(3)=<annotation encoding="application / x-tex">log(256) / log(3) =< / annotation>< / semantics> 5.05. Table 1 [Image disponible dans le document PDF, Image available in the PDF document] [Image disponible dans le document PDF, Image available in the PDF document] [Image disponible dans le document PDF, Image available in the PDF document] [Image disponible dans le document PDF, Image available in the PDF document] [Image disponible dans le document PDF, Image available in the PDF document] [Image disponible dans le document PDF, Image available in the PDF document] [Image disponible dans le document PDF, Image available in the PDF document] [Image disponible dans le document PDF, Image available in the PDF document] -22- [Image disponible dans le document PDF, Image available in the PDF document] Encoding of the File

[0061] The arbitrary computer file 210 is represented as a string <semantics>S∅<annotation encoding="application / x-tex">S_{\emptyset}< / annotation>< / semantics> of bytes (often inter- preted as a number between <semantics>∅<annotation encoding="application / x-tex">\emptyset< / annotation>< / semantics> and <semantics>28−1<annotation encoding="application / x-tex">2^8 - 1< / annotation>< / semantics>, i.e. a value in the set <semantics>{0…255}<annotation encoding="application / x-tex">\{0 \dots 255\}< / annotation>< / semantics>). The string <semantics>S∅<annotation encoding="application / x-tex">S_{\emptyset}< / annotation>< / semantics> is encoded using the Huffman code and converting to base-3. This generates a string <semantics>S1<annotation encoding="application / x-tex">S_1< / annotation>< / semantics> of characters as the trit <semantics>{∅,1,2}<annotation encoding="application / x-tex">\{\emptyset, 1, 2\}< / annotation>< / semantics>.

[0062] Let us now write len() for the function that computes the length (in characters) of the string <semantics>S1<annotation encoding="application / x-tex">S_1< / annotation>< / semantics>, and define <semantics>n=len(S1)<annotation encoding="application / x-tex">n=len(S_1)< / annotation>< / semantics>. Represent n in base-3 and prepend 0s to generate a string <semantics>S2<annotation encoding="application / x-tex">S_2< / annotation>< / semantics> of trits such that <semantics>len(S2)=20<annotation encoding="application / x-tex">len(S_2)=20< / annotation>< / semantics>. Form the string concatenation <semantics>S4=S1<annotation encoding="application / x-tex">S_4=S_1< / annotation>< / semantics>, <semantics>S3<annotation encoding="application / x-tex">S_3< / annotation>< / semantics>, where <semantics>S3<annotation encoding="application / x-tex">S_3< / annotation>< / semantics> is a string of at most 24 zeros is chosen so that <semantics>len(S4)<annotation encoding="application / x-tex">len(S_4)< / annotation>< / semantics> is an integer multiple of 25.

[0063] <semantics>S4<annotation encoding="application / x-tex">S_4< / annotation>< / semantics> is converted to the DNA string <semantics>S5<annotation encoding="application / x-tex">S_5< / annotation>< / semantics> of characters in {A, C, G, T} with no repeat- ed nucleotides (nt) using the scheme illustrated in the table below. The first trit of S4 is coded using the 'A' row of the table. For each subsequent trit, characters are taken from the row defined by the previous character conversion. [Image disponible dans le document PDF, Image available in the PDF document]

[0064] Table: Base-3 to DNA encoding ensuring no repeated nucleotides.

[0065] For each trit t to be encoded, select the row labeled with the previous nucleotide <semantics>N25<annotation encoding="application / x-tex">\frac{N}{25}< / annotation>< / semantics> used and the column labeled t and encode using the nt in the corresponding table cell.

[0066] Define <semantics>N=len(S5)<annotation encoding="application / x-tex">N = len(S_5)< / annotation>< / semantics>, and let ID be a 2-trit string identifying the original file and unique within a given experiment (permitting mixing of DNA form different files <semantics>S∅<annotation encoding="application / x-tex">S_{\emptyset}< / annotation>< / semantics> in one experiment. Split <semantics>S5<annotation encoding="application / x-tex">S_5< / annotation>< / semantics> into the overlapping DNA segments 240 of length 100 nt, each of the DNA segments 240 being offset from the previous one of the DNA segments 240 by 25 nt. This means there will be <semantics>((N / 25)−3)<annotation encoding="application / x-tex">((N / 25)-3)< / annotation>< / semantics> DNA segments 240, conveniently indexed <semantics>i=∅<annotation encoding="application / x-tex">i = \emptyset< / annotation>< / semantics> ...(N / 25)-4. The DNA segment i is denoted <semantics>Fi<annotation encoding="application / x-tex">F_i< / annotation>< / semantics> and contains (DNA) characters <semantics>25i<annotation encoding="application / x-tex">25i< / annotation>< / semantics> ... <semantics>25i+99<annotation encoding="application / x-tex">25_{i+99}< / annotation>< / semantics> of <semantics>S5<annotation encoding="application / x-tex">S_5< / annotation>< / semantics>.

[0067] Each DNA segment <semantics>Fi<annotation encoding="application / x-tex">F_i< / annotation>< / semantics> is further processed as follows:

[0068] If i is odd, reverse complement the DNA segment <semantics>Fi<annotation encoding="application / x-tex">F_i< / annotation>< / semantics>.

[0069] Let i3 be the base-3 representation of i, appending enough leading zeros so that <semantics>len(i3)=12<annotation encoding="application / x-tex">len(i3) = 12< / annotation>< / semantics>. Compute P as the sum (mod 3) of the odd-positioned trits in ID and i3, i.e. <semantics>ID1+i31+i33+i35+i37+i39+i311<annotation encoding="application / x-tex">ID_1 + i3_1 + i3_3 + i3_5 + i3_7 + i3_9 + i3_{11}< / annotation>< / semantics>. (P acts a 'parity trit' – analogous to a parity bit – to check for errors in the encoded information about <semantics>ID<annotation encoding="application / x-tex">ID< / annotation>< / semantics> and <semantics>i<annotation encoding="application / x-tex">i< / annotation>< / semantics>.)

[0070] Form the indexing information 250 string <semantics>IX=ID<annotation encoding="application / x-tex">IX = ID< / annotation>< / semantics>. i2 . P (comprising 2+12+1 = 15 trits). Append the DNA-encoded (step 760) version of <semantics>IX<annotation encoding="application / x-tex">IX< / annotation>< / semantics> to <semantics>Fi<annotation encoding="application / x-tex">F_i< / annotation>< / semantics> using the same strategy as shown in the above table, starting with the code table row defined by the last character of <semantics>Fi<annotation encoding="application / x-tex">F_i< / annotation>< / semantics>, to give indexed segment <semantics>Fi′<annotation encoding="application / x-tex">F'_i< / annotation>< / semantics>.

[0071] Form <semantics>Fi″<annotation encoding="application / x-tex">F''_i< / annotation>< / semantics> by prepending A or T and appending C or G to <semantics>Fi′<annotation encoding="application / x-tex">F'_i< / annotation>< / semantics> —choosing between A and T, and between C and G, randomly if possible but always such that there are no re- peated nucleotides. This ensures that one can distinguish a DNA segment 240 that has been reverse complemented (step 240) during DNA sequencing from one that has not. The for- mer will start with G|C and the end with T|A; the latter will start A|T and end C|G.

[0072] The segments <semantics>FI″<annotation encoding="application / x-tex">F''_I< / annotation>< / semantics> are synthesized in step 790 as actual DNA oligonucleotides and stored in step 790 and may be supplied for sequencing in step 820. Decoding

[0073] Decoding is simply reverse of the encoding in step 720, starting with the se- quenced DNA segments 240 F''I of length 117 nucleotides. Reverse complementation dur- ing the DNA sequencing procedure (e.g. during PCR reactions) can be identified for sub- sequent reversal by observing whether fragments start with A|T and end with C|G, or start with G|C and end T|A. With these two 'orientation' nucleotides removed, the remaining 115 nucleotide of each DNA segment 240 can be split into the first 100 'message' nucleo- tides and the remaining fifteen 'indexing information 250' nucleotides. The indexing in- formation nucleotide 250 can be decoded to determine the file identifier ID and the posi- tion index i3 and hence i, and errors may be detected by testing the parity trit P. Position indexing information 250 permits the reconstruction of the DNA-encoded file 230, which can then be converted to base-3 using the reverse of the encoding table above and then to the original bytes using the given Huffman code. Discussion on Data Storage

[0074] The DNA storage has different properties from the traditional tape-based storage or disk-based storage. The ~750kB of information in this example was synthesized in 10pmol of DNA, giving an information storage density of approximately one Tera- byte / gram. The DNA storage requires no power and remains (potentially) viable for thou- sands of years even by conservative estimates.

[0075] DNA Archives can also be copied in a massively parallel manner by the applica- tion of PCR to the primer pairs, followed by aliquoting (splitting) the resulting DNA solu- tion. In the practical demonstration of this technology in the sequencing process this pro- cedure was done multiple times, but this could also be used explicitly for copying at large scale the information and then physically sending this information to two or more loca- tions. The storage of the information in multiple locations would provide further robust- ness to any archiving scheme, and might be useful in itself for very large scale data copy- ing operations between facilities.

[0076] The decoding bandwidth in this example was at 3.4 bits / second, compared to disk (approximately one Terabit / second) or tape (140 Megabit / second), and latency is also high (~20 days in this example). It is expected that future sequencing technologies are likely to improve both these factors.

[0077] Modeling the full cost of archiving using either the DNA-storage of this disclo- sure or the tape storage shows that the key parameters are the frequency and fixed costs of transitioning between tape storage technologies and media. Fig. 3 shows the timescales for which DNA-storage is cost-effective. The upper bold curve indicates the break-even time (x-axis) beyond which the DNA storage as taught in this disclosure is less expensive than tape. This assumes that the tape archive has to be read and re-written every 3 years (<semantics>f=<annotation encoding="application / x-tex">f =< / annotation>< / semantics> 1 / 3), and depends on the relative cost of DNA-storage synthesis and tape transfer fixed costs (y-axis). The lower bold curve corresponds to tape transfers every 5 years. The re- gion below the lower bold curve indicates cases for which the DNA storage is cost- effective when transfers occur more frequently than every 5 years; between the two bold curves, the DNA storage is cost-effective when transfers occur from 3- to 5-yearly; and above the upper bold curve tape is less expensive when transfers occur less frequently than every 3 years. The dotted horizontal lines indicate ranges of relative costs of DNA synthe- sis to tape transfer of 125-500 (current values) and 12.5-50 (achieved if DNA synthesis costs reduce by an order of magnitude). Dotted vertical lines indicate corresponding break-even times. Note the logarithmic scales on all axes.

[0078] One issue for long-term digital archiving is how DNA-based storage scales to larger applications. The number of bases of the synthesized DNA needed to encode the information grows linearly with the amount of information to be stored. One must also consider the indexing information required to reconstruct full-length files from the short DNA segments 240. The indexing information 250 grows only as the logarithm of the number of DNA segments 240 to be indexed. The total amount of synthesized DNA re- quired grows sub-linearly. Increasingly large parts of each ones of the DNA segments 240 are needed for indexing however and, although it is reasonable to expect synthesis of long- er strings to be possible in future, the behavior of the scheme was modeled under the con- servative constraint of a constant 114 nucleotides available for both the data and the index- ing information 250.

[0079] As the total amount of information increases, the encoding efficiency decreases only slowly (Fig. 5). In the experiment (megabyte scale) the encoding scheme is 88% effi- cient. Fig. 5 indicates that efficiency remains >70% for data storage on petabyte (PB, 1015 bytes) scales and >65% on exabyte (EB, 1018 bytes) scales, and that DNA-based storage remains feasible on scales many orders of magnitude greater than current global data vol- umes. Figure 5 also shows that costs (per unit information stored) rise only slowly as data volumes increase over many orders of magnitude. Efficiency and costs scale even more favourably if we consider the lengths of the synthesized DNA segments 240 available us- ing the latest technology. As the amount of information stored increases, decoding requires more oligos to be sequenced. A fixed decoding expenditure per byte of encoded infor- mation would mean that each base is read fewer times and so is more likely to suffer de- coding error. Extension of the scaling analysis to model the influence of reduced sequenc- ing coverage on the per-decoded-base error rate revealed that error rates increase only very slowly as the amount of information encoded increases to a global data scale and beyond. This also suggests that the mean sequencing coverage of 1,308 times was considerably in excess of that needed for reliable decoding. This was confirmed by subsampling from the 79.6x3106 read-pairs to simulate experiments with lower coverage.

[0080] Figure 5 indicates that reducing the coverage by a factor of 10 (or even more) would have led to unaltered decoding characteristics, which further illustrates the robust- ness of the DNA-storage method. Applications of the DNA-based storage might already be economically viable for long-horizon archives with a low expectation of extensive access, such as government and historical records. An example in a scientific context is CERN's CASTOR system, which stores a total of 80 PB of Large Hadron Collider data and grows at 15 PB yr-1. Only 10% is maintained on disk, and CASTOR migrates regularly between magnetic tape formats. Archives of older data are needed for potential future verification of events, but access rates decrease considerably 2–3 years after collection. Further examples are found in astronomy, medicine and interplanetary exploration.

[0081] Fig. 5 shows the encoding efficiency and costs change as the amount of stored information increases. The x-axis (logarithmic scale) represents the total amount of infor- mation to be encoded. Common data scales are indicated, including the three zettabyte (3) ZB, <semantics>3x1021<annotation encoding="application / x-tex">3x10^{21}< / annotation>< / semantics> bytes) global data estimate. The y-axis scale to left indicates encoding efficien- cy, measured as the proportion of synthesized bases available for data encoding. The y-axis scale to right indicate the corresponding effect on encoding costs, both at current synthesis cost levels (solid line) and in the case of a two-order-of magnitude reduction (dashed line).

[0082] Fig. 6 shows per-recovered-base error rate (y-axis) as a function of sequencing coverage, represented by the percentage of the original <semantics>79.6×106<annotation encoding="application / x-tex">79.6 \times 10^6< / annotation>< / semantics> read-pairs sampled (x axis; logarithmic scale). One curve represents the four files recovered without human in- tervention: the error is zero when <semantics>≥2%<annotation encoding="application / x-tex">\geq 2\%< / annotation>< / semantics> of the original reads are used. Another curve is ob- tained by Monte Carlo simulation from our theoretical error rate model. The final curve represents the file (watsoncrick.pdf) that required manual correction: the minimum possi- ble error rate is 0.0036%. The boxed area is shown magnified in the inset.

[0083] In addition to data storage, the teachings of this disclosure can also be used for steganography.

[0084] References Bancroft, C., Bowler, T., Bloom, B. & Clelland, C. T. Long-term storage of infor- mation in DNA. Science 293, 1763–1765 (2001) 2. Cox, J. P. L. Long-term data storage in DNA. TRENDS Biotech. 19, 247-250 (2001) 3. Baum, E. B. Building an associative memory vastly larger than the brain. Science 268, 583–585 (1995) 4. Clelland, C. T., Risca, V. & Bancroft, C. Hiding messages in DNA microdots. Nature 399, 533–534 (1999) 5. Kac, E. Genesis (1999) http: / / www.ekac.org / geninfo.html accessed online, 2 April 2012 6. Wong, P. C., Wong, K.-K. & Foote, H. Organic data memory. Using the DNA approach. Comm. ACM 46, 95–98 (2003) 7. Ailenberg, M. & Rotstein, O. D. An improved Huffman coding method for archiv- ing text, images, and music characters in DNA. Biotechniques 47, 747–754 (2009) 8. Gibson, D. G. et al. Creation of a bacterial cell controlled by a chemically synthe- sized genome. Science 329, 52–56 (2010) MacKay, D. J. C. Information Theory, Inference, and Learning Algorithms. (Cambridge University Press, 2003) 10. Watson, J. D. & Crick, F. H. C. Molecular structure of nucleic acids. Nature 171, 737–738 (1953) 11. Shapiro, B. et al. Rise and fall of the Beringian steppe bison. Science 306, 1561- 1565 (2004) 12. Poinar, H. K. et al. Metagenomics to paleogenomics: large-scale sequencing of mammoth DNA. Science 311, 392–394 (2005) 13. Willerslev, E. et al. Ancient biomolecules from deep ice cores reveal a forested southern Greenland. Science 317, 111–114 (2007) 14. Green, R. E. et al. A draft sequence of the Neanderthal genome. Science 328, 710– 722 (2010) 15. Anchordoquy, T. J. & Molina, M. C. Preservation of DNA. Cell Preservation Tech. 5, 180–188 (2007) 16. Bonnet, J. et al. Chain and conformation stability of solid-state DNA: implications for room temperature storage. Nucl. Acids Res. 38, 1531-1546 (2010) 17. Lee, S. B., Crouse, C. A. & Kline, M. C. Optimizing storage and handling of DNA extracts. Forensic Sci. Rev. 22, 131–144 (2010) 18. Tsaftaris, S. A. & Katsaggelos, A. K. On designing DNA databases for the storage and retrieval of digital signals. Lecture Notes Comp. Sci. 3611, 1192–1201 (2005) 19. Yamamoto, M., Kashiwamura, S., Ohuchi, A. & Furukawa, M. Large-scale DNA memory based on the nested PCR. Natural Computing 7, 335–346 (2008) 20. Kari, L. & Mahalingam, K. DNA computing: a research snapshot. In Atallah, M. J. & Blanton, M. (eds.) Algorithms and Theory of Computation Handbook, vol. 2. 2nd ed. pp. 31-1–31-24 (Chapman & Hall, 2009) 21. Chen, P. M., Lee, E. K., Gibson, G. A., Katz, R. H. & Patterson, D. A. RAID: high-performance, reliable secondary storage. ACM Computing Surveys 26, 145–185 (1994) 22. Le Proust, E. M. et al. Synthesis of high-quality libraries of long (150mer) oligo- nucleotides by a novel depurination controlled process. Nucl. Acids Res. 38, 2522–2540 (2010) 23. Kosuri, S. et al. A scalable gene synthesis platform using high-fidelity DNA mi- crochips. Nature Biotech. 28, 1295–1299 (2010) 24. Beaucage, S. L. & Caruthers, M. H. Deoxynucleoside phosphoramidites — a new class of key intermediates for deoxypolynucleotide synthesis. Tetrahedron Lett. 22, 1859- 1862 (1981) 25. Cleary, M. A. et al. Production of complex nucleic acid libraries using highly par- allel in situ oligonucleotide synthesis. Nature Methods 1, 241–248 (2004) 26. Aird, D. et al. Analysing and minimizing PCR amplification bias in Illumina se- quencing libraries. Genome Biol. 12, R18 (2011)

Claims

1. A method of controlling synthesis of a plurality of DNA segments for storage of an item of information comprising: encoding bytes in the item of information; representing the encoded bytes by at least one DNA nucleotide to produce a DNA sequence data; splitting the DNA sequence data into a plurality of overlapping DNA segments data; augmenting indexing information to the plurality of DNA segments data, the indexing information indicating a position in the DNA sequence data of any one nucleotide in any one of the plurality of DNA segments data; and - providing, as input to a computer-controlled DNA synthesis platform, the plurality of DNA segments data for enabling synthesizing of a plurality of DNA segments.

2. The method of claim 1, further including adding adapter data to the DNA segments data.

3. The method of claim 1 or 2, using a base-3 scheme for encoding the bytes.

4. The method of any one of claims 1 to 3, wherein adjacent ones of the DNA nucleotides data are different.

5. The method of any one of claims 1 to 4, further comprising adding a parity-check to the indexing information.

6. The method of any one of claims 1 to 5, wherein alternate ones of the synthesized DNA segments data are reverse complemented.

7. The method of any one of claims 1 to 6, wherein the plurality of DNA segments data is designed to avoid forming stem-loops.

8. A method of storing an item of information, comprising: _ synthesizing a plurality of DNA segments by controlling synthesis of a plurality of DNA segments according to the method of one of claim 1 to 7.

9. The method of claim 8, further comprising: _ storing the synthesized DNA segments in a DNA archive.

10. A method of retrieving an item of information, stored according to the method of claim 8 or 9, comprising sequencing the synthesized DNA segments; and decoding the sequenced DNA segments to reconstruct the item of information.

11. A non-volatile non-transitory computer-readable storage medium storing computer- executable instructions thereon that when executed by a computer perform a method of controlling synthesis of a plurality of DNA segments for storage of an item of information, the method comprising the steps of encoding bytes in the item of information; representing the encoded bytes by at least one DNA nucleotide to produce a DNA sequence data; splitting the DNA sequence data into a plurality of overlapping DNA segments data; augmenting indexing information to the plurality of DNA segments data, the indexing information indicating a position in the DNA sequence data of any one nucleotide in any one of the plurality of DNA segments data; and providing, as input for a computer-controlled DNA synthesis platform, the plurality of DNA segments data for enabling synthesizing of a plurality of DNA segments.

12. A computer readable memory, connected to a DNA synthesis platform, having recorded thereon statements and instructions for execution by a computer, the computer-executable instructions comprising logic for performing, when executed by the computer, the method according to any one of the claims 1 to 10.

13. A method of storing digital information in a plurality of DNA segments, the method comprising: converting digital information into a plurality of DNA segments, wherein the digital information is bit sequences or byte sequences stored in a computer file, wherein the digital information comprises text, images, videos, or music, wherein the digital information comprises at least 15646 bytes of information, and wherein at least two of the plurality of DNA segments comprise: a region that is overlapping with another DNA segment of the plurality of DNA segments; and an indexing information; generating a library of oligonucleotides comprising the plurality of DNA segments, wherein the library collectively encodes for the digital information; incorporating adapters to ends of the plurality of DNA segments to facilitate sequencing; sequencing the library of oligonucleotides to generate sequencing data; and converting the sequencing data into the form of a bit sequence or byte sequence, wherein the bit sequence or byte sequence is representative of the digital information.

14. The method of claim 13, wherein the indexing information is configured to identify a source of the digital information.

15. The method of claim 14, wherein the indexing information is configured to identify a location of DNA segment in the source of the digital information.

16. The method of any one of claims 13 to 15, wherein the digital information is representable as human-readable language, audio, image, or video.

17. The method of any one of claims 13 to 16, wherein the digital information comprises at least 107738 bytes of information.

18. The method of any one of claims 13 to 17, wherein at least one DNA segment of the plurality of DNA segments comprises an overlap region including at least 75 bases.

19. The method of any one of claims 13 to 18, wherein each of the plurality of DNA segments encode for at least one 8-bit ASCII character.

20. The method of any one of claims 13 to 19, wherein the method further comprises shuffling of the digital information encoded in the DNA segments.

21. The method of any one of claims 13 to 20, wherein a series of random digits is added modularly to the digits comprising the digital information encoded in the DNA segments.

22. The method of any one of claims 13 to 21, wherein the method further comprises amplifying the DNA segments.

23. The method of any one of claims 13 to 22, wherein the sequencing generates reads of about 104 bases.

24. The method of any one of claims 13 to 23, wherein the sequencing uses paired-end PCR primers, wherein the sequencing uses paired-end PCR primers, wherein the paired-end PCR primers comprise SEQ ID NO: 1 and SEQ ID NO: 2.

25. The method of any one of claims 13 to 24, wherein the digital information comprises at least 5 files.

26. The method of any one of claims 13 to 25, wherein the plurality of DNA segments are uniform in length.

27. The method of any one of claims 13 to 26, wherein the DNA segments do not comprise homopolymers.

28. A method of storing digital information using nucleotides, the method comprising: converting digital information comprising bytes into DNA sequence data, wherein the DNA sequence data is split into a plurality of overlapping DNA segment data, wherein each one of the plurality of overlapping DNA segment data is a DNA segment datum; synthesizing a plurality of DNA segments, wherein each DNA segment of the plurality of DNA segments is synthesized based on a corresponding DNA segment datum of the plurality of overlapping DNA segment data, and wherein: a first one of the plurality of DNA segments includes a first overlapping region; a second one of the plurality of DNA segments includes a second overlapping region, where the second overlapping region is identical to the first overlapping region; sequencing the plurality of DNA segments; and decoding the sequence of the plurality of DNA segments into bytes of the digital information.

29. The method of claim 28, wherein the decoding further comprises decoding the sequence of the plurality of DNA segments into bit sequences, assembling the bit sequences into the bytes, and converting the bytes into a format of the digital information.

30. The method of claim 28 or 29, wherein the at least one of the plurality of overlapping DNA segment data comprises indexing information, and wherein the indexing information is configured to identify a source of the digital information.

31. The method of claim 30, wherein the indexing information is configured to identify a location of the at least one of the plurality of overlapping DNA segment data in the source of the digital information.

32. The method of any one of claims 28 to 31, wherein the at least one of the plurality of overlapping DNA segment data comprises sequencing adapters.

33. The method of any one of claims 28 to 32, wherein the at least one of the plurality of overlapping DNA segment data is at least 100 bases in length.

34. The method of any one of claims 28 to 33, wherein the digital information comprises at least 15,646 bytes.

35. A method of retrieving an item of information from a plurality of DNA segments storing bytes of the item of information, comprising: parallel sequencing the plurality of DNA segments to generate DNA sequence data, wherein the plurality of DNA segments include: a first DNA segment including a first overlapping region; a second DNA segment including a second overlapping region, where the second overlapping region is identical to the first overlapping region; and converting the DNA sequence data into the item of information, wherein the DNA sequence data comprises at least 100,000 reads.

36. The method of claim 35, wherein the converting comprises converting the DNA sequence data into encoded ones of the bytes, and converting the encoded ones of the bytes into the item of information.

37. The method of claim 35 or 36, wherein at least one of the plurality of DNA segments comprises indexing information, wherein the indexing information is configured to identify a source of the item of information, and / or location of the at least one of the plurality of DNA segment in the item of information.

38. The method of any one of claims 35 to 37, wherein the item of information comprises human-readable language, audio, image, or video.

39. The method of any one of claims 35 to 38, wherein the bytes are stored in a digital file.

40. The method of claim 39, wherein the digital file is stored on a hard disk.

41. A method of retrieving an item of information from a plurality of DNA segments storing the item of information, the method comprising: sequencing the plurality of DNA segments to generate DNA sequence data, wherein sequencing comprises parallel sequencing; and converting the DNA sequence data into a sequence of bytes; wherein the plurality of DNA segments comprises indexing information; and wherein the indexing information is configured: to identify a source of the item of information; and / or to indicate a position in the DNA sequence data of any one nucleotide datum in any one of the plurality of DNA segments data.

42. The method of claim 41, wherein converting the DNA sequence data into the item of information comprises converting the DNA sequence data into a sequence of bytes.

43. The method of claim 41 or 42, wherein the sequencing comprises generation of paired- end reads comprising 104 base pairs.

44. The method of any one of claims 41 to 43, wherein the method further comprises amplifying the plurality of DNA segments prior to sequencing.

45. The method of any one of claims 41 to 44, wherein the plurality of DNA segments comprises adapters, and wherein the adapters comprise SEQ ID NO: 1 or SEQ ID NO: 2, or a reverse complement thereof.

46. The method of any one of claims 41 to 45, wherein the item of information is encoded using a base-3 scheme.

47. The method of any one of claims 41 to 46, wherein the indexing information comprises an error-detecting component, and wherein the error-detecting component is a parity-check.

48. The method of any one of claims 41 to 47, further comprising storing the bytes in a digital file.

49. A method of writing an item of information into a plurality of DNA segments, the method comprising: synthesizing a plurality of DNA segments, wherein: at least a portion of the plurality of DNA segments comprise indexing information and a DNA storage segment; the DNA storage segments have overlapping regions and are assemblable to a DNA sequence, the DNA sequence encoding the item of information; and the indexing information specifies a location in the DNA sequence of any one nucleotide in the corresponding DNA storage segment.

50. The method of claim 49, wherein the indexing information is further configured to identify a source of the item of information.

51. The method of claim 49, wherein the overlapping regions include at least 75 bases.

52. The method of any one of claims 49 to 50, wherein the plurality of DNA segments stores at least 107738 bytes of information.

53. The method of any one of claims 49 to 52, wherein at least one of the DNA storage segments is DNA shuffled.

54. The method of any one of claims 49 to 53, wherein at least one of the plurality of DNA segments comprise a series of random digits.

55. The method of any one of claims 49 to 54, wherein the plurality of DNA segments are uniform in length.

56. The method of any one of claims 49 to 55, wherein the plurality of DNA segments are synthesized from DNA segments data, generated by encoding bytes of the item of information.

57. The method of claim 49, wherein the encoding of the item of information employs a base-3 scheme and / or a Huffman code.

58. The method of any one of claims 49 to 57, further comprising DNA archiving the synthesized plurality of DNA segments.

59. The method of any one of claims 49-58, wherein the item of information comprises a first file having a first file type and a second file having a second file type, and the first file type is different than the second file type.

60. The method of claim 59, wherein the first file type is an MP3 format, a text format, a JPEG format, or a PDF format.

61. A method of storing an item of information in a plurality of DNA segments, the method comprising: DNA archiving a plurality of DNA segments, wherein at least a portion of the plurality of DNA segments comprise indexing information and a DNA storage segment; the DNA storage segments have overlapping regions and are assemblable to a DNA sequence, the DNA sequence encoding the item of information; and _ the indexing information specifies a location in the DNA sequence of any one nucleotide in the corresponding DNA storage segment.

62. A memory device comprising a DNA archive for storing an item of information, the DNA archive comprising a plurality of DNA segments, wherein at least a portion of the plurality of DNA segments comprise indexing information and a DNA storage segment; the DNA storage segments have overlapping regions and are assemblable to a DNA sequence, the DNA sequence encoding the item of information; and the indexing information specifies a location in the DNA sequence of any one nucleotide in the corresponding DNA storage segment.

63. A method of reading an item of information from a plurality of DNA segments, the method comprising: sequencing a plurality of DNA segments to generate sequencing data, wherein at least a portion of the plurality of DNA segments comprise indexing information and a DNA storage segment; the DNA storage segments have overlapping regions and are assemblable to a DNA sequence, the DNA sequence encoding the item of information; and the indexing information specifies a location in the DNA sequence of any one nucleotide in the corresponding DNA storage segment.

64. A method of reading an item of information from a plurality of DNA segments data, the method comprising: converting, by means of a computer, DNA segments data generated by sequencing a plurality of DNA segments, into bit sequences or byte sequences, wherein at least a portion of the plurality of DNA segments data comprise indexing information and a DNA storage segment data; _ the DNA storage segments data have overlapping regions and are assemblable to a DNA sequence data, the DNA sequence data encoding the item of information; and - the indexing information specifies a location in the DNA sequence data of any one nucleotide in the corresponding DNA storage segment data.