Was bedeutet Tivoisierung?
Tivoisierung? Es liegt schon einige Zeit zurück, als dieser Begriff in aller Munde war. Mit der zunehmenden Verbreitung von „Embedded Devices“ auf der Basis von Linux ist die Diskussion in letzter Zeit jedoch wieder aufgeflammt.
Tivoisierung beschreibt den Einsatz freier Software auf Geräten, die nur vom Hersteller signierte Software akzeptieren. Nutzer haben zwar das Recht, den Quellcode einzusehen und zu ändern, können die modifizierte Version jedoch nicht auf dem Gerät installieren. Das Gerät verweigert dann den Dienst oder funktioniert nicht mehr ordnungsgemäß(Wikipedia). Technisch gibt es viele Möglichkeiten veränderten Code zu erkennen und dementsprechend zu reagieren. So prüft die Hardware manchmal die installierte Software mit einer Prüfsumme und schaltet sich ab, wenn sie nicht mit einer erwarteten Signatur übereinstimmt.
Der Ursprung des Begriffs
Der Begriff stammt vom Hersteller des digitalen Videorekorders TiVo, der auf Linux basiert. TiVo veröffentlicht den Quellcode wie von der GPL 2 gefordert. Man kann sie einsehen, verändern, neu übersetzen – allerdings akzeptiert das Gerät nur signierte System-Images. Änderungen durch Nutzer sind technisch blockiert.
Die Open-Source-Debatte: Freiheit vs. Kontrolle
Die Open-Source-Gemeinschaft diskutierte kontrovers über dieses Vorgehen.
- Linus Torvalds (Initiator der Linux-Kernel Entwicklung) sieht darin kein Problem. Der Code sei öffentlich, jeder könne ihn einsehen und nutzen.
- Stallman (Gründer der Free Software Foundation (FSF) widerspricht. Für ihn gehört es zur Software-Freiheit, ein System aus Hard- und Software nach Belieben anzupassen.
Folgende wesentlichen vier Freiheiten hat die FSF dafür definiert1:
0. Die Freiheit, das Programm auszuführen wie man möchte, für jeden Zweck (Freiheit 0).
1. Die Freiheit, die Funktionsweise des Programms zu untersuchen und eigenen Datenverarbeitungbedürfnissen anzupassen (Freiheit 1).
2. Die Freiheit, das Programm zu redistributieren und damit Mitmenschen zu helfen (Freiheit 2).
3. Die Freiheit, das Programm zu verbessern und diese Verbesserungen der Öffentlichkeit freizugeben, damit die gesamte Gesellschaft davon profitiert (Freiheit 3).
Mit der Tivoisierung geht die nach Ansicht der FSF wichtige Möglichkeit verloren, die freie Software im TiVo nach Belieben zu ändern.
GPL 3: Eine Reaktion auf Tivoisierung
Ein Kompromiss wurde in der nun akzeptierten Fassung der GPL 3 gefunden, in welcher die Möglichkeit der „technischen Unterwanderung“ der Lizenz angesprochen wird: Die GPL 3 gibt explizit vor, dass bei einer Modifikation von Code auch „Installationsinformationen“ zur Verfügung gestellt werden müssen. Die Autoren der Lizenz haben hier neben dem „TiVo-Fall“ auch an den immer größeren Einsatz von PDAs, Smartphones oder ähnlichem gedacht, die meist mit einem eigenen Betriebssystem ausgeliefert werden und bei denen die Möglichkeit der Weiterentwicklung oder Anpassung der Software nur geringfügig oder gar nicht gegeben ist. Der Lizenzgeber muss hier sicherstellen, dass es dem Lizenznehmer technisch möglich ist, die Rechte, die er durch die GPL 3 erhält, auch tatsächlich umsetzen zu können.
Die Präambel der GPL 3 ist weitgehend identisch mit der der GPL 2, allerdings enthält der sprachlich überarbeitete Text auch diesen anlassbezogenen Abschnitt 6, der sich mit eingebetteten Systemen und dem „TiVo“-Fall beschäftigt:
Ein „Benutzerprodukt“ ist … ein „Endbenutzerprodukt“, womit ein materieller persönlicher Besitz gemeint ist … der … im Haushalt eingesetzt wird …
„Installationsinformationen“ für ein Benutzerprodukt sind alle Methoden, Verfahren, Berechtigungsschlüssel oder andere Informationen, die erforderlich sind, um modifizierte Versionen eines betroffenen Werks in diesem Benutzerprodukt aus einer modifizierten Version seines korrespondierenden Quellcodes zu installieren und auszuführen. Die Informationen müssen ausreichen, um sicherzustellen, daß das weitere Funktionieren des modifizierten Objektcodes in keinem Fall verhindert oder gestört wird, nur weil eine Modifikation vorgenommen wurde.
Dazu Eben Moglen, Professor für Recht und Rechtsgeschichte an der Columbia Law School in New York und beratend an der Entwicklung der GPL3 beteiligt:
Alle zukünftigen Versionen der GPL werden die [vier oben erwähnten] Freiheiten vollständig schützen, die die Free Software Foundation vor Jahrzehnten definiert hat und die unserer Meinung nach allen Software-Nutzern überall garantiert werden sollten.
Fazit: Was bedeutet das für Entwickler?
Unternehmen, die Open Source unter der GPL 3 nutzen, müssen sicherstellen, dass Nutzer den modifizierten Code nicht nur ansehen, sondern auch ausführen können. Nur so sind die vier Freiheiten vollständig gewährleistet.