English [en]   Deutsch [de]   français [fr]   polski [pl]   русский [ru]  

Dieses Werk ist eine Übersetzung aus dem Englischen.

Android und die Freiheit der Nutzer

von Richard Stallman
Erstveröffentlichung des englischsprachigen Artikels unter „Is Android really free software?“, The Guardian (2011).

Unterstützen Sie die Kampagne Befreien Sie Ihr Android!.

Inwieweit respektiert Android die Freiheit seiner Nutzer? Für einen Rechnernutzer, der die Werte der Freiheit schätzt, ist das die wichtigste über ein Softwaresystem zu stellende Frage.

Die Freie-Software-Bewegung entwickelt Software, die die Freiheit der Nutzer respektiert, um der Software zu entgehen, die dies nicht respektiert. Im Gegensatz dazu konzentriert sich die Idee von Open Source auf die Entwicklung von Quellcode; es ist eine andere Denkrichtung, deren hauptsächlicher Wert die Quellcodequalität statt Freiheit ist. So geht es hier nicht darum, ob Android offen ist, sondern ob es Nutzern ermöglicht, frei zu sein.

Android ist in erster Linie ein Betriebssystem für Mobiltelefone, welche Linux (Torvalds’ Betriebssystemkern), einige Bibliotheken, eine Java-Plattform und einige Anwendungen umfasst. Abgesehen von Linux wurde die Software der Android-Versionen 1 und 2 vor allem von Google entwickelt und unter der Apache 2.0-Lizenz freigegeben, eine laxe freie Softwarelizenz ohne Copyleft.

Die in Android enthaltende Linux-Version ist nicht vollständig freie Software, da es unfreie binäre BLOBs enthält (wie Torvalds’ Linux), von denen einige in Android-Geräten tatsächlich genutzt werden. Android-Plattformen nutzen auch andere unfreie Firmware und Bibliotheken. Abgesehen davon ist der von Google freigegebene Quellcode von Android in den Versionen 1 und 2 freie Software ‑ aber dieser Quellcode ist nicht ausreichend, damit das Gerät lauffähig ist. Einige der in Android enthaltenden Anwendungen sind im Allgemeinen ebenfalls unfrei.

Android unterscheidet sich stark vom GNU/Linux-Betriebssystem, weil es sehr wenig von GNU enthält. Tatsächlich ist so ziemlich die einzige gemeinsame Komponente zwischen Android und GNU/Linux der Betriebssystemkern Linux. Menschen, die irrtümlicherweise denken, „Linux“ würde sich auf die gesamte Kombination von GNU/Linux beziehen, verheddern sich durch diese Tatsache und machen paradoxe Aussagen wie: „Android enthält Linux, aber es ist nicht Linux.“ Dieses Durcheinander kann durch diese einfache Situation vermieden werden: Android enthält Linux, aber nicht GNU; damit sind Android und GNU/Linux grundsätzlich verschieden.

Innerhalb von Android ist der Betriebssystemkern Linux weiterhin ein separates Programm, dessen Quellcode unter GNU GPL, Version 2, lizenziert ist. Die Kombination von Linux mit unter Apache 2.0 lizenzierten Quellcode würde eine Copyrightverletzung darstellen, da GPLv2 und Apache 2.0 unvereinbar sind. Gerüchte, Google hätte Linux irgendwie in die Apache-Lizenz umgewandelt, sind fehlerhaft. Google ist nicht befugt, die Lizenz des Quellcodes von Linux zu ändern ‑ und versuchte es nicht. Würden die Autoren von Linux die Nutzung unter der GNU GPL, Version 3, erlauben, könnte dieser Quellcode mit Apache-lizenzierten Quellcode zusammengeführt und mit der Kombination unter GPLv3 freigegeben werden. Aber Linux wurde so nicht freigegeben.

Google hat die Anforderungen der GNU General Public License für Linux erfüllt, die Apache-Lizenz erfordert für den Rest von Android jedoch keinen Quellcode. Google teilte mit, sie würden den Quellcode von Android 3.0 niemals veröffentlichen (abgesehen von Linux). Der Quellcode von Android 3.1 wird ebenfalls zurückgehalten, somit ist Android 3.x, abgesehen von Linux, schlicht und einfach unfreie Software.

Google verweigerte dies mit der Begründung, der 3.0-Quellcode sei fehlerhaft und Nutzer sollten auf die nächste Freigabe warten. Das mag ein guter Rat für Menschen sein, die das Android-System einfach nur nutzen wollen ‑ dies sollten Nutzer aber selbst entscheiden können. Wie auch immer könnten Entwickler und Tüftler einige der Änderungen in ihren eigenen Versionen einfügen wollen, um diesen Quellcode schön werden zu lassen.

Glücklicherweise gab Google den Quellcode für Android 3.* später frei, als Version 4 (auch mit Quellcode) freigegeben wurde. Das oben erwähnte Problem erwies sich eher als eine vorübergehende Anomalie, anstatt einem Kurswechsel. Was allerdings einmal geschehen ist, kann wieder geschehen.

Auf alle Fälle wurde der Großteil des Quellcodes von verschiedenen Android-Versionen als Freie Software freigegeben. Heißt das, dass Produkte mit diesen Android-Versionen die Freiheit der Nutzer respektieren? Nein, aus mehreren Gründen.

Zunächst enthalten die meisten unfreie Google-Anwendungen zur Kommunikation mit Diensten wie YouTube und Google Maps. Diese sind offiziell nicht Teil von Android, aber das macht das Produkt nicht in Ordnung.

Die meisten Android-Geräte werden mit der unfreien Google Play-Software (vormals Android Market) ausgeliefert. Diese Software lädt Nutzer mit einem Google-Konto dazu ein, unfreie Anwendungen zu installieren. Ebenso ist eine Hintertür vorhanden, mit der Google Anwendungen zwangsweise installieren oder deinstallieren kann. Dies ist offiziell nicht Teil von Android, aber das macht es nicht minder übel.

Android-Produkte werden auch mit unfreien Bibliotheken ausgeliefert. Diese sind offiziell nicht Teil von Android, sondern sind Teil jeder echten Android-Installation, da verschiedene Android-Funktionen von ihnen abhängen.

Sogar die Programme, die offiziell Teil von Android sind, entsprechen möglicherweise nicht dem von Google freigegebenen Quellcode. Die Hersteller können diesen Quellcode ändern und geben häufig den Quellcode ihrer Versionen nicht frei. Die GNU GPL verlangt den Quellcode ihrer Linux-Versionen zu vertreiben, unter der Annahme, dass sie befolgt wird. Der restliche Quellcode, unter laxer Apache-Lizenz, verlangt nicht die Freigabe der tatsächlich genutzten Version des Quellcodes.

Eine Änderung, die einige Hersteller in Android vornehmen, ist das Hinzufügen eines versteckten allgemeinen Überwachungspakets wie Carrier IQ.

In Replicant, eine freie Version von Android, das nur wenige Handymodelle unterstützt, wurden viele dieser Bibliotheken ersetzt und können ohne die unfreien Erweiterungen genutzt werden. Aber es gibt andere Probleme.

Einige Gerätemodelle sind „Tyrannen“: sie sind so konzipiert, damit Nutzer keine eigene modifizierte Software installieren und ausführen können, nur die von einigen Unternehmen genehmigten Versionen. In einem solchen Fall sind die ausführbaren Dateien unfrei, auch wenn sie aus freien und verfügbaren Quellen stammen. Jedoch können einige Android-Geräte gerootet werden, daher können Nutzer unterschiedliche Software installieren.

Wichtige Firmware oder Treiber sind generell ebenfalls proprietär. Diese umfasst das Telefonfunknetz, WLAN, Bluetooth, GPS, 3D-Grafiken, die Kamera, den Lautsprecher und in machen Fällen auch das Mikrofon. Bei einigen Modellen sind wenige dieser Treiber frei und es gibt einige, bei denen es auch ohne geht ‑ aber man kann nicht ohne Mikrofon oder Telefonfunknetz auskommen.

Die Telefonnetzfirmware ist vorinstalliert. Wenn sie dort nur präsent und mit dem Telefonnetz kommunizieren würde wenn man es wünscht, könnte sie als Äquivalent zu einem Schaltkreis betrachtet werden. Wenn wir darauf bestehen, dass Software in einem EDV-Gerät frei sein muss, können wir vorinstallierte Firmware, die nie aktualisiert wird, übersehen, weil es für den Nutzer keinen Unterschied macht, ob es ein Programm oder ein Schaltkreis ist.

Leider wäre es in diesem Fall ein bösartiger Schaltkreis. Bösartige Funktionen sind nicht akzeptabel, egal wie sie umgesetzt werden.

Auf den meisten Android-Geräten hat diese Firmware so viel Kontrolle, dass sie das Produkt in ein Abhörgerät verwandeln könnte. Auf einigen steuert sie das Mikrofon. Bei einigen kann sie durch gemeinsam genutzten Speicher die vollständige Kontrolle des Hauptrechners übernehmen, und kann folglich, welche freie Software auch immer vom Nutzer installiert wurde, hinwegsetzen oder ersetzen. Mit einigen Modellen ist es eine Fernsteuerung dieser Firmware ‑ und folglich des Telefonrechners ‑ über das Telefonfunknetz möglich. Der Punkt von freier Software ist, die Kontrolle über die eigene Datenverarbeitung zu haben ‑ und sich das nicht qualifiziert. Während jedes Rechnersystem Programmfehler ‚Bugs‘ HABEN könnte, können diese Geräte tatsächlich Wanzen ‚Bugs‘ SEIN (Craig Murray bezieht sich in Murder in Samarkand auf seine Beteiligung an einer geheimdienstlichen Maßnahme, in der per Fernzugriff ein Nicht-Android Mobiltelefon eines ahnungslosen Ziels in ein Abhörgerät umgewandelt wurde).

In jedem Fall ist die Telefonnetzfirmware in einem Android-Gerät nicht äquivalent zu einem Schaltkreis, da die Hardware die Installation neuer Versionen erlaubt und auch praktiziert wird. Da es sich um proprietäre Firmware handelt, kann praktisch nur der Hersteller neue Versionen installieren ‑ Nutzer nicht.

Trägt man diese Punkte zusammen, könnte man unfreie Telefonnetzfirmware tolerieren, sofern neue Firmware-Versionen nicht heruntergeladen, nicht die Steuerung des Hauptrechners übernehmen und nur kommunizieren werden kann, wann und wie das freie Betriebssystem die Kommunikation zulässt. Mit anderen Worten muss es ein äquivalenter Schaltkreis sein, der nicht böswillig sein darf. Es steht dem nichts im Wege, ein Android-Telefon mit diesen Merkmalen herzustellen, es ist aber keins bekannt.

Android ist kein Self-Hosting-System*; die Entwicklung für Android muss auf irgendeinem anderen System erfolgen. die Hilfsprogramme in Googles „Software Development Kit“ (SDK) scheinen frei zu sein, aber dies zu überprüfen ist harte Arbeit. Die Definitionsdateien für bestimmte Google-APIs sind unfrei. Die Installation des SDKs erfordert die Unterzeichnung einer proprietären Softwarelizenz, die Nutzer ablehnen sollten zu unterzeichnen. Das SDK von Replicant ist ein freier Ersatz.

Aktuelle Presseberichte über Android konzentrieren sich auf die Patentkriege. In den 20 Jahren der Bekämpfung und Abschaffung von Softwarepatenten warnten wir vor solchen Kriegen. Softwarepatente könnten die Beseitigung von Android-Funktionen erzwingen oder sogar unverfügbar machen. Weitere Informationen, warum Softwarepatente abgeschafft werden müssen, finden Sie unter endsoftpatents.org.

Allerdings sind die Patentattacken und Googles Stellungnahmen nicht direkt für das Thema diese Artikels relevant: wie sich Android-Produkte teilweise einem ethischen Vertriebssystems nähern und verfehlen. Dieses Problem verdient ebenfalls die Aufmerksamkeit der Presse.

Android ist ein wichtiger Schritt in Richtung eines ethischen, benutzerkontrollierten, Freie-Software-Mobiltelefons, aber es ist noch ein langer Weg. Hacker** arbeiten zwar an Replicant, aber ein neues Telefonmodell zu unterstützen ist eine große Aufgabe, und das Problem mit der Firmware bleibt nach wie vor. Obwohl heutige Android-Telefone erheblich weniger schlecht als Apple- oder Windows-Smartphones sind, kann nicht gesagt werden, dass sie die Freiheit der Nutzer respektieren.

Anmerkungen der ÜbersetzerInnen:

  1. * Kein komplettes System, das im Wesentlichen alle zum Betrieb notwendigen Komponenten umfasst.
  2. ** Siehe auch weitere Informationen zum Begriff Hacker.

Die Free Software Foundation ist der organisatorische Hauptsponsor vom GNU-Betriebssystem. Unsere Mission ist die Freiheit zu bewahren, zu schützen und zu fördern, um Rechnersoftware nutzen, untersuchen, kopieren, modifizieren und weiterverbreiten zu können und die Rechte von Freie-Software-Nutzern zu verteidigen. Unterstützen Sie GNU und die FSF durch den Kauf von Handbüchern und Kleidung, als assoziiertes Mitglied oder mit einer Spende direkt an die FSF oder via Flattr.

Zum Seitenanfang