[Traduit de l'anglais]

Tivoïsation

Il existe une classe paradoxale de microcode [firmware] pour laquelle le code source est libre, car porteur d'une licence de logiciel libre, mais dont les binaires sont rendus non libres en pratique par le matériel particulier pour lequel ces programmes sont conçus. La raison de ce paradoxe est que le matériel exige des binaires signés par son fabricant, soit pour démarrer, soit pour activer des fonctionnalités essentielles, ce qui interdit de fait aux utilisateurs l'exécution de versions modifiées du microcode. Nous appelons ces programmes des blobs tivoïsés.

Bien qu'il soit toujours physiquement possible de remplacer les binaires d'origine dans du matériel qui met en œuvre la vérification des signatures, cela ne sert à rien, car l'appareil refuse d'exécuter la version modifiée ou d'effectuer une tâche particulière comme de décoder un DRM. Par conséquent, la liberté n° 1 (l'une des quatre libertés fondamentales) fait défaut, et donc ces binaires ne sont pas libres même si leur code source est publié sous licence libre. La tivoïsation affecte indirectement les autres libertés (celles d'utiliser et de distribuer des versions modifiées), car toute personnalisation du microcode rendra le matériel inutilisable. Ces binaires peuvent cependant être qualifiés d'open source, parce que le terme « open source » est défini par la manière dont le code source est traité.

L'éditeur du microcode ou le fabricant du matériel peuvent mettre en avant cette vérification forcée de la signature comme une « fonctionnalité ». Voici leur argument : votre ordinateur ne démarrera pas (ou sera dépourvu de certaines fonctionnalités importantes) si le matériel détecte un microcode corrompu, donc la tivoïsation protège vos données. Mais nous devrions nous demander : qui protège-t-elle, et de qui ? Qui est propriétaire de ce verrou ? Qui décide que tel logiciel est bon ou mauvais pour mon activité informatique ? Si ce n'est pas moi, alors cet ordinateur n'est pas loyal.

La tivoïsation n'est pas un dispositif de sécurité, c'est un piège pour nos libertés. Elle empêche les utilisateurs de mettre à niveau leur matériel ou leur microcode et elle leur inspire un faux sentiment de sécurité en donnant le contrôle exclusif de leur ordinateur à un fournisseur « fiable » de microcode, ce qui les force à croire le fournisseur sur parole.

Le microcode de plus bas niveau est celui qui a le contrôle le plus poussé sur le matériel. Il contient souvent des portes dérobées et des vulnérabilités que seul le fournisseur « de confiance » (lisez « auquel le matériel fait confiance ») est autorisé à corriger.

Empêcher l'exécution de versions non signées ou autosignées du microcode est une manière pour le fabricant et l'éditeur d'exercer encore plus de contrôle sur votre informatique que si le code source lui-même était privateur ! Cela ne fait que servir les objectifs de l'éditeur ou du fabricant et ne présente aucun avantage pour l'utilisateur du logiciel ou le propriétaire du matériel. Par ailleurs, à supposer que certains modèles fonctionnent avec des versions modifiées, il n'y a aucun avantage à utiliser la version signée par le fabricant plutôt qu'une version autosignée.

L'une des clauses les plus importantes ajoutées en 2007 à la licence publique générale GNU, dans sa version 3, est l'interdiction de prendre un programme sous GPLv3 et de le distribuer sous tivoïsation, parce qu'en pratique cela retire à l'utilisateur la liberté de modifier le programme et d'utiliser ensuite la version modifiée.

D'après les recommandations de GNU pour les distributions systèmes libres, les systèmes d'exploitation qui fournissent de tels microcodes ne sont pas libres, que le code source dont ils dérivent soit libre ou non.