Personal tools

Diary privacy with DRM

From GPLv3 Wiki

A user wishes to protect their secrets in their diary file by using DRM technology to encrypt the technology using a private key, a trusted chip and access restriction policies enforced by the hardware of their computer.

Since the diary is simply data and not presumed to be a software package nor even a work licensed under GPLv3, the license terms of the GPLv3 do not apply. Therefore, the GPLv3 does not revoke the user's rights to using digitial restriction management technology.

Enabling DRM in private use with GPLv3 diary software

However, presume the software to keep and maintain a diary has its source code licensed under the GPLv3. And presume the user modifies the software to leverage said DRM technology to:

  • make the software package available for private and exclusive use only by the same user on their system,
  • allow the diary's contents to be published to a remote site without the user's permission (how a user could enable this without their own "permission" is admittedly a bit of a contradiction),
  • to prohibit copying of the modified software on a system,
  • or to restrict execution of modified software on the system to what was last digitally signed by the user.

The above "private uses" of the GPLv3 diary software combining DRM technology do not violate the GPLv3 and are not revoked by the license, but are explicitly protected by section 2 of the license:

All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the Program. ...
This License gives unlimited permission to privately modify and run the Program, provided you do not bring suit for patent infringement against anyone for making, using or distributing their own works based on the Program....

Distributing DRM enabled GPLv3 diary software

Instead, if this same user decides to distribute the modified work described above to another person by either digital storage media or on a pre-installed system enabled with DRM, then the user will have exercised other parts of the GPLv3. "Distribution" is defined in section 2 of the GPLv3:

Propagation of covered works is permitted without limitation provided it does not enable parties other than you to make or receive copies. Propagation which does enable them to do so is permitted, as "distribution", under the conditions of sections 4-6 below.

For precision, "propogation" is defined in section 0 of the GPLv3:

To "propagate" a work means doing anything with it that requires permission under applicable copyright law, other than executing it on a computer or making private modifications. This includes copying, distribution (with or without modification), sublicensing, and in some countries other activities as well.

The user distributing the modified GPLv3 diary software is consequently obligated to follow the conditions of sections 4 through 6 of the GPLv3. "Distribution" is also conditioned in section 3 of the GPLv3, by the following:

As a free software license, this License intrinsically disfavors technical attempts to restrict users' freedom to copy, modify, and share copyrighted works. Each of its provisions shall be interpreted in light of this specific declaration of the licensor's intent....

This same section of the license provides the following restrictions:

Regardless of any other provision of this License, no permission is given to distribute covered works that illegally invade users' privacy, ....


Regardless of any other provision of this License, no permission is given ... for modes of distribution that deny users that run covered works the full exercise of the legal rights granted by this License. ....

Therefore, the user who distributes a modified work licensed under the GPLv3 to illegally invade users' privacy or restrict the use of the software with said DRM technology--as they are both described above in this case--will be considered a violation of the license terms. The licensor and copyright holder are permitted to enforce their copyright through license termination of section 8 of the GPLv3 or by the full extent of the law. The termination clause of the GPLv3 states that a user

: may not propagate, modify or sublicense the Program except as expressly provided under this License. Any attempt otherwise to propagate, modify or sublicense the Program is void, and any copyright holder may terminate your rights under this License at any time after having notified you of the violation by any reasonable means within 60 days....

(Apologies to Linus Torvalds.)