Archiv für den Tag: 18. Juni 2020

Die Corona-Warn-App

Installieren oder nicht installieren? Das scheint die Frage der Woche zu sein. Dabei schlagen die Wellen ziemlich hoch. Ich will hier weiß Gott niemanden bekehren oder belehren.

Was wissen wir denn? Wir wissen, dass der Quellcode der App öffentlich zugänglich ist. Gleiches gilt für die Dokumentation der App. (Quelle) Ich konnte bisher noch keinen Bericht von bild.de über heise.de bis zu netzpolitik.org finden, der sich generell negativ zur App äußert.

Beschäftigt man sich mit den Maßnahmen zur Pseudonymisierung so kann man feststellen, dass hier hohe Maßstäbe angelegt wurden. In vielen populär gehaltenen Texten wird das Thema sehr knapp dargestellt. Die App erzeugt zunächst einen zufälligen Schlüssel auf dem Smartphone – einen TEK (Temporary Exposure Key). Dieser Schlüssel ändert sich alle 24 Stunden und wird nach 14 Tagen gelöscht und anschließend komplett neu angelegt.

Aus dem TEK wird alle 10 bis 20 Minuten ein 128-Bit-Schlüssel generiert, der RPI (Rolling Proximity Identifier).

Jetzt sendet das Smartphone etwa 4 bis 5 mal pro Sekunde den RPI via Bluetooth Low Energy (BLE) in die Gegend. BLE ist ein Standard, der technisch auf älteren Geräten nicht verfügbar ist. Hier hat man wohl abgewogen: Akku sparen und Reichweite einschränken (BLE) oder Akku belasten bei höherer Reichweite (Bluetooth Klasse 1, 2 oder 3).

Alle 5 Minuten lauscht gleichzeitig das Smartphone in der Gegend herum und sammelt RPIs anderer Geräte. 5 Minuten beträgt die durchschnittliche Expositionszeit, in der es zu einer erfolgreichen Infektion kommen kann.

An diesem Punkt sollte vielleicht erwähnt werden, was die App nicht tut. Die auf dem Smartphone generierten Schlüssel verlassen das Gerät zunächst einmal nicht. Eine Geolokalisation findet nicht statt. Also weder die App noch der Server, auf dem Infektionen erfasst werden können, kennen den Aufenthaltsort des Smartphones.

Und was passiert nun im Infektionsfall? Wir erinnern uns: Smartphones, die sich begegnen, tauschen ihre RPIs miteinander aus, wenn die Begegnung länger als 5 Minuten dauert. Wird nun ein Nutzer der App positiv auf eine Corona-Infektion getestet, so kann er frei entscheiden, ob dieser Fakt weiter verfolgt werden soll. Also auf freiwilliger Basis kann nun der TEK des Smartphones auf einen zentralen Server geladen werden. Der TEK lässt keinen Rückschluss auf das Smartphone des Nutzers zu.

Auf dem zentralen Server muss nun noch der Infektionsfall über einen QR-Code (deshalb benötigt die App Zugriff auf die Kamera) oder über eine PIN (nicht alle Labore können QR-Codes erzeugen) autorisiert werden. Wäre diese Sicherheitsschwelle nicht eingebaut, könnte man ja „fröhliches Infektionswellen lostreten“ spielen.

Nun kann die App die Liste aller aktuell als „infiziert“ gemeldeten TEKs vom zentralen Server laden. Noch immer wissen wir nicht, welches Smartphone, also welche Person, sich hinter den TEKs verbirgt. Aus den TEKs werden nun nur noch die RPIs berechnet. Die Liste der RPIs wird mit der lokal gespeicherten Liste der „Begegnungszentrum-RPIs“ verglichen. Liegt eine nÜbereinstimmung vor. Wird eine Warnung ausgegeben. Und noch immer ist unbekannt, wer wo und wann zu einem Infektionsrisiko für den App-Nutzer wurde.

Nun kann man trotzdem den Aluhut aufsetzen, an allem zweifeln und die App nicht nutzen. Das ist ok, weil das gesamte Verfahren ist freiwillig. Wir sind hier weder in Ungarn, noch in Südkorea oder in China.

Wer es gerne etwas kürzer, dafür aber mit Bilderchen haben möchte, kann gerne hier die Zusammenfassung lesen.