In case you speak english: Watch our video with english subtitles to learn more.
Unsere Inspiration
Das Tracking von Infektionsketten scheint in der aktuellen Situation ein großes und auch nützliches Thema zu sein, um eine Pandemie zu verhindern. Die derzeit aufkommenden Lösungen in verschiedenen Ländern scheinen diese Situation jedoch zu nutzen um eine flächendeckende Überwachung einzuführen. Wir waren uns sicher, das geht auch anders und so wollten wir eine App entwickeln mit der es möglich ist Infektionsketten ohne personenbezogenen Daten zu rekonstruieren und alle betroffenen zu benachrichtigen.
Was macht unsere App?
Mithilfe von Bluetooth erkennt unser System, welche Personen sich in deinem Umfeld befinden. Dafür senden die Geräte kontinuierlich eine zufällig generierte ID (Identifikationsnummer) aus, welche sich alle 30 Minuten ändert. Dein Gerät empfängt diese Daten und speichert sie lokal auf deinem Smartphone mit der Entfernung zum anderen Gerät ab. Im Falle einer Infektion werden die relevanten IDs der Infizierten Person auf einer Webseite veröffentlicht. Dank der zufälligen IDs und der Vermeidung unnötiger Daten lässt sich keine Verbindung von diesen IDs zu einer bestimmte Person herstellen. Hattest du nun Kontakt mit dieser Person, so befindet sich eine oder gar mehrere IDs in deiner Kontaktliste. Unser System ermittelt daraufhin einen Risikowert und gibt dir passende Handlungsanweisungen und weitere nützliche Informationen zur Infektion.
Eine App ist nicht genug!
Hast du schon mal etwas von Nina oder Katwarn gehört? Dies sind Apps, die uns in Gefahrensituationen Informationen zur Verfügung stellen sollen. Auch wenn wir nicht verstehen, wieso es zwei Apps dafür gibt und nicht das eingebaute System in den Smartphones verwendet wird, so haben wir doch bemerkt, dass die Verbreitung solcher Apps sehr gering ist. Sie bietet eben nur in wenigen speziellen Fällen einen Mehrwert. So wird es auch mit bandemic sein und daher haben wir bandemic auf STRICT aufgebaut. STRICT (simply track infections) ist eine library und ein Konzept, an das sich andere Apphersteller anbinden können. Somit kann dieses Tracking problemlos in Spotify, WhatsApp oder sogar in das Betriebssystem und Smartwatches integriert werden. Egal welches System du einsetzt, sie arbeiten alle zusammen.
Probleme, die wir lösen mussten
Datenschutz
Wir hatten das Ziel, den höchsten Datenschutzansprüchen zu entsprechen und trotzdem eine flächendeckendes Tracking zu gewährleisten. Aber wie stellt man eine Verbindung zwischen zwei Personen her ohne diese durch die Menge an Daten zu deanonymisieren?
Die Antwort ist Datensparsamkeit gepaart mit viel Zufall. Wir generieren alle 30 Minuten eine 128bit große Zufallszahl deren Hash von den Geräten ausgestrahlt wird. Gespeichert wird beim Empfänger nur die Signalstärke, der Hash und der Zeitpunkt, sowie eine Aufenthaltsdauer deren Maximalwert 30 Minuten beträgt. Die Daten liegen lokal auf dem Smartphone und werden nicht nach außen kommuniziert.
Speicherbedarf
Wenn man so viele IDs generiert und Empfängt, dann wird es mit dem Speicher doch schnell eng?
Natürlich haben wir uns diese Frage auch gestellt und die Größe der Daten, die wir speichern, ermittelt. Dabei sind wir von einer Speicherung von 2 Monaten ausgegangen, aber wie vielen Menschen begegnet man in diesem Zeitraum? Darauf haben wir leider auch keine Antwort, aber der "Stern" konnte uns da mit einer Zahl für die Begegnungen in einem Menschenleben liefern, nämlich 60.900.000. Zugegeben wissen wir nicht wie sicher diese Quelle ist, jedoch haben wir angenommen, dass 60.900.000 Kontakte in 2 Monate schon sehr sportlich sind. Bei dieser Menge an Kontakten würde der Speicherbedarf gerade mal bei 2.3 GB liegen und somit sollte das kein Problem darstellen.
Datenspeicherzeit
Uns stellte sich die Frage, welche Speicherzeit der Daten sinnvoll ist. Im aktuellen Infektionsfall geht man von einer ansteckenden Phase von bis zu zwei Wochen bevor man Symptome zeigt aus. Dies ist von Infektion zu Infektion aber verschieden. Um eine sichere Basis zu haben, speichern wir die Daten für die letzten 2 Monate auf dem Smartphone. Den genauen Speicherzeitraum möchten wir jedoch mit Experten nochmal genauer erörtern.
Benachrichtigung
Wie sollte die Benachrichtigung von Personen, die mit einer Infizierten Person in Kontakt standen Aussehen? Uns ist es wichtig, hier eine aufklärende und Panik vermeidende Strategie zu fahren. Daher haben wir uns dazu entschlossen, nicht nur den Kontakt zu berücksichtigen, sondern auch eine Risikoermittlung durchzuführen. Sowohl die Aufenthaltsdauer als auch die Entfernung sind für diese Ermittlung von Bedeutung, denn es ist ein Unterschied, ob du dich mit einer infizierten Person in einem Raum aufgehalten hast oder ob sie längere Zeit direkt neben dir stand. Wir fühlen uns verpflichtet, die Benutzer aufzuklären, daher wird die Benachrichtigung auf die zugrundeliegende Risikobewertung ausgerichtet sein.
Fehlmeldungen
Die Vermeidung von Fehlmeldungen ist essentiell, wenn es darum geht Panik zu vermeiden. Daher haben wir für die Benachrichtigungen einen Vertrauenslevel eingeführt. Wenn man eine Bestätigung für eine ansteckende Krankheit von einem Arzt erhält, bekommt man von diesem einen Code um eine Meldung aus zu lösen. Dies ist die höchste Vertrauensstufe. Je nachdem welche Vertrauensstufe eine Meldung hat, agiert das Meldesystem unterschiedlich. Die nächste Auslösung in dieser Kette bekommt ein etwas niedrigeres Level, das niedrigste Level hat eine Meldung ohne Kontakt mit Infizierten Personen und ohne ärztliche Bestätigung.
Risikobewertung
Wie führen wir eine Risikobewertung durch? Jede Infektion verläuft anders. Das Ansteckungspotential, die Ausbreitungsart und der Zeitraum in dem man Ansteckend ist ist völlig verschieden. Daher halten wir eine Datenbank vor die für jede zukünftige Bedrohung von Experten angepasst werden kann und den richtigen Algorithmus zur Berechnung des Risikos bereit hält. Durch die Aufenthaltsdauer und Entfernung der Kontakte können wir so eine Risikobewertung zu allen zukünftigen Erkrankungen abgeben. Da wir die Bewertung des Risikos aus den Rohdaten ermitteln, lässt sich eine Bewertung auch rückwirkend für neue Infektionskrankheiten durchführen.
Bluetooth Tracking
Ist es möglich mit Bluetooth eine Entfernung zu bestimmen und das die Geräte ohne Ziel Datensenden? Wir haben genau diese Fragen geklärt indem wir Tests mit verschiedenen Geräten gemacht haben. Dabei konnten wir festgestellen das sowohl das senden von kurzen Nachrichten (den IDs) als auch das ermitteln einer Entfernung möglich ist. Dank moderner Bluetooth Standards wie Bluetooth 4.0 und 5.0 belastet diese Technik auch den Akku des Smartphones nur sehr gering so das du immer noch Problemlos über den Tag kommst.
Erreichte Ziele
Prototyp einer App
Unser Entwicklerteam hat einen ersten Prototypen entwickelt, der bereits getestet werden kann.
Helpdesk
Auf unserer Webseite ist ein Helpdesk eingerichtet worden. Egal ob als Supporter, bei Interesse an einer Mitarbeit oder Interessent – über das Helpdesk können alle Anfragen gebündelt werden.
Bisheriger Projektverlauf
FREITAG
Am Freitag lag unser Fokus darauf, von Beginn an eine saubere Struktur aufzubauen, um doppelte und chaotische Arbeit zu vermeiden. Mittels Telegram und Discord Channel haben wir Mitstreiter rekrutiert, die unser Team gut ergänzen würden und einzelne Teams gebildet: Marketing, Frontend- und Backendentwicklung und Projektmanagement. Github wurde für die Entwickler aufgesetzt, um kollaborativ zu arbeiten.
Um einen Überblick über die verschiedenen Aufgabenbereiche und -verantwortlichkeiten zu behalten, haben wir JIRA (Projekmanagmenttool, bietet sich besonders gut für agile Teams an) und Confluence für ein besseres Projektmanagement aufgesetzt. Auf Confluence sind zentral alle Dokumente zu finden, um in Echtzeit an ihnen arbeiten zu können. Dort haben wir auch unsere Design-Elemente, den zugrundeliegenden Prozess der ID-Verarbeitung (Keytausch) sowie alle recherchierten Informationen (Marktanalyse, Informationen zu Corona etc.) zusammengetragen.
Wir haben uns eine vorläufige Domain gesichert und die ersten Bluetooth Tests begonnen, d.h. Distanzmessung sowie den Prozess des Aussendens und Empfangens der ID's.
SAMSTAG
Wir haben am Samstag sofort damit losgelegt, die ersten Entwicklungen auf Android zu starten – dafür hatten wir mehrere Devices zur Verfügung. Das Backend wurde über den Verlauf des Tages immer wieder auf den verschiedenen Geräten getestet. Parallel hat das Projektmanagement die Webseite eingerichtet, während Marketing sich um die Erstellung eines Videos (Skript, Voiceover, Jingle) gekümmert hat.
Da wir verschiedene App Namensvorschläge hatten, wollten wir unsere Zielgruppe fragen, welchen sie am Besten finden. In der entsprechenden Facebook-Gruppe des Hackathons haben wir eine Abstimmung gestartet und einen Gewinner ermittelt. Eine entsprechende Domain wurde im Anschluss registriert, und ein Umzug von der vorläufigen Website vorgenommen.
SONNTAG
Der Prototyp der App wurde weiterentwickelt, um eine testbare Version zu veröffentlichen. Das Erklärvideo wurde nach einer Iteration der Audioaufzeichnung final erstellt (inkl. deutsche und englische Untertitel) und auf der Webseite veröffentlicht sowie auf den Social Media Kanälen verbreitet. Apropos Social Media: Wir haben angefangen, die Social Media Kanäle aufzusetzen, sofort mit Inhalten zu füllen (Twitter, YouTube, Instagram) und zu interagieren.
Die Inhalte (Texte, Grafiken, Logo) für Webseite und Devpost wurden fertiggestellt. Das das Mockup für den Prototypen der App wurde hochgeladen.
Aussichten
Wir haben bereits ein Team gebildet und abgefragt, wer in Zukunft weiter an dem Projekt arbeiten würde. Auf dieser Grundlage haben wir einen groben Fahrplan mit wichtigen Milestones erstellt:
Medienstrategie weiter ausbauen (Twitter, Youtube, PR, Instagram und LinkedIn)
User Testing
Iteration mit Hilfe des Feedbacks
Zusammenarbeit mit Entwicklern von anderen Apps, die unsere Anwendung integrieren möchten
Zusammenarbeit mit Ärzten und anderen Gesundheitseinrichtungen
Finanzierung
Wir sind davon überzeugt mit STRICT die beste, zukunftsfähigste, und demokratische Lösung entworfen zu haben, die alle andere Trackinglösungen in den Bereichen Datenschutz, globaler Skalierung und Plattformunabhängigkeit in den Schatten stellt. Um STRICT zu einem länder- und softwareunabhängigen Standard auszubauen und die Kooperationen mit den Gesundheitsämtern zu organisieren brauchen wir sowohl finanzielle als auch fachliche Unterstützung. Da Pandemien keine grenzen kennen liefert nur ein weltweiter offener Standard, der von allen verwendet werden kann, die Abdeckung, die wir brauchen. Um bei der aktuellen Corona Pandemie noch wirkung zu erziehlen brauchen wir die Unterstützung so schnell wie möglich.
Built With
- restful
- strict
Log in or sign up for Devpost to join the conversation.