Bringing dna computers to life

Ehud Shapiro and Yaakov Benenson

 

Tapping the computing power of biological molecules gives rise to tiny machines that can speak directly to living cells.

When British mathematician Alan Turing conceived the notion of a universal programmable computing machine, the word "computer" typically referred not to an object but to a human being. It was 1936, and people with the job of computer, in modern terms, crunched numbers. Turing's design for a machine that could do such work instead— one capable of computing any computable problem—set the stage for theoretical study of computation and remains a foundation for all of computer science. But he never specified what materials should be used to build it.

Turing's purely conceptual machine had no electrical wires, transistors or logic gates. Indeed, he continued to imagine it as a person, one with an infinitely long piece of paper, a pencil and a simple instruction book. His tireless computer would read a symbol, change the symbol, then move on to the next symbol, according to its programmed rules, and would keep doing so until no further rules applied. Thus, the electronic computing machines made of metal and vacuum tubes that emerged in the 1940s and later evolved silicon parts may be the only "species" of nonhuman computer most people have ever encountered, but theirs is not the only possible form a computer can take.

Living organisms, for instance, also carry out complex physical processes under the direction of digital information. Biochemical reactions and ultimately an entire organism's operation are ruled by instructions stored in its genome, encoded in sequences of nucleic acids. When the workings of biomolecular machines inside cells that process DNA and RNA are compared to Turing's machine, striking similarities emerge: both systems process information stored in a string of symbols taken from a fixed alphabet, and both operate by moving step by step along those strings, modifying or adding symbols according to a given set of rules.

These parallels have inspired the idea that biological molecules could one day become the raw material of a new computer species. Such biological computers would not necessarily offer greater power or performance in traditional computing tasks. The speed of natural molecular machines such as the ribosome is only hundreds of operations a second, compared with billions of gate-switching operations a second in some electronic devices. But the molecules do have a unique ability: they speak the language of living cells.

The promise of computers made from biological molecules lies in their potential to operate within a biochemical environment, even within a living organism, and to interact with that environment through inputs and outputs in the form of other biological molecules. A bio-molecular computer might act as an autonomous "doctor" within a cell, for example. It could sense signals from the environment indicating disease, process them using its pre-programmed medical knowledge, and output a signal or a therapeutic drug.

Over the past seven years we have been working toward realizing this vision. We have already succeeded in creating a biological automaton made of DNA and proteins able to diagnose in a test tube the molecular symptoms of certain cancers and "treat" the disease by releasing a therapeutic molecule. This proof of concept was exciting, both because it has potential future medical applications and because it is not at all what we originally set out to build.

Viruses and vaccines

The terms viruses andvaccines have entered the jargon of the computer industry to describe some of the bad things that can happen to computer systems and programs. Unpleasant occurrences like the March 6, 1991, attack of the Michelangelo virus will be with us for years to come. In fact, from now on you need to check your IBM or IBM-compatible personal computer for the presence of Michelangelo before March 6 every year — or risk losing all the data on your hard disk when you turn on your machine that day. And Macintosh users need to do the same for another intruder, the Jerusalem virus, before each Friday the 13th, or risk a similar fate for their data.

A virus, as its name suggests, is contagious. It is a set of illicit instructions that infects other programs and may spread rapidly. The Michelangelo virus went worldwide within a year. Some types of viruses include the worm, a program that spreads by replicating itself; the bomb, a program intended to sabotage a computer by triggering damage based on certain conditions — usually at a later date; and the Trojan horse, a program that covertly places illegal, destructive instructions in the middle of an otherwise legitimate program. A virus may be dealt with by means of avaccine, or anti-virus, program, a computer program that stops the spread of and often eradicates the virus.

 

Transmitting a Virus.

Consider this typical example. A programmer secretly inserts a few unauthorized instructions in a personal computer operating system program. The illicit instructions lie dormant until three events occur together: 1. the disk with the infected operating system is in use; 2. a disk in another drive contains another copy of the operating system and some data files; and 3. a command, such as COPY or DIR, from the infected operating system references a data file. Under these circumstances, the virus instructions are now inserted into the other operating system. Thus the virus has spread to another disk, and the process can be repeated again and again. In fact, each newly infected disk becomes a virus carrier.

Damage from Viruses.

We have explained how the virus is transmitted; now we come to the interesting part — the consequences. In this example, the virus instructions add 1 to a counter each time the virus is copied to another disk. When the counter reaches 4, the virus erases all data files. But this is not the end of the destruction, of course; three other disks have also been infected. Although viruses can be destructive, some are quite benign; one simply displays a peace message on the screen on a given date. Others may merely be a nuisance, like the Ping-Pong virus that bounces a "Ping-Pong ball" around your screen while you are working. But a few could result in disaster for your disk, as in the case of Michelangelo.

 

Prevention.

A word about prevention is in order. Although there are programs called vaccines that can prevent virus activity, protecting your computer from viruses depends more on common sense than on building a "fortress" around the machine. Although there have been occasions where commercial software was released with a virus, these situations are rare. Viruses tend to show up most often on free software acquired from friends. Even commercial bulletin board systems, once considered the most likely suspects in transferring viruses, have cleaned up their act and now assure their users of virus-free environments. But not all bulletin board systems are run professionally. So you should always test diskettes you share with others by putting their write-protection tabs in place.

If an attempt is made to write to such a protected diskette, a warning message appears on the screen. It is not easy to protect hard disks, so many people use anti-virus programs. Before any diskette can be used with a computer system, the anti-virus program scans the diskette for infection. The drawback I that once you buy this type of software, you must continuously pay the price for upgrades as new viruses are discovered.