microG hilft dabei, ein Smartphone, ohne Google einzurichten. Hier unser Interview mit Marvin Wißfeld dem Entwickler der Google Alternative.
Die Nutzung von microG hat zur Folge, dass man auf Smartphones den Komfort von Android nutzen kann, ohne von vorne bis hinten ausgeforscht zu werden. Quasi ein „kastriertes“ Android, bei dem kaum noch Daten an die Google-Server übertragen werden. Wie schafft es Google, die Kontrolle über das mobile Betriebssystem Android mit aller Gewalt durchzusetzen? Was braucht es, um Google die Stirn zu bieten? Das und vieles mehr, werden wir in unserem Interview mit dem Erfinder von microG, Marvin Wißfeld, herausfinden.
microG: eine vielversprechende Alternative
Google versucht, die Kontrolle über das mobile Betriebssystem Android mit aller Gewalt durchzusetzen. Trotz aller Bequemlichkeit und Qualität des weitläufigen Google-Ökosystems, sollten wir eines nicht vergessen: Google ist und bleibt eine der größten und ewig hungrigen Datenkraken, die es derzeit gibt.
Mit cleverem Marketing hat es der Internet-Gigant im Laufe der Jahre geschafft, aus dem Android-Open-Source-Projekt (AOSP), ein Milliarden-Geschäft zu machen. Googles proprietäres Android-Ökosystem wird einem quasi mit jedem Kauf eines Android-Smartphones aufgezwungen. Marvin Wißfeld, der Entwickler von microG, hat sich vorgenommen, das zu ändern. Eine Alternative musste her – microG war geboren.
Android ohne Google – unser Interview mit dem Entwickler von microG
Mit Euer Hilfe sind überraschend viele Fragen an Marvin zusammengekommen. Aber nicht nur bei uns, im Forum von Tarnkappe.info, sind viele Fragen eingetroffen. Auch die Leser auf Reddit waren sehr fleißig.
Tarnkappe.info: Was hat Dich dazu bewogen, mit der Entwicklung von MicroG zu beginnen, Marvin?
Marvin Wißfeld: Ich hatte damals einen Zugangscode zur Beta-Version von Ingress, einem der ersten AR-Spiele, erhalten (AR = Augmented Reality). Zum Spielen von Ingress war es anfangs notwendig, sich auf dem Android-Gerät mit einem Google-Account einzuloggen. Ich hatte zu diesem Zeitpunkt schon ein Custom-ROM (inoffizielles Betriebssystem) ohne Google-Dienste genutzt. Somit wäre eigentlich das Spielen von Ingress für mich nicht möglich gewesen. Das wollte ich aber natürlich nicht auf mir sitzen lassen – und nach ein paar Wochen stand quasi der erste Prototyp von microG. Ich hatte schon zuvor mit Netzwerk-basierter Ortung für Assisted GPS auf Android rumgespielt und hatte deshalb schon einen guten Überblick, wie diese Sachen funktionieren.
„Eine generische 1-Klick-Installation von microG wird es wohl nicht geben“
Tarnkappe.info: Marvin, ein Leser möchte gerne von Dir wissen, ob es irgendwann eine einfache „1klick Installation“ geben wird. Es gibt ja für viele Androiden schon recht einfache Lösungen, um das Smartphone zu Rooten, d.h. die volle Kontrolle über das Gerät zu erlangen. Gerade für User, die sich nicht so gut auskennen, wäre das eine große Hilfe.
Marvin Wißfeld: Eine generische 1-Klick-Installation von microG halte ich für unrealistisch. Da man für das Signatur Spoofing das ROM patchen muss, kann das nicht immer generisch, also plattformübergreifend, funktionieren, da ROMs (und Geräte) nun mal unterschiedlich sind. Ich würde mich freuen, wenn das Problem langfristig eher dadurch gelöst wird, dass ROMs microG schon dabei haben oder zumindest eine Möglichkeit bieten, microG zu installieren. Auch ein ZIP, das man direkt nach der eigentlichen Installation einrichten kann, wie das Root-Addon für LineageOS, wäre hier eine Möglichkeit.
Eine Alternative zur 1-Klick-Installation wäre natürlich die 0-Klick-Installation, also das Bereitstellen von Geräten, die bereits mit microG vorinstalliert kommen – das klingt für mich eigentlich viel besser.
Zeichen gegen die Konsum- und Wegwerfgesellschaft setzen
Tarnkappe.info: Einer unserer Leser würde gerne wissen, warum nicht auch die neusten Smartphones bei Lineage OS unterstützt werden. Es gibt leider nur einige Modelle, für die das zutrifft. Er meint, Du solltest so eine 1-Klick-Installation App entwickeln, wo man MicroG wie Apps installieren kann. Dann wäre es für viele Nutzer wesentlich einfacher, microG zu installieren. Wenn die Installation nicht total simpel ist, würde microG dauerhaft erfolglos und somit ein Nischenprodukt bleiben. Was sagst Du als Entwickler dazu?
Marvin Wißfeld: Natürlich werden nachinstallierte Custom ROMs immer den Geräte-Herstellern hinterher sein und neue Geräte nicht direkt unterstützen. Meiner Meinung nach haben wir inzwischen den Punkt erreicht, dass neuere Smartphones technisch den älteren nicht so deutlich überlegen sind, dass man alle Paar Jahre ein neues benötigen würde. Ich kenne Leute, die kaufen sich jetzt noch Nexus 5x oder Pixel 2/3-Geräte (neu oder gebraucht), weil diese gut unterstützt werden und günstig sind. Wer sich ein älteres Smartphone vom Gebrauchtmarkt holt, setzt auch ein Zeichen gegen die Konsum- und Wegwerfgesellschaft.
Eine Alternative zu älteren Geräten, die bereits von LineageOS und anderen unterstützt werden, wäre, dass Hardware-Hersteller microG vorinstallieren oder eine einfachere Möglichkeit bieten, es zu installieren.
Über Lineage OS und die „eFoundation“
Tarnkappe.info: Ist es eventuell schon in Planung oder in der Entwicklung, microG zukünftig als selbstständiges OS (wie z.B. LineageOS auch) auf den Markt zu bringen?
Marvin Wißfeld: microG ist zuallererst nur ein wenig Software, kein vollständiges OS oder ROM. Mit LineageOS for microG gibt es ja bereits einen Lineage OS-Fork (zu Deutsch Abspaltung), die microG mitbringt und somit ein vollwertiges OS ist. Es gibt auch /e/ (= auf IT-Security spezialisierte Hersteller von Smartphones), die ein vollständiges Google-freies OS mit microG bereitstellen und sogar Geräte verkaufen, die damit vorinstalliert kommen.
Ich beobachte natürlich den „Markt“ und sollte ich dafür Potenzial sehen und die nötigen Ressourcen bereitstellen können, kann ich mir durchaus auch vorstellen, ein unabhängiges, vollwertiges OS bereitzustellen – dann aber sicher nur für eine begrenzte Anzahl von Geräten.
Tarnkappe.info: Die sogenannte „eFoundation“ (/e/) verspricht uns „Wir bewahren Ihre persönlichen Daten sicher auf Ihrem Smartphone und in der Cloud auf„. Am besten aber macht man sich selbst ein Bild. Mehr Informationen zu diesem Thema sind entweder hier oder auch hier verfügbar. Wer möchte, kann sich aber auch auf GitHub oder Reddit selbst davon überzeugen, dass viele Probleme mit /e/ bis zum heutigen Tag noch nicht ganz behoben worden sind.
Das /e/ Android-Rom-Projekt möchte den idealen und einfachsten Weg für den „normalen“ Verbraucher finden, sich von den großen Datenunternehmen wie z.B. Google auf ihrem Smartphone zu trennen. Auch versuchen sie die FOSS-Kultur und Software zu fördern. Ob ihnen das alles tatsächlich gelingen wird, kann aber erst die Zukunft zeigen.
MicroG – was es ist, wohin die Reise geht
Was microG genau ist und wie es funktioniert, hat Marvin ausführlich auf der SFScon-Konferenz in Bozen erklärt. Der Talk ist zwar auf Englisch, aber wir wollen uns die Gelegenheit natürlich nicht nehmen lassen und einmal hineinschauen.
SFScon19 – Marvin W – MicroG – what it is and where it’s going.
Tarnkappe.info: Du bist zwar mit deinem Talk auf der SFScon sehr gut auf vieles eingegangen. Wir möchten aber dennoch noch einmal nachhaken, was Deine Pläne mit microG sind. Wie genau sieht für Dich der Plan für die Zukunft von MicroG aus?
Marvin Wißfeld: Für dieses Jahr habe ich mir vorgenommen, vor allem daran zu arbeiten, microG wirklich produktiv einsetzbar zu machen – und zwar nicht nur in kontrollierten Umgebungen, sondern auch bei unerfahrenen Endnutzern, bei denen einfach alles funktionieren muss. Dazu gehört etwa die Funktion, microG ohne „User Interface“ zu konfigurieren, etwa damit ROMs mit microG laufen können, ohne dass der Nutzer was davon merkt. Auch viel ausprobieren mit echten Anwendungen steht auf dem Plan.
Von guten Vorsätzen und Wünschen eines Entwicklers
Marvin Wißfeld: Um es (neuen) Helfern leichter zu machen, möchte ich auch den Code so weit wie möglich aufräumen, strukturieren und dann dazu etwas Dokumentation schreiben. Bisher ist die Dokumentation leider immer etwas zu kurz gekommen. Das neue Feature oder der Bugfix hatten einfach eine höhere Priorität. Je größer das Projekt ist, umso wichtiger wird die Dokumentation, also irgendwann muss das halt passieren.
Ein „Side Projekt“ ist auch, die GmsLib, also die Implementierung der Client-Library, auf Vordermann zu bringen. Dies würde es App-Entwicklern erlauben, eine App zu erstellen, statt einer Open-Source und einer Play Store Variante. Und die Vorteile der Play Store Variante (zum Beispiel Push) wären dann auch direkt in der Open-Source App. Oh, und die Webseite, an der müsste wirklich mal was gemacht werden…
Langfristig wünsche ich mir eigentlich, dass microG nicht mehr benötigt wird, also dass App-Entwickler nicht mehr automatisch Play Services benutzen und erwarten, dass Nutzer ein vergoogeltes Gerät haben. Alternativ wäre es natürlich auch ok, wenn Hardware-Hersteller microG als echte Alternative zu Google Play verstehen und dem Nutzer die Wahl geben, das eine oder das andere auf ihrem Gerät zu nutzen. Ich bin mir ehrlich gesagt nicht sicher, was zuerst passiert.
Wie bewältigt man so ein Projekt alleine? Kann man da noch von einem Hobby reden?
Tarnkappe.info: Hat dir die Entwicklung von microG große Schwierigkeiten bereitet? Etwa Druck von Firmen, übermäßige Supportanfragen von Endbenutzern usw.?
Marvin Wißfeld: Nein. Eigentlich hat mir die Entwicklung von microG immer nur Türen geöffnet. Supportanfragen in der Art gibt es eigentlich wenig, das läuft alles öffentlich durch GitHub. Ich bin ja da auch nicht der Einzige, der helfen kann. Ich kann mich sicherlich nicht beklagen.
Tarnkappe.info: Entwickelst du MicroG eigentlich als Hobby in Deiner Freizeit? Was tust du, um einen Burn-out zu vermeiden? microG scheint nicht nur ein simples Stück Software zu sein. Dinge für Dein Projekt zu erledigen, scheint auch oft zeitaufwendig und vielleicht häufiger auch frustrierend zu sein.
Marvin Wißfeld: microG ist zwar „nur“ ein Hobby, aber es erfordert sicherlich eine Menge Zeit. Selbst diese Interview-Fragen zu beantworten, hat schon wieder über eine Stunde gedauert :).
Ich habe es inzwischen aufgegeben microG nur so nebenbei zu machen (also zusätzlich zu einer normalen Vollzeit-Beschäftigung). Das Arbeitspensum war da einfach nicht mehr zu schaffen und es blieb überall was auf der Strecke. Derzeit mache ich nur „ab und zu“ noch mal einen bezahlten Job. Eigentlich fokussiere ich mich mittlerweile aber gänzlich auf Open-Source-Projekte. Dazu gehört jetzt aber nicht nur microG.
Welche Tools benutzt man als Entwickler?
Tarnkappe.info: Welche Tools oder Programme benutzt du am meisten? Ich gehe davon aus, dass du neben dem Schreiben von microG Code auch ein großzügiges Set an Tools zum Dekompilieren/Rekompilieren von Binaries usw. hast. Ich schätze, Du arbeitest mit Android Studio?
Marvin Wißfeld: Ja, Code schreibe ich eigentlich mit Android Studio. Sofern man Mal mit Binaries rumspielt, sind apktool und dex2jar die klassischen Tools. Eher exotisch, was ich aber sehr gerne nutze, ist Enigma. Enigma ist eine „IDE“ zum deobfuscaten.
Erklärung: Einen Programmcode zu deobfuscaten bedeutet, ein schwer verständliches Programm in ein einfaches, verständliches und geradliniges Programm umzuwandeln. Dafür gibt es Tools wie Enigma etc. Mit absichtlich schwer verständlich erstelltem Code wollen verschiedene Hersteller erreichen, dass andere Programmierer ihren Quellcode nicht verstehen (Stichwort Reverse Engineering). Oder aber Cyberkriminelle wollen damit ihre Schadsoftware vor einer Aufdeckung schützen.
Kann man als Endnutzer irgendwie bei dem Projekt helfen?
Tarnkappe.info: Was genau können wir als User tun, um bei der Entwicklung von microG zu helfen?
Marvin Wißfeld: Ich denke, im Umfeld von microG gäbe es eine Menge, das man sinnvollerweise tun könnte, auch sogar dann, wenn man gar nicht programmieren kann. Dazu gehört zum Beispiel das systematische/strukturierte Dokumentieren, welche Apps mit microG Probleme machen, um festzuhalten was für Probleme das sind. Auch welche Apps gut funktionieren, wo es bekannte Übergangslösungen gibt etc. Aktuell sind diese Informationen ja mehr schlecht als recht, größtenteils in Issues, auf GitHub aber auch in einigen Foren, verteilt.
Interessant wäre auch ein Mechanismus, um Apps automatisiert auf ihre Kompatibilität mit microG zu testen. Das geht dann wahrscheinlich aber auch signifikant in den Bereich Entwicklung rein.
Und an die Entwickler unter Euch: Ich beiße nicht und ich möchte auch nicht der Alleinherrscher über dieses Projekt sein. Wenn ihr Code zu microG beitragen möchtet oder sogar konkrete Ideen dazu habt, welches Problem ihr lösen könntet, lasst es mich bitte wissen.
Über Arbeitsabläufe und neue Features von microG
Tarnkappe.info: Da wir ja gerade vom Entwickeln reden, wie machst du das? Wie ist der übliche Arbeitsablauf bei der Implementierung eines neuen Features? Was ist für dich der schwierigste Teil davon?
Marvin Wißfeld: Ich würde nicht sagen, dass es einen üblichen Ablauf gibt. Das hängt immer ganz vom Feature ab. Üblicherweise schaue ich mir zuerst die Entwickler-Dokumentation von Google an. Wenn das Feature Netzwerk-Kommunikation hat, schneide ich diese ein wenig im Emulator mit. Und natürlich schaue ich mir Apps an, wie sie das Feature einsetzen und was dann eigentlich unter der Haube passiert. Reverse Engineering ist mit Java-Binaries zum Glück relativ einfach. Da gibt es eine Menge guter Tools.
Tarnkappe.info: Hast du eigentlich Kontakt zu den diversen Telefon-Herstellern, um Unterstützung (Treiber) für die verschiedenen Hardware-Plattformen zu bekommen?
Marvin Wißfeld: Das ist ungefähr zwei Layer tiefer, als microG arbeitet. microG braucht keine direkte Unterstützung der Hardware-Plattform und steuert Hardware ausschließlich über das Android Framework/HAL an. LineageOS for microG nutzt für die Geräte-Unterstützung ausschließlich das, was von LineageOS reinkommt, ergo auch dort kein Kontakt zu Geräte-Herstellern.
Von Sicherheitsbedenken und Signatur Spoofing
Tarnkappe.info: Marvin, immer mal wieder kommen sicherheitsbedingte Fragen bezüglich dem Signatur Spoofing. Was ist Deine Meinung dazu?
Marvin Wißfeld: Bedenken zur Sicherheit von Signatur Spoofing kommen immer mal wieder hoch, insbesondere aus dem Dunstkreis der LineageOS-Entwickler, die ihre Abneigung sogar in ihrem FAQ festgehalten haben.
Alle mir bekannten Patches für Signatur Spoofing erfordern entweder eine explizite Zustimmung des Nutzers oder verlangen, dass die spoofende App (Erklärung: Also die App, die sich als etwas anderes ausgibt.) auf der /System – Partition installiert ist.
Wenn eine explizite Zustimmung vom Nutzer eingefordert wird, kann man technisch nicht mehr von einem Sicherheitsrisiko sprechen – zumindest geht das Risiko nicht vom Signatur Spoofing aus, sondern vom Nutzer. Natürlich mag es notwendig sein, den Nutzer vor sich selbst zu schützen. Aber selbst ein Custom ROM, das Root-Zugriff gewährt oder ihn einfach installierbar macht, kann nicht von sich sagen, den Nutzer vor sich selbst zu schützen. Ich will an dieser Stelle allerdings erwähnen, dass es hier auch Ausnahmen gibt, etwa ROMs die dm-verity nutzen, um das System vor unsachgemäßer Modifikation durch Nutzer zu schützen, aber das ist eher die Ausnahme in der Custom-ROM-Welt.
Die „schlimmstmögliche“ Attacke
Marvin Wißfeld: Die Variante, die es notwendig macht, dass die App im /System liegt, ist sowieso gänzlich unbedenklich. Tatsächlich führt Android für /System-Apps praktisch keine Sicherheitschecks durch, sodass man bei diesen ohnehin etwas machen kann, was Signatur Spoofing nahe kommt – allerdings ohne die Flexibilität, die es eigentlich bräuchte, um etwas wie microG zu haben. Signatur Spoofing ändert hier also nichts an der Sicherheit, sondern nur daran wie einfach es ist, microG zu entwickeln.
Was praktische Sicherheitsrisiken angeht, so ist die „schlimmstmögliche“ Attacke, die ich mir vorstellen kann, dass eine App sich – so wie microG – als Play Services ausgibt. Das funktioniert aber ohnehin nur, wenn microG nicht schon installiert ist und es müssen auch die oben beschriebenen Hürden genommen werden.
Natürlich könnte es sein, dass ich nicht alle möglichen Sicherheitsrisiken kenne. Leider kommt bei Nachfragen zu geäußerten Sicherheitsbedenken dann aber in der Regel wenig Konkretes. Häufig basierten Sicherheitsbedenken auch einfach auf einem Missverständnis darüber, wie Signatur Spoofing funktioniert – das wollten einige dann aber auch nicht öffentlich zugeben.
microG: „Interessante Gespräche mit Google-Mitarbeitern kamen aber schon vor (…)“
Tarnkappe.info: Eine letzte Frage noch Marvin, dann haben wir es geschafft. Hat Dich Google in der Vergangenheit eventuell schon einmal juristisch belangt für Deine Arbeit mit microG?
Marvin Wißfeld: Nein. Juristische Probleme mit Google gab es nicht – und das ist aufgrund der Rechtslage in der EU auch sehr unwahrscheinlich. Interessante Gespräche mit Google-Mitarbeitern kamen aber schon vor. :)
Tarnkappe.info: Marvin, wir danken Dir ganz herzlich, dass Du Dir die Zeit für uns und unsere Leser genommen hast, so viele Fragen zu beantworten. Wir wünschen Dir auch weiterhin viel Erfolg bei Deinen Projekten.
Die neue microG Wiki – viele Antworten auf Eure Fragen
Abschließend sollte man noch die neue Info-Seite von microG erwähnen. Dieses überarbeitete Wiki soll als inoffizieller Leitfaden für die Einrichtung eines Android-Telefons mit microG dienen. Es lohnt sich auf jeden Fall, einmal hereinzuschauen.
Bleibt nur noch, uns bei unseren Lesern für die vielen Fragen zu bedanken. Wir hoffen, dass Euch dieses Interview genauso gut gefallen und ebenso viel Spaß gemacht hat, wie uns. In diesem Sinne, herzlichen Dank an jeden, der bei uns im Tarnkappe-Forum oder auch auf Reddit seine Frage an Marvin gestellt hat.
Tarnkappe.info
Beitragsbild von h., thx!