Please vote for us with the button on the right (the like button on the top does not add a vote :-)).
Our response to the COVID-19 outbreak will define who we are as a society. Countries like Singapore have decided to track every person, all the time, effectively giving up privacy for the sake of disease control. In Switzerland, Marcel Salathé, epidemiologist with ETH Lausanne, welcomes contact tracing in a SRF special broadcast: "This is the way many Asian countries have handled this crisis. I don't think there's going to be much question of us having to introduce it in a particular way". Officials in countries like Germany are taking a similar stance, sometimes looking for a compromise between privacy and security.
We don't want to compromise on either of them!
What it does
virus tracker is a system that tracks infections without tracking people.
You get the app and activate bluetooth. The App generates and broadcasts anonymous tokens to nearby devices. The App receives tokens from nearby users and stores them locally, along with time/location.
We hope you don't have to, but in case you test positive for SARS-CoV-2 you can mark yourself as infected. Using a cryptographic protocol, the server can then inform users of your infection. Our protocol also allows participating labs to verify your test result. You and others can check if they came in proximity of infected people. Thanks to the underlying cryptography, this happens without disclosing your identity or location history to anyone -- neither us nor other users.
virus tracker - The app that tracks the virus - not its users!
How we built it
We rely on direct communication via Bluetooth, and lots of coffee to make the communication between Android and iOS devices work. Our "server" is a cloud function in the Google cloud. The signatures in our cryptographic protocol rely on well established keyed-hash message authentication codes and cryptographic hashes based on SHA256.
Challenges we ran into
The most important challenge for us was: How can we maximize the anonymity of all individuals, whether they test positive or not, without diminishing the infection tracking?
We also had other bumps along the way:
- "Android studio".
- Slack brought down the machine of one of our contributors.
- Organizing 15 enthusiastic contributors coming together to work on this project while they #stayathome.
Accomplishments that we are proud of
Infection tracking can be done in a privacy-sensitive way!
The first version of our server side was up and running on Friday night.
What we learned
Insane amounts of caffeinated beverages increase productivity, until they don't.
Prototype and Links
- Web: https://virustracker.ch
- GitHub: https://github.com/virustracker
- YouTube: https://www.youtube.com/watch?v=uG1kxM2zpKM
- Technical Documentation
What's next for virus tracker
spread the app, not the virus!