Digg this story   Add to del.icio.us  
The crypto genie is out of the bottle
Jon Lasser, 2001-09-26

Open source licensing puts encryption software beyond the reach of policy.

In response to the terrible tragedies at the World Trade Center and at the Pentagon, Congress appears poised to consider legislation intended to restrict the use of strong cryptography that doesn't permit government access to the contents of a message. Although well-intentioned, it seems to me that such laws would be doomed to failure, due in no small part to the success of open source software such as Linux, and the resulting wide distribution of cryptographic code.

Strong cryptography is used throughout the Internet world. Web pages containing private information such as credit card numbers are protected using Secure Socket Layers (SSL); Virtual Private Network technology enables remote users to securely take part in local network traffic; many email clients use SSL to keep messages secure over local networks and the Internet; and Linux and Unix system administrators the world over use ssh to securely log into and administer remote servers.

All of these functions depend on techniques that encode data so effectively that no amount of computing power available today can unlock the messages without the proper key. If snoopers could break the code, there would be little point in using cryptography at all. It is true that older Web browsers often used low-security cryptography because of old U.S. regulations prohibiting the export of strong cryptography, but these regulations have since been altered to permit the export of such code. This was done largely because the genie was out of the bottle -- an issue I will return to presently.

If proposals for regulating cryptography reflect the laws proposed in the past, they will probably mandate the use of "key escrow" technologies, whereby law enforcement agencies may obtain access to encrypted documents through a backdoor embedded in the messages. In 1993, when an early key escrow technology known as the 'Clipper Chip' was proposed, it was intended to be entirely voluntary. The government believed that by defining this technology as a standard, businesses and consumers would accept this technology and use it, despite the increased potential for government surveillance.

This aspect of the Clipper Chip proposal depended upon relative lack of availability of strong cryptographic software at the time of the proposal. In fact even in 1993 strong cryptography was already widely available in code distributed over the Internet originating from sites outside of the U.S.

PGP 2.0, a strong cryptography package used primarily to encrypt email, was released from New Zealand in September of 1992. By 1996, ssh 1.0 was being distributed... from Finland. Currently, GNU Privacy Guard (GPG), a PGP-compatible program, is being distributed from Germany, and FreeS/WAN, a VPN implementation distributed in part as a patch for the Linux kernel, is being distributed from Canada.

The Crypto Suite
Taken together, the Mozilla Web browser, the OpenSSL library, FreeS/WAN, GPG, and OpenSSH provide a complete set of strong cryptographic tools for nearly any purpose. They're all distributed under the GNU Public License or a BSD-style license, both of which permit essentially unlimited distribution and use of the source code.

Even if we wanted to, there would be no way to limit the use and re-use of this cryptographic software: it is already widely distributed outside of the United States, and we could not expect foreign nationals to destroy every copy of the software at our request. The only people who would be prevented from using the software would be law-abiding citizens-- exactly the people the programs are designed to protect.

The fate of the Clipper Chip was further sealed by a fundamental flaw in all "key escrow" schemes: a user can always use key escrow software, plus use other cryptographic software inside of that. Nobody would know that strong cryptography was being used unless they had already decrypted the outer layer of encryption. Nobody would know that the cryptography laws were being violated until after a wiretap order had already been issued, and even then the message would not be available. The most you could do is arrest the person for violating the cryptography laws.

A widely-proposed solution for this is to simply have the government decrypt all of the traffic on the Internet to verify that further encryption is not being used. The technology to do that for all of the traffic on the Internet almost certainly does not exist. If it did exist, it would have to be an automated system that possessed the back-door key for all traffic; this would be a serious target for hacker attacks, after which no Internet traffic would be secure.

All of the cryptography software that would be necessary to protect any communications network is already available in a widely-distributed open source software package. But even if we could destroy every copy of strong cryptographic software that existed, it would hardly help: books containing the relevant mathematics have traveled the world. We simply can't burn books to preserve freedom.

Given that we can't stop the use of cryptographic software by terrorists and other criminals, we should embrace the same open source software packages to protect ourselves. Every Internet communication protected with strong cryptography is one message that snoops and criminals can't read. We can reduce the vulnerability of our network infrastructure, protect our own data -- and that of our employers -- by using the same open source software that some claim threatens our freedom.

SecurityFocus columnist Jon Lasser is the author of Think Unix (2000, Que), an introduction to Linux and Unix for power users. Jon has been involved with Linux and Unix since 1993 and is project coordinator for Bastille Linux, a security hardening package for various Linux distributions. He is a computer security consultant in Baltimore, MD.
    Digg this story   Add to del.icio.us  
Comments Mode:


Privacy Statement
Copyright 2010, SecurityFocus