Sorry Leute, aber nachdem ihr beide in dem Chor derjenigen, die die Datensparsamkeit der CWA so hoch gelobt habt, laut und deutlich mitgesungen habt, solltet ihr erst mal kurz nachdenken, bevor ihr euch ebenso laut und deutlich über glasklar erklärbare und begründbare Folgen dieser sehr stark auf Anonymität und Datensparsamkeit ausgelegten Architektur mokiert.
Worauf spiele ich an? Auf die Kommentare zu den Erfahrungsberichten in LdN208, denen zufolge es zu lange dauerte, bis a) ein positiver Test an die betreffende Person selbst in der CWA übermittelt ist, und b) bis nach Meldung einer Infektion der einen Person andere, die eindeutig Kontakt hatten (in dem Fall Lebenspartner) eine Warnung bekommen. Letztere Phase waren wohl 36 Stunden, was recht lang ist, aber jetzt nicht so weit weg von den architekturbedingt 12-24h, die voll und ganz zu erwarten sind - und die euch vermutlich auch nicht zufriedengestellt hätten, da ihr ja offenbar Push-Nachrichten-Geschwindigkeit erwartet.
Da die Diskussion zur technischen Funktionsweise offenbar zu lange zurück liegt, hier nochmal ein kurzer Abriss, der das Phänomen erklären sollte. Was die App tut, ist eben kein Push, sondern sogenanntes Polling. Und zwar pollt sie in regelmäßigen Intervallen von meines Wissens derzeit 24h den CWA-Server und fragt den nach neuen Keys infizierter Personen. Der Server wiederum sammelt eingehende Keys, paketiert immer eine Stunde an Keys zu einem Block, und übermittelt einer anfragenden App die Stunden-Blöcke seit ihrer letzten Abfrage, also in der Regel der letzten 24h. Es ergibt sich dadurch also eine Verzögerung von im Schnitt 12h plus 30min für die Paketierung, also 12h30m, von einem neuen positiven Key-Upload bis zur Warnung einer Kontaktperson. Und da das ein statistisches Mittel ist, können es im Extremfall eben auch mal 25h sein, ohne dass man irgendwie konstatieren könnte, dass da irgendwo eine unerklärliche Verzögerung im System gewesen sei.
Das ist nun mal der Trade-Off bei Polling-basierten Systemen: sie reagieren nur so schnell, wie die Polling-Frequenz erlaubt, und diese lässt sich nicht beliebig weit beschleunigen, da die Systemlast sowohl auf Client- als auch Serverseite sich mit jeder Halbierung des Intervalls verdoppelt. Hier ist vermutlich die Serverseite eher unkritisch, limitierender Faktor dürfte die Batterie des Smartphones sein, denn wie wir gesehen haben fällt die Akzeptanz einer Corona-App ins Bodenlose, wenn das Ding deutlichen Einfluss auf die Laufzeit des Handys hat (wir wissen dass das so ist, weil es unter Android zu Beginn ja einige Bugs gab, bei denen einzelne Geräte erheblich mehr Akku als beabsichtigt gezogen haben wenn die App aktiviert war).
Und dasselbe Problem gibt’s in grün bei der Übermittlung der Testergebnisse durch die App: auch da wird aus Datenschutzgründen Polling verwendet, das heißt jede App fragt in einem Intervall den Server nach Ergebnissen zu einem Test mit einem bestimmten Identifikationsschlüssel, und gibt es eins, kriegt sie es zurück, sonst halt nur die Info dass keines vorliegt. Ich kenne das Intervall hier nicht, vermute aber, dass das in ähnlicher Dimension wie bei den Infektions-Keys liegt, also 24h. Und jetzt kommt das beste: die App fragt auch dann, wenn man überhaupt nicht auf ein Testergebnis wartet, regelmäßig den Server mit einem erfundenen Identifikationsschlüssel nach den Ergebnissen eines nicht existenten Tests, damit nicht von außen anhand des Traffics festgestellt werden kann, dass eine Person auf einen Test wartet. Man hat also noch nicht mal die Möglichkeit, die Polling-Frequenz temporär so lange jemand auf ein Ergebnis wartet deutlich zu erhöhen - das würde denjenigen ja verraten! Nein - die App muss stur bei einer für alle Nutzer dauerhaft erträglichen, und daher langsamen, Abfragerate bleiben.
Überraschung: Datenschutz und Datensparsamkeit gibt’s nicht kostenlos! Systeme, die derartige sehr wünschenswerte und absolut erstrebenswerte Ziele bereits in ihrer Grundarchitektur umsetzen, erkaufen sich das mit Nachteilen in anderen Aspekten, hier der Reaktionsgeschwindigkeit. Technologie und Engineering besteht immer aus Trade-Offs, und man kann nicht auf der einen Seite maximalen Fokus auf Datenschutz fordern und sich dann fünf Minuten später über die Folgen dieser Forderung empören! Bzw. man kann natürlich, man offenbart dabei aber schlicht Unkenntnis bezüglich der technischen Gegebenheiten des fraglichen Systems und eine gewisse Naivität bzw. einen nicht durch Fakten gestützten, „magischen“ Technologieglauben - und sorry, das steht euch nicht. Daher hoffe ich, dass ihr euch Forderungen wie „da muss doch SOFORT eine Push-Nachricht an denjenigen rausgehen!“ vielleicht nochmal überlegt, bevor ihr die in den Äther pustet, denn ich will ganz sicher nicht den ganzen schönen Datenschutz damit unterlaufen, dass dann doch wieder der allwissende Server in der Mitte mein Smartphone und damit mich identifizieren kann, um mir gezielt irgendwelche Meldungen über positive Tests oder positive Kontaktpersonen zu pushen. Wäre das möglich, wär die Corona-App garantiert nicht mehr lange auf meinem Telefon, und ihr wärt vermutlich auch die allerersten, die diesen Umstand verurteilen und mehr Datenschutz fordern würdet.