Corona Warn App: Quelloffene Version verfügbar – bald bei F-Droid
Wer auf eine komplett quelloffene Version der offiziellen Corona-Warn-App gewartet hat, kann sie nun herunterladen. Sie kann ausgiebig getestet werden.
Die von Mitgliedern des F-Droid-Teams entwickelte, komplett quelloffene Version der Corona-Warn-App ist in einer ersten Version verfügbar und läuft auf dem Gerät des Autors seitdem stabil. Sie basiert statt auf Google's Exposure API auf der freien Implementierung von Marvin Wißfeld. Die App erkennt dabei automatisch, welche Art von Exposure API auf dem Gerät verfügbar ist, und verwendet diese. Erfolgsmeldungen kamen von allen drei Fraktionen: denen mit Google Services, denen mit microG – und auch denen "ganz ohne". Wer zuvor bereits die originale App installiert hatte, und nun auf die freie Version umsteigen möchte, kann die App einfach zusätzlich installieren.
Wer auf die quelloffene Version der Corona-Warn-App umsteigt, sollte die originale App noch für 14 Tage (Zeitraum, für den IDs gespeichert werden) parallel laufen lassen, dann kann sie deinstalliert werden. Bei der App auf Basis von microG werden die zuvor gesammelten Daten übernommen, die originale App kann hier also sofort deinstalliert werden. Auch ist es mit microG möglich, die Apps verschiedener Länder (wenn man sich beispielsweise temporär im Ausland aufhält) parallel zu verwenden – etwas, dass die API von Google nicht ermöglicht. Wird die direkt in der App eingebundene Exposure API verwendet beginnt die Zählung natürlich auch wieder bei "Tag Null".
Sollte die App zunächst ewig einen "unbekannten Status" anzeigen, muss man nicht nervös werden: Es dauert prinzip-bedingt zwischen 24 Stunden und drei Tagen, bis eine konkrete Abschätzung getroffen werden kann. Beim Autoren wurde es nach zwei Tagen "grün" – andere berichteten davon bereits nach einem Tag, wieder andere nach drei Tagen. Im "Haupt-Repo" von F-Droid sollte die App bis zum Wochenende ebenfalls verfügbar werden. Wer bezüglich der Entwicklung auf dem Laufenden bleiben möchte, kann dem CCTG Team auf Mastodon folgen, beziehungsweise den RSS-Feed des Accounts abonnieren.
Fragen und Antworten
Wozu braucht die App GPS?
Gar nicht. Die App verwendet kein GPS. Richtig ist: Sie verlangt die Berechtigung für den Standort-Zugriff. Das ist unter Android system-bedingt und hat den Hintergrund, dass eine Standort-Bestimmung auch über Bluetooth erfolgen kann (über sogenannte, stationäre "Bluetooth Beacons" beziehungsweise iBeacons, zum Beispiel für "in-door Navigation").
Noch so ein Akku-Fresser?
Das kann der Autor so nicht bestätigen. In den vier Tagen, seit die App im Einsatz ist, konnte der Autor keinen *wesentlichen* zusätzlichen Akku-Verbrauch feststellen. Nicht umsonst heißt die verwendete Technologie BLE (Bluetooth Low Energy).
Wie stark sich das bemerkbar macht, hängt natürlich nicht zuletzt davon ab, welche Apps man sonst noch so nutzt. Auf dem Gerät des Autors läuft beispielsweise auch Gadgetbridge, sodass Bluetooth ohnehin schon "permanent in Nutzung" war.
Warum benötigt die App mindestens Android 6?
Das liegt daran, dass erst mit dieser Android-Version BLE "offiziell eingeführt" wurde. Tatsächlich unterstützen jedoch etliche Geräte BLE bereits ab Android 5 – weshalb für die F-Droid Version auch eine entsprechende Anpassung in Arbeit ist. Sofern vom Gerät unterstützt, sollte die App dort dann auch unter Android 5 funktionieren.
Warum hieß es im ersten Artikel "Es ist SAP und DTAG … scheinbar nicht gelungen"?
Natürlich lag das nicht am *Können* – es lag nicht einmal am *Wollen.* Vielmehr liegt es am *Dürfen.* Die Entwickler arbeiten schließlich im Auftrag des RKI, und müssen sich entsprechend an ihr "Pflichtenheft" halten.
Ist das eine Spionage-App?
Genau deshalb war es wichtig, auch die Quellen der letzten Bestandteile offenzulegen. Zumindest bei der App aus F-Droid kann also jeder™ anhand des Quellcodes nachprüfen, was geschieht. Und da die App darüber hinaus auch "reproduzierbar" gebaut wird, lässt sich ebenso prüfen, ob diese dem Quellcode entspricht.
Was genau wird denn nun übertragen?
Das beschreibt Marvin Wißfeld wie folgt. Grundsätzlich werden – wie bei der CWA auch - verschiedene Server der Telekom Cloud kontaktiert:
- Zum Synchronisieren der Infizierten-Schlüssel
- Zur Erzeugung von Traffic zwecks plausible deniability gegenüber ISP/Netzwerk
- Zum Erzeugen eines Authentifizierungs-Tokens
- Zum Abrufen von Testergebnissen
- Zum Hochladen der BT-Schlüssel nach einer Infektion
Bei 4 und 5 wird der Token aus 3 mitgeschickt. Bei 3 wird die ID aus dem Test-QR-Code oder die TeleTAN mitgeschickt. Hier kommt hinzu, dass Punkte 3 bis 5 aktiv vom Nutzer ausgelöst werden müssen.
Löst die App das Corona-Problem?
Nein, tut sie nicht. Sie schützt auch nicht vor Ansteckung. Dazu braucht man die GMV-App, etwas Sozialkompetenz und Verantwortungsbewusstsein. "Snutenpullis" nicht vergessen – und daran denken, den einen guten Riecher "darunter" zu verstecken.
Kann man auch mit älteren Smartphones teilnehmen?
Siehe oben: Teilweise wird auch das möglich sein – soweit diese BLE unterstützen. Mit Android 5 stehen die Chancen dafür noch recht gut – davor eher schlecht. Dazu muss man aber auch sagen: Android 5 erschien im November 2014, also vor 6 Jahren. Hier liegt das Verschulden eher bei den Herstellern, die ihre Geräte selten länger als 18 Monate mit Updates versorgen – aber teilweise zum Erscheinungstag bereits mit völlig veralteter Android-Version ausliefern. Und ganz ehrlich: Wer hat heute noch ein Android-Telefon im täglichen Einsatz, das vor 2012 hergestellt wurde?
Hat Google den Quellcode der API nicht schon vor Monaten herausgegeben?
Nicht wirklich. Nur ein paar unvollständige Schnipsel, und selbst das nur unter Druck. Es fehlen wesentliche Teile – etwa zur Bluetooth-Funktionalität, zur Speicherung der IDs, zum Key-Matching, und natürlich zur Telemetrie. Da sich alles innerhalb des Google Services Framework abspielt, darf man sich getrost fragen, welche anderen Google-Komponenten wohl auf die Daten Zugriff haben. Und was diese damit eventuell tun. Google verdient sein Geld mit Werbung; "puren Altruismus" darf man da sicher nicht erwarten. Und wie war das doch gleich mit "wer nichts zu verbergen hat…"?
Klappt das auch mit dem Melden?
Natürlich: Die Schnittstellen dafür sind ja ebenfalls offen. Und da auch die Frage aufkam, ob ein "böswilliger Nutzer" jetzt nicht massenhaft Fehlalarme auslösen könne: Nur wenn das Faxgerät bei der Behörde… Ernsthaft: Eine Meldung ist nur möglich, wenn man über das passende Authentifizierungs-Token verfügt. Dieses wird nicht von der App erzeugt, sondern nach dem Test vergeben – entweder über einen QR-Code, der sich mit der App einscannen lässt – oder telefonisch durch Übermittlung einer TAN, die man dann händisch eingeben muss.
(mho)