VeriFi

VeriFi

A Decentralised Autonomous Identity Management System (DAIMS) that enables seamless transaction of data between organizations about a user while maintaning privacy and also guaranteeing data validity.

The problem VeriFi solves

Problems faced by users:

  • All the personal data of an individual like aadhar, bank details, passport, degree, office Id, etc is distributed on several different platforms like digiLocker and various bank apps which is an inconvenience for the user to manage.
  • When organizations wish to get information from these institutions about the users, it may take days to weeks to contact the representatives and receive the necessary data.
  • For example, if an employer wants to collect data about a student from his/her college, it may take a lot of time to contact the institution and get their data.
  • There's an obvious issue that any data provided by an individual can be forged and verifying it from the respective institution could be troublesome.

Solution offered by VeriFi:

  • We provide a platform for the organization to upload the data of a particular individual directly to a decentralized network like IPFS. This also gives the user a single place to access all their personal information and forgoes the need to deal with several data storage platforms.
  • When the data is uploaded by the organization to IPFS, the encrypted data is signed by the Organizations' private key and is put on the blockchain. A corresponding NFT can also be minted by the organization mapped t the user's wallet address. Anyone can now use the signature and public key of the organization to verify that the data of a user is indeed verified by the issuing organization.
  • Since all the data hashes and signatures are stored on-chain, the data and verification became decentralized and immutable, and seamlessly available for any person to verify.

Challenges we ran into

We faced several challenges throughout the development of this project.

  • We faced issues deploying the contract on the polygon Mumbai testnet and also faced issues getting the MATIC tokens to pay the gas. We eventually figured out and deployed the contracts with some help from the folks at the polygon booth.
  • While we were integrating the front end, we ran into several module importing related errors. We carefully went through the documention of all related technologies and were able to solve most of them.
  • We also faced issues with creating an interface for the organization to mint the NFT directly but we had a lot issues integrating front-end with the smart contracts and faced issues uploading data to filecoin/IPFS.

Discussion