ID of user #1 that requested verification
Proof of consent of user #1 that requested verification
Proof of consent of user #2 that requested verification
ID of user #2 that requested verification
Venezuelans are going through a major humanitarian crisis and could benefit greatly from conditional cash transfer programs initiated by the crypto community. One major obstacle for this is the inability to identify Venezuelans and associate them with cryptographic keys.
What it does
We provide onboarding for Venezuelans into two different claims registries at once: the uPort self-sovereign identity system, and a Venezuela jurisdiction that follows the Transaction Permission Layer protocol. Any service can use these protocols to ask whether a potential user is Venezuelan, and thus eligible for a conditional cash transfer.
We provide two attestations: that the user is a Venezuelan ID card holder, and that the user is eligible to vote according to the official voter's registry. This last attestation is timestamped and proven with an Ethereum smart contract.
How we built it
node.js, Solidity, HTML5
Challenges we ran into
Accomplishments that we're proud of
We programmed smart contracts for the very first time and extended the TPL protocol with a real-world use case. We used an oracle to prove we fetched data from the official voter's registry with a timestamp.
What we learned
A ton of Solidity! And that Remix really rocks for hackathons.
What's next for Tu Cédula Digital
We need to keep polishing the user experience, implement de-duping logic with machine learning, and complete the integration between our backend and the smart contracts.