Wisecrackers

"It may roundly be asserted that human ingenuity cannot concoct a cipher which human ingenuity cannot resolve."
- Edgar Allan Poe
If you are a cryptographer, you know one code that requires no calculation to decipher: when the calendar hits the last week in August, you must pack up your shorts and T-shirts, proceed to the beachfront campus at the University of California at Santa Barbara, pick up a plastic badge at the front desk in a residence hall, and attend Crypto - five days of seminars and receptions to discuss the state of encipherment, decoding, and various other cryptographic matters, ranging from elliptical curves to secret sharing. Last year's event could not have come at a better time. Crypto '95 happened at the peak of a mania about the once arcane study of communicating in code. The networking of the world's computers had thrust into the mainstream popular notions of cryptography, the art of keeping secrets readable only to insiders, as well as cryptanalysis, the art of outsiders cracking the codes to get at those secrets. Cryptography was gaining currency as the only way of securing the global info-matrix from a host of meanies, ranging from info-thieves to government snoops. Some people now regard crypto's scrambling mechanisms as a panacea. Just flood the world with it, crypto-enthusiasts say, and our secrets are safe. They crow that the technological problems in securing the Net have largely been solved. Naturally, this leads proponents to the optimistic outlook that cryptography will ensure privacy, as well as secure electronic money - or e-money - the key to burgeoning business on the electronic frontier. A highlight of Crypto '95 was a rambling speech by a grizzled, bearded man who until recently addressed only crowds authorized to receive wisdom deemed top-secret by the US government. His name was Robert Morris Sr., recently retired as the senior scientist at the National Security Agency, the cloistered intelligence organization at Fort Meade, Maryland. His presence drew an auditorium full of fascinated cryptographers, who leaned forward in their seats, hoping for an epiphany. The NSA's skills in cracking crypto are legendary, as is its silence in revealing how advanced those skills are. Would Morris slip some of that wisdom into his talk? Yes and no. Trade secrets were not forthcoming. But Morris, in sort of the spirit of the Eastern masters, did utter a pair of truisms - fundamental tenets of the crypto creed, as it were. Tenet Number One: Never underestimate the time, expense, and effort an opponent will expend to break a code. This was directed at codemakers. He was referring to those moments of dark speculation that keep ace cryptographers staring at the ceiling long after losers have retreated to dreamland, wondering: Have I plugged every hole? Anticipated every attack? The subtext of Morris's point was that cryptography is best left to the paranoid, those who believe beyond question that their opponents just may be very rich, very clever, and very dedicated - hellhounds on the trail. Those opponents can and will launch vicious direct attacks on your codes by mustering who knows how much computer power. If you assume that those who want your secrets are underfinanced, undermotivated, or just plain goofballs, then you are the goofball. And you've got no business on a crypto team. Remember: beware the frontal assault. Tenet Number Two spoke to the code breakers: Look for plaintext. In the jargon of the field, plaintext is a message of regular words that anybody can read - before the words get scrambled. No matter how baffling the task of code breaking might seem, very fallible human beings are the ones who must employ these sophisticated systems. And indeed they fail. Sometime, when one least expects it, a passage - or an entire message! - might somehow lie unencoded within seemingly impenetrable code. In that case, you can read it as easily as a fortune cookie. But that's only if you were open to the possibility that the plaintext might be there. Remember: exploit your opponent's mistakes. Quite coincidentally, just as Morris was delivering his speech, a movement was afoot to translate his points into action. An informal, yet formidable, group of amateurs in the cryptanalysis game was forming and finding success in cracking code that supposedly was vulnerable only to the likes of the Fort Meade crowd. Disgusted at seeing watered-down versions of cryptography, this group set out to expose the pretenders. Their message: just because it's crypto doesn't mean it's safe. Their work would create severe embarrassment for those promulgating security systems that were exposed as pitifully weak. The crackers' victims included two mighty institutions: the US government and Netscape Communications Corp.
(Page 2) These self-described cypherpunks included students, researchers, mathematicians, hackers, activists, and joyful troublemakers from around the world. Some of them became instant media stars: the researcher in France who used massive computer power to find a key to certain Netscape crypto, or the two UC Berkeley students who, with minimal computer power, discovered a mistake that shook loose a Netscape key. But, in truth, it would be an aggregate effort, powered by the pooled minds and computer resources of the Net. In the end, the Net would emerge as a star in its own right, ushering in a new era of collective code breaking. In short, the cryptocracking fraternity had been thrown open to the rabble. These new code breakers are not interested in crime and espionage, but in making a political point and reaping great fun in the process. And so far, they're succeeding on both counts.
Beating deadline by 40 quadrillion years The story begins, sort of, with the RSA-129 challenge, an obscure code-breaking challenge made in 1977. Martin Gardner spelled it out in his famous Scientific American article, where the mainstream world first learned about the breakthrough in public key cryptography that would expand the technology of privacy to the masses. The estimable Gardner began with a celebrated quote from Edgar Allan Poe: "It may roundly be asserted that human ingenuity cannot concoct a cipher which human ingenuity cannot resolve." Recent developments made that statement dead wrong, Gardner declared. The emergence of the RSA cryptosystem, which seemed to provide a simple way for everyone to keep secrets from all listeners - even those with unlimited time and resources - was an important part of Gardner's argument. The RSA system (which derives its name from its three inventors: Ron Rivest, Adi Shamir, and Leonard Adleman) was the first, and is still the dominant, form of exploiting the breakthrough in public key cryptography, which uses pairs of keys, rather than single keys, to scramble and decode messages when sending them over insecure channels. To prove the system's soundness, Gardner had asked the three inventors to devise a challenge. Rivest picked an RSA key of 129 digits, encoded a message with it, and dared anyone to read it. Rivest, Shamir, and Adleman offered US$100 to anyone who decoded the message, and they didn't seem overly concerned about the money. After all, Rivest estimated that if someone dedicated a supercomputer to breaking the code, it would take 40 quadrillion years. For those of you keeping score, that's a 40 with 15 zeros following it. But even if you did not accept that time frame (Rivest now says it was a miscalculation), a much, much shorter time frame - a billion years, say, or a measly few million years - would ensure that anyone breathing today's air would be fossilized before the secret of the RSA-129 message would be revealed. That's just one reason Gardner believed the Poe quote was erroneous. Gardner finished his column with a Requiem for all the great code breakers throughout history. As codes have become stronger, he wrote, "the talents of these experts have gradually become less useful." And now, with the RSA system, "these people are standing on trapdoors that are about to spring open and possibly drop them completely out of sight." Fifteen years later, public key encryption had spread into many security systems. RSA Data Security Inc., a company specializing in the RSA system, licenses to many big companies such as Lotus and Microsoft. But perhaps the most popular public key encryption program around is PGP - Pretty Good Privacy, Phil Zimmermann's freely distributed software that lets two people send e-mail to each other that they can read but eavesdroppers can't. Or can they? This was the question raised in 1992 by Derek Atkins, then a 21-year-old electrical engineering student at MIT. When Atkins first saw Zimmermann's program, he immediately recognized its importance and joined the impromptu, far-flung, and unpaid development team that works on new versions of the software. But as Atkins talked to friends about the program, he began to wonder what attacks might work against it. Robert Morris implied that there are two general ways to crack a cryptosystem. One is to explore the possibility that an unintended weakness will enable you to break the codes - akin to Morris's suggestion to look for plaintext. Expect people to make mistakes. The other method is to unleash a frontal assault on the crypto, applying more resources - both computational and intellectual - toward breaking the code than the system designers would have thought possible. Beware the frontal assault.
(Page 3) Here's a good way to distinguish between the two: Let's say you've got a friend's ATM card and, purely for experimental purposes, you want to draw money out of the bank. But you don't have the personal identification number. In an attack focusing on mistakes, you try easily recognizable key combinations - those that spell out the name of your friend's dog, or that form a simple number combination, such as 1234. Maybe you get lucky and guess right. Your chances depend on the negligence of your friend. But a frontal assault, while more tedious and time-consuming, is more likely to succeed. First, you type in 0000. If that doesn't work, you try 0001. And you methodically count upward - searching what is known as the keyspace, or space of possible keys - until you hit the right PIN. As it turns out, something existed that could deliver both the computational and intellectual resources required to pull off a credible direct attack. To Atkins and his friends, that something was the Net. They suspected that by tapping into a previously unavailable resource - the thousands of computers accessible through the Internet - they might make code-breaking history. They would regard the aggregate computing power of Internet users as a giant supercomputer, a kludged cousin to the ones that supposedly exist in Fort Meade's basement. So, Atkins and his colleagues - including Michael Graff at Iowa State University and Paul Leyland of Oxford University - decided to try an attack based on dispersed resources and fanatical dedication. They also agreed that the most direct route to cracking PGP would be to employ a mathematical technique called factoring. What is factoring and why is it important? Well, the strength of PGP or other cryptosystems that use RSA public key cryptography, rests partly on certain mathematical principles. For reasons that your high school math teacher may know, it's very easy to multiply two big prime numbers to get a whomping huge number that might act as a key to encode and decipher text. But if you present that huge number to someone, it's damn difficult for him or her to figure out those two original prime numbers. Actually, "damn difficult" isn't nearly strong enough to convey how hard it is. But that difficulty is essential, because in the RSA system eavesdroppers can easily obtain the number that comes when the two primes are multiplied together. Yet to use that number to read stolen messages, it must be factored to yield the original primes. When the crackers considered a direct attack against PGP, however, they realized that the numbers routinely used as keys were so big that, even with the power of the Net, they could not be factored. Then Arjen Lenstra, a noted mathematician at Bellcore, pointed them to the RSA-129 challenge. Why not use the collective force of the Internet to attack RSA-129? So, 15 years after Rivest threw down the gauntlet with the challenge, Atkins and his colleagues joined forces with the Net to attempt to collect that $100 reward. What's more, the crackers figured they could do it in a matter of months. The first, and probably most important, thing Atkins and company required was a good factoring algorithm, the mathematical technique used to narrow the possibilities of which two prime numbers might have combined to make that 129-digit composite. As it turns out, there had been some conceptual advances in this area since Gardner's column was published. Specifically, someone had devised the "double large prime multiple polynomial variation of the quadratic sieve." Atkins says that this was a huge time-saver. The method involves searching for certain numbers known as unit vectors. After identifying the unit vectors, you can combine them to chart mathematical relations in a way that yields the two original primes. "One way of looking at it is that we were searching for 8 million needles in a haystack full of countless needles, and any of these needles is as good as any other," says Atkins. "You're not looking for any particular needle - you just find enough of them and combine them in a special mathematical means to actually factor the number." This technique was perfect for a distributed Internet attack, where hundreds of people could donate computer time to solve the problem. The crackers needed about half a million unit vectors, but not every possible one was needed to factor the number. "If you say you'll start searching from a certain location and then you fall off the Earth, it's not a problem," says Atkins. "If you don't turn in your needles, someone else will turn them in later on."
(Page 4) By late summer 1993, Atkins and company had the software ready, and the team began recruiting volunteers for the unit vector hunt. They sent calls out through mailing lists and newsgroups. Anyone who downloaded the software could play. Participants put the program on their machines, and when their computers had accumulated 25 "needles," they automatically sent the needles to MIT. The response was terrific: more than 1,600 machines from all over the world worked on the problem. "We had every continent except Antarctica," Atkins says. Computers ranged from garden-variety PCs to Bellcore's 16,000-processor MasPar supercomputer, one of the most powerful computers in the world. A standard measurement of computer power is a mips year, based on a million-instructions-per-second machine running for a solid year. From September 1993 to April 1994, the RSA-129 experiment used about 5,000 mips years. Then Atkins and the others guessed that they had enough unit vectors for the calculation. "Basically, what happens is you get all these needles and you put them in a very sparse matrix," says Atkins. "And you need a very powerful computer to take the matrix and squoosh it down." Atkins sent a tape with 400 Mbytes worth of unit vectors via FedEx to Lenstra at Bellcore. Lenstra fed it to his machine, and for two days it squooshed. On April 26, 1994, roughly eight months after they started, Atkins posted the following message on the Net:
We are happy to announce that RSA-129 = 114381625757888867669235779976146612010218296 72124236256256184293570693524573389783059712 3563958705058989075147599290026879543541 = 349052951084765094914784961990389813341776463 8493387843990820577 * 32769132993266709549961 988190834461413177642967992942539798288533
Applying the key yielded the message that supposedly would not be read for 40 quadrillion years: "The magic words are squeamish ossifrage." To be fair, Rivest did not exactly pass out when he saw the magic words presented to him. For one thing, in the intervening years he had forgotten what the message said. And then, as new factoring algorithms emerged, he had come to accept the fact that one day he might have to write out a check for $100. (The successful crackers donated the money to the Free Software Foundation.) "It was probably accurate for the analysis of the fastest algorithm we knew about at the time, but technology was moving fast on the factoring frontier," Rivest says. But hold on here. The very idea of a factoring frontier throws some doubt on the security of the public key cryptosystem. Now, it's important to note that breaking RSA-129 does not mean that PGP in particular, or RSA encryption in general, is weak. An RSA key based on a 129-digit prime is only 425 bits long. Atkins later calculated that had his team attempted the same task, using the same factoring algorithm with the recommended RSA key of 1024 bits, their computers would still be working on the problem - for a few million more years. Yet that degree of futility was once predicted for those attempting to factor RSA-129. Is it possible that one day even newer factoring techniques might melt down even the fattest RSA keys? That's not taking into account the possibility of a dramatic advance in hardware, such as the development of quantum computers, machines that take advantage of subatomic physics to run much faster than our current models. (Think more like the difference between turtles and laser beams.) All that is speculation, though. The reality is that Derek Atkins and his colleagues took what seemed an invincible problem and, working informally with an ad hoc collection of computers, managed to crack it. "What we learned is that a bunch of amateurs can get together and do this," Atkins says. The breaking of RSA-129 established a disturbing principle, albeit one embedded in Robert Morris's first bit of wisdom: Don't ever underestimate what a few good hackers can do with a good algorithm and a few thousand mips years.
The cypherpunks key-cracking ring The next step in this strange form of participatory cryptanalysis began when Hal Finney made his challenge. A Santa Barbara, California, programmer and a participant in PGP development, Finney was a regular follower of the cypherpunks mailing list, which is where he laid out his idea. The cypherpunks are a loose confederation of crypto-activists, who have for the past three years conducted an active colloquy about issues related to cryptography and participated in the field by writing crypto software, ranging from encryption toolkits to anonymous remailers.
(Page 5) Throughout July '95, the cypherpunks list filled with messages speculating on ways to crack what was considered the relatively weak crypto used in Microsoft's database program Access. The posters were not interested in raiding anyone's data. The idea was to slam an exclamation point on what was considered an intolerable political situation: the United States government, by limiting the key size of cryptography approved for export, was foisting a wimpy form of crypto on all of us. The July postings opened a new chapter in cypherpunk history: garage-band cryptanalysis - the cracking, rather than the creating, of code. Now that computer security had become the hot topic of a broader population, the cypherpunks were about to engage in a series of actions that would highlight the flimsy state of our patchwork security system - one hobbled by government interference and amateurish implementation. Presumably, observers would then adopt the obvious conclusion: only a strong, well-supported cryptography infrastructure could address the complex problems of a global network. In the case of export controls, the system just wasn't working. The strength of cryptosystems commonly depends on the size of the keys that code and decode the messages. The longer the key, the stronger the crypto. Domestically, there are no limits on key sizes. But government officials believe that the widespread use of strong cryptography outside the US would hamper law enforcement and threaten national security. They fear the specter of terrorists, child pornographers, and drug dealers taking advantage of a ready-made security system. As a result, the US limits key sizes in shrink-wrapped software shipped outside the country - generally to 40 bits. But in effect, the government often winds up limiting crypto for the rest of us. Since companies like Microsoft, Sun Microsystems, and Apple Computer generate about half their revenues overseas, they're loath to put out two versions of their products. Some simply use the short-key versions in all models. Others try to support two versions: a domestic version with long keys and an export version with short keys. In either case, a standard system with strong cryptography - the ideal solution - eludes the companies. If someone dramatically exposed the fact that 40-bit crypto could be broken by amateurs, this fact would be very useful propaganda for the pro-crypto agenda. But how could the cypherpunks achieve this? Again, in line with Morris's first tenet, they chose a frontal assault, unleashing huge resources. But factoring would not be the right approach in this case. Instead, the cypherpunks had an opportunity for a brute-force attack, an attempt to try out every possible key. Let's go back to our ATM example. A typical ATM PIN has only 10,000 possibilities, so a brute-force attack means that eventually you'll be able to sweep every possibility in the keyspace in 10,000 attempts at most. The cypherpunks would attempt the same thing with Microsoft Access, which relies on an encryption method that uses a single key to encode and decipher data. Experts recommend that the key be a minimum of 128 bits, so presumably a 40-bit key would be much more vulnerable. Still, a 40-bit key has about a trillion actual possibilities, enough to keep a mass of workstations busy for days. But that was what the cypherpunks had in mind: a phalanx of attackers, each of whom would claim some portion of keyspace, test it, and then request another. The process would continue until someone found the key. As it turns out, the cypherpunks never found the key to Microsoft Access; the effort got bogged down for technical reasons that the participants still haven't identified. (Some, like Finney, say they failed because Access didn't use a single-key encryption.) Finney had a strong interest in how cryptography would be used in electronic commerce, and he'd become familiar with the technology used by Netscape Communications Corp. in its Navigator browser. Called Secure Sockets Layer, it used RSA technology, which RSA Data Security claimed provided bulletproof security. But Netscape, like Microsoft, was not about to violate US export control laws. The company released two commercial versions of the browser: a domestic version with a 128-bit key and a version for export, with the required 40-bit key. Finney wondered: what if the cypherpunks were to hack Netscape? Just as Rivest had done with RSA-129, Finney constructed a challenge. He performed a dummy transaction within Netscape and used the export version to encode it. He then challenged his fellow cypherpunks to break his encoded transaction. So began a race to be the first to complete a brute-force attack on Netscape's export-level security - and to embarrass the US officials who assured people that such security was sufficient.
(Page 6) The first attempt was organized by Adam Back, a 25-year-old computer science student at the University of Exeter in England. Back was one of a number of students who had been reading the cypherpunk list to satisfy their curiosity about cryptography. Over the previous month, Back - with the help of two colleagues - became a central figure in writing scripts to allow people to participate in a group crack. Back's original intent was to apportion the keyspace among many people by assigning slices from his Web page. But one programmer, an Australian named Eric Young, offered to organize half the search himself, moving through the second half of possible keys. As it turned out, the first half of the keyspace would be swept by a single programmer - a 24-year-old, American-born grad student at Sweden's Linköping University named David Byers. His university had a powerful MasPar MP-1 computer, which could search the keyspace at about 1.5-million keys per second. He ran the program on the MasPar for six hours at a time over several days, but then had to interrupt the process. "Someone else had to use the MasPar for a weeklong project," Byers says. He insists he had no problem with this: "People doing 'real work' should have precedence." It was during this lull in the action that a second attempt got underway by an individual who wanted to see if he could solve the problem on his own. Damien Doligez was a 27-year-old computer scientist who had just gotten his PhD and was working as a researcher at INRIA, a French government computer lab. His office was situated in a cluster of shacks in a former NATO base a few miles outside Versailles. He knew that the cracking feat was possible and assumed that the cypherpunks would have fulfilled Finney's challenge fairly quickly. Still, Doligez decided to do it himself. Doligez had access to an entire network of computers at INRIA, including a KSR-1 - the equivalent of six to ten workstations. Over the next week, Doligez concocted a small program to allow a computer to quickly test a potential key. Then he adapted the program to work on the various machines on the INRIA network, as well as some machines at nearby universities. His workstation acted as the server, distributing the work to a few dozen machines. Five minutes after an INRIA worker would stray from his or her computer, Doligez's program would take over the machine, crunching perhaps 10,000 keys per second. Simply by touching the keyboard, a user could regain control over the machine. No one complained. "It's very open here; there's no administrative problem using those machines," he explains. "You just have to ask for permission first. I never got the answer No." Doligez figured his odds of finding the key first would be better if he started from the end of the keyspace and worked backward. After a few false starts and glitches, the program was working fine when Doligez left work on Friday, August 11, for a four-day weekend. Over the holiday, he used his home computer to check his workstation. "I saw that it found the key," he says. But he figured he'd wait until he went back to work to make the announcement. Meanwhile, the ad hoc British/Austra- lian/Swedish team kept at it. Using an array of workstations, Young in Australia had swept the top half of the keyspace, and had not found the key. It had been up to Byers in Sweden to search the first half of the space. His first few days had been fruitless. He eventually regained control of the MasPar but still hadn't found the key by Friday, August 11, when he set things up and left for the weekend. Only an hour or so after Byers left work, the MasPar located the key. It was nestled just below the halfway point in the keyspace. However, Byers did not discover this until he returned to work on Tuesday. He e-mailed the key to Adam Back. "I wasn't thinking about posting the result publicly," Byers says. "I didn't think it was that important. It was something I was just doing for fun." Back immediately tried to use the key to decrypt the message in Finney's challenge. "Once you've got the key, you've got to decode it," he says. "But, I was making a small error. I was only getting the first part of the message, and the rest was garbled." The next day, Back took his wife and kids to the beach. That was the day Doligez drove to work from his home outside Paris and recovered the key from his workstation. He successfully decrypted the message and posted his discovery to the cypherpunks. Those familiar with the RSA-129 crack would appreciate the address of the fictional character that Hal Finney had created in his coded message: "Mr. Cosmic Kumquat, SSL Trusters Inc., 1234 Squeamish Ossifrage Road, Anywhere, NY 12345 (USA).''
(Page 7) Posting to the cypherpunks list turned out to be an inexpensive means of getting lustrous media exposure. Reporters from The New York Times and The Wall Street Journal routinely scan it for scoops. Once one of those venerable broadsheets runs an article, media bottom feeders descend en masse. When reporters besieged Doligez - so much so that he quickly created a "virtual press conference" on his Web page - he took pains to emphasize that this could be done only because the US export standards mandated a weak form of crypto. Because the break occurred just a week after Netscape enjoyed an extraordinarily successful public stock offering, some journalists played the crack as if it spoke to the state of the company's overall security, and not as an example of the government's export rules weakening software. In a message Netscape sent over the Net later that week, the company noted that Doligez had simply broken one message - and that had taken about 64 mips years to carry out. Netscape correctly noted that its domestic version also used a much sounder 128-bit key. Doligez agreed that with his resources, attempting a brute-force attack on such a key would be ludicrous. "We are not even talking centuries," he says. He'd even done the math. "If you had a billion machines, each one of them a million times as powerful as what I had, you would still need about 6 billion years to do it." As far as the cypherpunks were concerned, this was the point: export-level crypto was needlessly weak. Unfortunately, the stronger domestic version of Netscape Navigator is effective only when communicating with similarly configured US versions. Yet the Net is supposed to be a global phenomenon, with a single level of high security. The cypherpunks had made the point that export-control crypto failed to heed the first of Bob Morris's warnings. But what about the second point? The one about exploiting your opponent's mistakes? That would be left to two students at the University of California at Berkeley.
Not your random hack Only a few weeks later, in September 1995, David Wagner was sitting in front of his computer, looking at Netscape's security programs. He couldn't believe what he saw. "Something that looks strange jumps at you," he says. "It just kind of gets your attention. That's what pointed me to it." Wagner was a 21-year-old graduate student at Berkeley. He had arrived four weeks earlier and met a fellow first-year grad student, 22-year-old Canadian Ian Goldberg. Both held similar interests in computer-security issues, and both had been inspired by the cypherpunk hacks. They, too, liked the idea of hacking Netscape. But the brute-force attacks had just been completed, so the two students began to explore a different mode of attack - looking for plaintext. Could it be that Netscape's security team had made some egregious error in implementing their software, exposing what might be millions of electronic commerce transactions to eavesdroppers? Not likely. But, as Morris suggests, you never know until you look. The folks at Netscape, after all, were human. And that's when Wagner saw it. Buried in the code were the instructions for Netscape's pseudo-random number generator. An important part of many cryptosystems, this piece of code scrambles the plaintext in such a way that the encoded text has no systematic means of conversion. It is well known that a lack of true randomness is a weakness smart code breakers can eventually exploit. So, it's important to have a solid PRNG - something that spins the alphabetic roulette wheel quite thoroughly. A good PRNG always uses an unpredictable "seed," a number that begins the randomization process. Since, unlike dice, computers do the same thing each time they run, it's essential to begin the process with a seed that a potential enemy cannot possibly guess. Methods of choosing a seed often include using some off-the-wall statistics from the real world - the position of the mouse, for instance.
(Page 8) Netscape ignored this wisdom. As Wagner saw, its PRNG worked by taking the time of day and two forms of identification called the Process ID and the Parent ID. This was a disaster. Finding the first part of the seed is a no-brainer - just run through various times of day. In many cases, the other parts of the seed, the identification numbers, are easy to intercept, particularly if someone is sharing a server with a number of people - as often happens in an Internet environment, particularly a university like UC Berkeley. "If an attacker has an account on your machine, it's trivial," says Goldberg. "But it's not too hard to figure out the IDs even if the attacker has no way of accessing the machine." This is because the identification numbers are only 15 bits long - not a difficult task for a brute-force attack. Put another way, Netscape made this sort of mistake: Let's say you are playing a game with a friend in which you think of any object in the world and your friend has to guess it. Chances are unless you choose something obvious, your friend isn't going to nail it right away. But what if you slip up and say you're thinking of famous pictures in the Louvre? It radically narrows the possibilities. Wagner and Goldberg began writing a program to take advantage of Netscape's weakness. They worked over a weekend, and on Sunday night they tested it. By zeroing in on the huge flaw in Netscape's implementation, they were able to find a key in less than a minute. So much for Netscape security. Goldberg posted the result to the cypherpunks mailing list that night. "We didn't expect lots of press," he says. Silly boy. After The New York Times ran a story, the two grad students were deluged with questions from journalists and curiosity seekers. They used the opportunity to give a warning. "We're good guys," says Goldberg. "But we don't know if this flaw has been discovered by bad guys." Better cypherpunks than crooks. But you have to figure that sooner or later, crooks are going to get in this game. Unlike the first Netscape crack, where the company could quite rightfully claim that its otherwise strong crypto was crippled by government restrictions, this was a total flub by whoever was in charge of software security. Crackers didn't need to tap into a network of workstations or get access to a supercomputer. In certain circumstances, all you needed was a minute's worth of crunching on a Pentium machine. This wasn't a case of poor judgment - it was incompetence. To its credit, Netscape immediately rushed out a new version of Navigator that addressed the problem. But if the company blew this, what other mistakes, perhaps more critical, has it made? None of the cypherpunks involved in the cracking project want to single out Netscape as the worst offender. To the contrary, they praise the company as being responsive to reports of security flaws. Indeed, soon after the Berkeley hack, Netscape set up its own program to encourage amateur security testers. Called Bugs Bounty, it offers cash to those who find weaknesses in security, and there already have been $1,000 winners. Expect even more winners, as a tradition has been established: cypherpunks not only write code, they crack codes. Good thing they do it for glory and not crime. But if they can do it, bad guys can too.
Phil and Bob have a chat In a matter of weeks, the back-to-back cracking episodes - ones that seemed destined to continue with the onset of electronic commerce - had appended a giant exclamation point to Morris's talk. Both of his cryptic tenets had been dramatized by crystal-clear examples. It was sort of a belated validation of Edgar Allan Poe's assertion. While in theory an unbreakable cipher is conceivable, you don't want to bet your life on its actual implementation. That's especially true when there exists a throbbing collaborative network of potential crackers - and, maybe, thieves and saboteurs. If this ad hoc effort could succeed, imagine how porous our current cryptosystems must seem to the folks at Fort Meade, whose resources are expansive and whose expertise is unquestioned.
(Page 9) This takes us back to Derek Atkins's original question regarding the safety of PGP, the software considered the choice of cryptorebels worldwide. Certainly in its current strength, it seems impervious to brute-force attacks. But can there be other flaws, perhaps already discovered by the NSA or others? As it turns out, the subject came up the night before Morris's speech at Crypto '95. The former NSA scientist was holding court at a round table at an evening reception. He had mentioned that he wouldn't mind meeting Phil Zimmermann, the author of PGP who had unleashed the program that some consider the antidote to a global epidemic of snooping. Someone flagged down the bespectacled 41-year-old Coloradan, the two were introduced and indicated mutual respect.
"Phil," said Morris, "let me ask you a question. Say that someone used PGP for very bad stuff. How much would it cost us to break it?"
Zimmermann seemed a bit flustered. "Well, I've been asked that before. It could be done."
"But how much would it cost us?"
Perhaps at that moment, the Morris Tenets, not yet delivered, hit Phil Zimmermann with full force. While Morris listened, quite poker-faced, Zimmermann explained that while he believed PGP would not be attacked by key size, the program could be vulnerable to other methods of attack, which he speculated on. Morris ultimately gave no indication whether the NSA has cracked PGP. We still don't know and the spooks aren't talking. Yet notice the question itself. It was not whether PGP could be cracked, but how hard it would be to crack. That was the lesson Morris subtly imparted in his speech the next day, a lesson that Poe would appreciate. But it took the cypherpunk cracking ring to bring that message to the world. In the process, they inadvertently helped usher in a new era of collective code breaking. The Net could begin to cobble together computer power that someday might rival the supercomputers holed up in Fort Meade. And while the Net's collective cognitive power lacks the code-breaking experience of the NSA's élite brain trust, it's significant in itself that smart people are attempting real-world cryptanalysis and are sharing the results. This effort is going to keep a lot of security specialists on their toes. And it's going to knock some others on their asses. Most important, by warning us that perfect safety is an illusion, these garage-band code breakers already have changed the nature of the crypto discussion. In a digital world increasingly dependent on strong encryption, maybe "pretty good" privacy is the best we can expect.

 

HOME PAGE Indice crittografia