TPM and the free licenses

Grigor Gatchev

This is an attempt to clarify some issues around the compatibility between Digital Rights Management (DRM) / Technological Protections management (TPM) and the free licenses.

Big parts of it are "the bleeding obvious" to most people. However, I noticed that in complex arguments these parts often are forgotten.

It is not absolutely complete - not every specific case will match the explanations below to the degree to be obvious for everyone. (I believe that it is impossible both to encompass all specific cases, and to make something obvious to everyone.) However, it should be a good base for answering questions that appear now complex and divide the free society.

Definitions

Free and non-free

No definition will be all-appropriate. For this discussion, I will use the four Stallman principles, defined for computer programs:

  1. The user is free to run and use the program

  2. The user is free to study the program

  3. The user is free to modify the program

  4. The user is free to distribute the program, in modified or unmodified form.

Principle 2 implies that the preferred stidying / editing / modifying form, its source code, is completely available.

Principle 3 implies that the modified program will also be subject to these freedoms: being allowed to spice your food makes no sense if you are not allowed to eat it after.

Principle 4 in some cases may require that the distributed program will also be subject to these freedoms. (Licenses that require this are called copyleft licenses.)

If all four principles are valid for a case, I will define this case as free. Otherwise, it will be non-free.

The evaluation is done in practice. It does not matter how oblique are the terms that limit the freedom of an user. As long as it is effectively limited, the case is considered non-free.

Content

Any type of organized information that can be subject to these four types of usage is called content.

The types of usage take into account the content specifics (eg. music cannot be "run", but can be played; books can be read, data can be analysed, etc; for books, "preferred" and "non-preferred" form is the same, etc, etc).

Accordingly, the four freedom requirements can be applied to a content. If all of them apply to some content, this content is free. Otherwise, it is not free.

For the goals of this discussion, we will analyse further only the free content.

Platform

For the goals of this discussion, I will define "platform" as any hardware and / or software through which a content can be used.

Content Platform Compatibility

If some content can technically be used on a given platform, I will label it as "platform-compatible". Otherwise, it is "platform-incompatible" for this platform.

The incompatibility may be due to one or more of the following (or other) reasons:

Another reason may be a legal limitation for using this content on this platform. However, this is not a technical incompatibility, but a legal non-freeness.

For the goals of this discussion, we will analyse further only the platform-compatible content. (Essence incompatibility has nothing to do with freeness; format incompatibility is discussed below.)

Platform Freeness

If a platform allows free (as defined above) usage for the free content, technically compatible with it, it is considered to be free. If it doesn't, it is considered to be non-free.

Examples:

The OpenOffice.org Writer word processor can freely edit any document presented in a compatible format. Therefore, it is a free platform.

A TiVO device will not run an OS kernel, unless it is signed by the TiVO company. Since TiVO producers does not give the signing key to every user, this device is a non-free platform. (If the key is freely available to every user, this will be a free platform, despite that keysigning is still required. However, giving the key to every user will disable the rights / protections management: this will not be anymore a DRM / TPM platform.)

Note: "Freely available" refers to freedom, not to price. The price is considered only if it is high enough to be an impediment for the freedom.

A Pentium 4 processor will run any binary code compatible with its instruction set. Its instruction set is also publicly documented, and everyone may use it (eg. make a compiler for it). It is a free platform.

A platform may be non-free due to different obstacles: hardware, software, legal etc. Often these are combined: eg. a typical TPM platform will have all of them.

It is important to remember that the non-freeness of a platform is an aspect of the platform itself, and not of the content or the users. If a Beethoven symphony is not approved by Microsoft, a Zune player will not play it, no matter that the symphony may be absolutely free, and the users may want it. While appearing obvious, this fact is sometimes forgotten in discussions.

Format

The different ways to organize the information in a content are called formats.

Format Platform Compatibility

A format that can be used on a platform is considered compatible with this platform. Otherwise, it is considered incompatible with it.

The format of a content does not change its essence. If a content is platform-compatible by essence, but incompatible by format, it can be made compatible by converting to a platform-compatible format.

Format Freeness

The freedom rules apply to the formats, too. Some formats may impose limitations (technical, legal etc.) on the freedoms of their users; these formats are non-free. Others, who do not impose freedom limitations, are free.

The freedom to convert information from / to a format is implied by freedom rule 3. If this freedom is not present, rule 3 fails: this format is non-free. (The formats that include file-level encoding- and/or encryption-based DRM fall into this category, if the keys are not freely available to every user.)

It is also important to remember that the non-freeness of a format is an aspect of the format itself, and not of the content, platform or the user.

Conclusions

You can't give what you don't own or control

As defined above, the DRM / TPM platforms and formats deny freeness to their users. (That is what they are created for.) This is an aspect of the platform or format; an user cannot effectively change this, and give themselves the freedoms / rights denied by the platform / format, except by breaking the DRM / TPM.

If you are not the entity that controls this platform or format, you too cannot give the users these rights. By putting a content for it under a free license, you will be promising to give the content users rights that you don't own or control. Or, you will be giving the users freedoms that you know in advance they will not be able to benefit from. Effectively, in practice, you are putting this content under a non-free license, despite whatever you may pretend.

If the original license of the content allows you to strip out the freedoms denied by the DRM / TPM, you may be OK. However, the copyleft licenses and some non-copyleft licenses don't allow this.

In short:

DRM / TPM is inherently incompatible with the copyleft and some non-copyleft free licenses.

Silogisms and their answers

There are many silogisms trying to refute this. However, all of them effectively attempt to build a logical perpetuum mobile: the question is not if they are right, but why they are wrong.

Some of the most popular silogisms (and their answers) are:

S: The freedoms are denied by the platform / format, not me. I allow them with my license, the rest is not my fault.

A: Do you know that the platform / format denies (some of) the freedoms you promise with your license? If yes, in practice you knowingly cheat the users. This destroys your reputation, and might be legally questionable.

A drastic, but illustrative example: Would you order the rendition of a Jewish family to a Nazi country, and pretend that their fate is not your fault? After all, you just sent them abroad, this is perfectly OK; other ones killed them...

S: I am just porting this free content to a non-free platform - I am free to do it, am I not?

A: If you keep the free license, you will be promising the non-free platform users freedoms you can't give. If you change the license to a non-free one that reflects the actual situation, you might be permitted by the original license to to this, or you might not be. Check whether the original license permits converting the content to a non-free license.

S: The free licensing for a non-free platform / format is OK, as long as this content is licensed also for a free one.

A: Not all users of the non-free platform / format will have access also to the free one: you will cheat these that don't. And if all or most do, why license this content for the non-free platform?

Also, if the free platform disappears, the content will be effectively rendered non-free. This might be not very probable, but shows the error in this silogism.

S: Forbidding me to freely license content for any platform or format impedes on my freedom - this is a hypocrisy, or a logical mistake!

A: You aren't forbidden - you are objectively unable to do it. You will be promising freedoms that you cannot give. If your license is a copyleft one, you might also be requiring the users to promise and preserve freedoms they cannot give to the others, or even to themselves. Your licensing will be effectively void. What is the sense in using it, apart from misleading the users?

S: So, keysigning my program renders it non-free?!

A: If this signing is required for the program to work, be studied, modified, distributed etc, yes. If it is only a proof that the program is coming from you, it does not render it non-free.

S: Licensing a content under free license for a non-free platform would allow its users to benefit from it, and will give them the knowledge of what freedom is.

A: It is true that they will benefit somewhat. However, by telling them that the content is under free license on their platform, you will be misleading them. The content will be effectively under a non-free, probably platform-specific license. It can be really free only over a free platform, and that is what you will tell them, if you want to be honest.

For this reason, too, they will not gain the knowledge of what freedom is - only the false perception that it is as non-free as anything on their platform.

(This article is a work in progress - it may be revised and updated.)


This article is licensed under the Creative Commons Attribution 2.0 license.