Our team was inspired by our experience of the first 10 minutes of ETHBoston, where we had to show our IDs for the sign-in process. All four of us had already formed a team based on our interest in privacy & identity, but we didn't have a specific use case until we experienced it ourselves.
What it does
SkipID lets you log in with Torus, generates a QR code from your public key, and shows a preview of your conference badge. The idea is that he QR code could be scanned at sign-in to know whether someone is registered, instead of making developers present an ID.
How we built it
We attended some workshops on Torus and Enigma at the start of the hackathon, and from there iterated on our idea of doing an app that centered on profiles and privacy.
Challenges we ran into
We spent a huge amount of time on Enigma contracts, but had trouble configuring the connections to our deployed contracts. We were not able to find the unminified source code for the plugin, which hindered debugging. In the end, we decided to focus on Torus for our MVP. We managed however to get an Enigma network to run and secure contracts deployed. We were able to test the secure contracts locally, just not from our web app.
Accomplishments that we're proud of
All of us set out to learn as our primary goal, and we definitely accomplished that! We didn't know each other before this event, and the opportunity to share our knowledge and collaborate turned out to be fun.
What we learned
Some of us had zero experience integrating with Ethereum (or any decentralized app stack), so it was great to learn about the ecosystem as a whole and challenge ourselves to build something with it on a short timeframe. Others had more experience, but were excited to try coding in Rust for some secret smart contracts.
As a team, we learned that while integrating with service providers can sometimes put you on the fast track, when a product doesn't have many examples or has sparse documentation, it can really slow things down.
What's next for SkipID
Here are some ways we could extend the project. We could add features to let developers save their detailed profile, and then opt-in to sharing only the necessary information with each conference. The same patterns could be applied to a survey system. We would need to add data persistence for the profile information, store it secretly, and then write smart contracts to support the queries. We could also build a companion app for checking people in using the QR code.