Inspiration
Contact tracing is the process of identifying the people with whom an infected person came into contact with while contagious. Contact tracing is a well-understood and vital tool to tackle epidemics, but it has traditionally been a manual and time-intensive process. When it comes to large scale pandemics, it lacks scale.
The current Covid-19 pandemic has seen an interest in contact-tracing apps solving the problem of scale by automating the tracing and notification process. This in turn would improve the effectiveness of the tracing process. However, if implemented poorly, it may pose the greatest breach of individual privacy we have seen to date. On 19 April 2020, two days after the European Parliament passed a resolution that “takes note of the emergence of contact-tracing applications on mobile devices” making demands and recommendations for privacy and decentralisation, over 300 scientists and researchers from across the globe signed signed a Joint Statement on Contact Tracing expressing the concerns:
“The current COVID-19 crisis is unprecedented and we need innovative ways of coming out of the current lockdowns. However, we are concerned that some “solutions” to the crisis may, via mission creep, result in systems which would allow unprecedented surveillance of society at large.”
Most contact tracing apps manifest privacy concerns, either directly through bad design, or through incompleteness. The solution is to engineer privacy from the outset, so apps can’t leak private information into the public sphere.
Tenshō achieves that by design.
What it does
Tenshō is an encryption protocol and software solution that uses the blockchain to perform contact tracing in private. No personally identifiable information leaves anyone's device. Tenshō data is stored on a blockchain called Hōshō. During the initial development phase a private blockchain is used. In later versions a sharded version will be implemented, in which the data is stored on the set of participating devices.
Tenshō demonstrates that the exchange of private information is not required to implement contact tracing and other public safety solutions.
Tenshō exposes a service that other app developers can use.
How we built it
The Tenshō service exposes two methods: Post and Get. In the case of the system described here, these are methods in a web API. In the case of the distributed mesh, they would be device methods exposed using Bluetooth.
- Post pushes a device’s set of encounters to the blockchain, in the form of paired public keys, called diagnostic keypairs, with each key signed by the private key on the sender device. It is triggered when a user informs the device of a diagnosis.
- Get requests a device’s set of diagnostic encounters from the blockchain. An encounter is returned when the device's public key is paired with any other key in a diagnostic keypair stored in the blockchain.
Each device hosts a cryptographic keypair, consisting of a private and a public key. The private key is used to sign messages, and never leaves the device. Tenshō only responds to signed requests, to prevent rogue devices spamming false diagnoses.
Challenges we ran into
The first challenge we encountered was cryptography. We wanted a secure system of tokens that could be strongly identified with a source without exposing that source’s identity. Our solution of signed public keys is lightweight and effective. We respectfully suggest it’s better than the Google Apple consortium’s approach to the same problem.
The second challenge we faced was not being first. Early on we learnt that Google Apple had already built and were releasing an app based on similar cryptography to ours. We’d independently invented their solution.
So we pivoted. Why not exploit the disconnected, distributed nature of blockchain to reach a wider audience, by providing our product as a service? We were lucky to have a blockchain in our tools. After that, the problem solved itself. We now have a service that can be consumed by any contact tracing app, either as its main data store, or as a backbone to increase its footprint. The main challenge any contact tracing app faces is footprint. To be effective, 60% of a population needs to sign up. Furthermore, most apps are national. Our service helps solve those problems.
Finally, convincing the broader team that taking a fully private route was a challenge as there were concerns that governments would force us to hand over personal information and we would be obligated to do so.
Accomplishments that we're proud of
To have invented something that is potentially quite useful.
The speed in which the team has work to take this from ideation to having a working demo that writes to the blockchain at: http://tensho.nuclyus.com/
Writing a convincing white paper on the Tenshō protocol.
What we learned
Initially we went through the privacy versus identifiability discussion with their own benefits and weaknesses. After much debate and research we all agreed that having a totally private solution was the only way to get extensive usage which is the whole purpose of electronic contract tracing. There is no reason for anyone not to use a contract tracing app if their private information is never revealed or exposed.
We’ve seen countries like Singapore struggle to get more 20% of the population to use the contract tracing app and the UK’s goal of having 40% of usage is being questioned. One of the fundamental reasons for this is the desire for individuals to keep their movements private.
That blockchain and cryptography are the ideal technologies to solve this problem as :
- It allows for multiple country or region specific apps to communicate via a single protocol.
- Infinitely scalable using a sharded blockchain such as Hōshō*
- Immutability
- Transparency by open sourcing our protocol
What's next for Tenshō
We propose to implement Tenshō as a service, for contact tracing systems to use. The code is so simple that we’re almost there.
For the solution to scale, we need to develop a sharded blockchain where we can achieve scale and performance efficiencies.
We have built a prototype Coronavirus app www.coronalert.me. Its first version allows for proximity and zone alerts using a rules engine. The next version will incorporate the Tenshō protocol and showcases the technology in a more user focused manner. We have an Android version and are looking to develop an iOS app.
Having said that, Tenshō as a service is the most likely end game for us. There are many contact tracing apps. We’re the first contact tracing service.
We will work with other app developers in this space to utilise the Tenshō protocol and maximise its utility. Such a service would allow third-parties to pool their data silos in a lake.
We are looking to evolve Hōshō into a sharded blockchain which will provide scalability as a public blockchain. This is a key core business task for us.
We are also looking to develop a rules based data cleansing engine where outdated data is purged from the system, reducing the footprint and further adding to the privacy of the solution.
Once we’ve completed development we will open source Tenshō.


Log in or sign up for Devpost to join the conversation.