This past weekend, July 27th and 28th, Transmute participated in the Mayor’s Challenge hackathon hosted by the City of Austin. The objective was to determine if blockchain technology can be applied to assist persons experiencing homelessness.
It was a lot of fun, and we were able to build some impressive tech, but the best part was talking to people about the challenges of living on the street and managing identity.
It’s always fun to try and develop solutions within tight constraints, and people experiencing homelessness have a number of challenges that make secure identity systems difficult.
Identity often comes from:
1. Something you are
2. Something you know
3. Something you have
We learned through conversations and user testing that two and three are really tough. Often devices are stolen or sold. There is no security for paper backups of memory, and memory often varies.
In creating our solution, we choose to address two challenges:
1. How to generate a cryptographic identity from biometry?
2. How to securely manage documents with a cryptographic identity?
For one, we used Azure Cognitive services to provide a public private key pair based on facial recognition and a code. This solution is obviously not secure by itself, but it was fun to explore how to generate a key pair for an identity from biometry.
For two, we use the built in support of OpenPGP.js to allow signing, verification, encryption and decryption.
Finally we used the transmute-framework to easily create an audit log of the encrypted events, so that the history of transactions cannot be tampered with.
We developed a user-friendly Webapp, called MyPass, that acts like a digital wallet. MyPass does two main things. The person experiencing homelessness controls documents and has ability to share that information. They can seamlessly add, organize, share, and invite service providers to verify them.
We had a great time learning and developing. Hackathons always remind us of why we created Transmute, to make secure application development easier and teach people about cryptography.
If you want to learn more, here are some links: