In 1989, in a very different world from today's, I wrote the first version of the GNU General Public License, a license that gives computer users freedom. The GNU GPL, of all the free software licenses, is the one that most fully embodies the values and aims of the free software movement by ensuring four fundamental freedoms for every user. These are freedoms: 1) to run the program as you wish, 2) to study the source code and change it to do what you wish, 3) to make and distribute copies when you wish, and 4) to distribute modified versions when you wish.
Any license that grants these freedoms is a free software license. The GNU GPL goes further -- it protects these freedoms for all users of all versions of the program by forbidding middlemen from stripping them away. Most components of the GNU/Linux operating system, including the Linux component that was made free software in 1992, are licensed under GPL Version 2, released in 1991. Now, with legal advice from Professor Eben Moglen at Columbia Law School, I am designing Version 3 of the GNU GPL.
GPL v3 must cope with threats to freedom that we couldn't have imagined in 1989. The coming generation of computers, and many products with increasingly powerful embedded computers, are being turned against us by their manufacturers -- before we buy them. They're designed to restrict the uses to which we can put them.
TRUSTED OR TREACHEROUS?. First, there was the TiVo. People may think of TiVo as a device to record TV programs, but it contains a real computer running a GNU/Linux system. As required by the GPL, you can get the source code for the system. You can change the code, recompile and install it. But once you install a changed version, the TiVo won't run at all, because of a special mechanism designed to sabotage you. Freedom No. 1, the freedom to change the software to do what you wish, has become a sham.
Then came "trusted computing," what I call treacherous computing, meaning that companies can "trust" your computer to obey them instead of you. It enables network sites to tell which program you're running. If you change the program, or write your own, they will refuse to talk to you. Once again, freedom No. 1 becomes lip service.
Microsoft (MSFT) has a scheme, originally called Palladium, that enables an application program to "seal" data so that no other program can gain access to it. If Disney (DIS) distributes movies this way, you'll be unable to exercise your legal rights of fair use and de minimis use. If an application records your data this way, it will be the ultimate in vendor lock-in. This too destroys freedom No. 1 -- if modified versions of a program cannot access the same data, you can't really change the program to do what you wish. Something like Palladium is planned for a coming version of Windows.
ROOT OF EVIL. AACS, the "Advanced Access Content System," promoted by Disney, IBM (IBM), Microsoft (MSFT), Intel (INTC), Sony (SNE), and others, aims to restrict use of HDTV recordings -- and software -- so they can't be used except as these companies permit. Sony was caught last year installing a "rootkit" into millions of people's computers through CDs and not telling them how to remove it.
Sony learned from its mistake: It will now install the "rootkit" in your computer before you get it, and you won't be able to remove it. This plan explicitly requires devices to be "robust" -- meaning you cannot change them. Its implementers will surely want to include GPL-covered software, again trampling freedom No. 1. This scheme should get "AACSed," and a boycott of HD DVD and Blu-ray has already been announced.
Allowing a few businesses to organize a scheme to deny our freedoms for their profit is a failure of government, but so far, most of the world's governments, led by the U.S., have acted as paid accomplices rather than policemen for these schemes. The copyright industry has promulgated its peculiar ideas of right and wrong so vigorously that some readers may find it hard to entertain the idea that individual freedom can trump profits.
SOFTWARE FREEDOM. Facing these threats to our freedom, what should the free software community do? Some say we should give in and accept the distribution of our software in ways that don't allow modified versions to function, because this will make our software more popular. Some refer to free software as "open source," that being the catchphrase of an amoral approach to the matter which cites powerful and reliable software as the highest goal. If we allow companies to use our software to restrict us, this "open-source Digital Rights Management (DRM)" could help them restrict us more powerfully and consistently.
Those who wield the power could benefit by sharing and improving the software they use to do so. We too could read it -- read it and weep if we can't make a changed version run. For the goals of freedom and community, the goals of the free software movement, this concession would amount to failure.
We developed the GNU operating system so that we could control our own computers, and use them in freedom. To seek popularity for our software by ceding this freedom would defeat that purpose. Therefore we have designed Version 3 of the GNU GPL to uphold the user's freedom to modify the source code and put modified versions to real use.
The debate about the GPL v3 is part of a broader debate about DRM vs.your rights. The motive for DRM schemes is to increase profits for those who impose them, but their profit is a side issue when millions of people's freedom is at stake. Desire for profit, though not wrong in itself, cannot be justification for denying the public control over its technology. Defending freedom means thwarting DRM.