Authentication is a growing problem in the digital world. This is a problem for both employers as many graduates lie on their CVs, and a problem for the average person with costly and inconvenient physical ID cards. By utilising the Ethereum blockchain we hope to provide a more convenient, software solution to this growing issue.
What it does
Pedalo has two major components: the backend of smart contracts on the Ethrereum blockchain for storing the credentials and an iOS mobile app which allowing for easy verification.
When a trusted peer adds a credential to the blockchain, they also send the information to the users mobile app to store in their digital wallet. QR codes can be generated from this certificate. Other users of Pedalo can then scan these QR codes to get real time verification.
This can be used in many situations, such as a digital drivers' licenses, qualifications, and or associated id card.
How we built it
Pedalo is a balancing act between Ionic: A native app development tool for modern web, and Ethereum blockchain: Essentially a distributed computer allowing "smart contracts" to be written in Solidity.
Our certificates are encoded as JSON, then an issuing institution can log this information into the Ethereum blockchain via. our express REST interface. This wraps the RPC interface exposed through the "Truffle" tool, created by Consensys. This is all supported by an Amazon Web Services backend.
Challenges we ran into
When creating Pedalo, we were using a lot of different technologies we have never used before. Because of that, there were a fair few dead ends in the creation of this app. In the backend, we had set out our own Ethereum test network with miners before switching to TestRPC. Our frontend also was originally being developed in Swift, leading to delays as we switched to Ionic later in the hackathon.
Accomplishments that we're proud of
The fact that we developed for the first time: A fully native IOS app (with Android compat), A fully decentralized app on the Ethereum blockchain. We are additionally proud of learning a large amount of Swift and Solidity, having never used these languages before.
Our platform has a beautiful and functional user experience and is by all accounts, a genuine use case for the blockchain.
What's next for Pedalo
Linking Pedalo to Public Key Encryption key servers so recognised institutions can issue their own certificates would be a major step forward.