Inspiration

Linkedin as a networking platform contains users that can claim whatever they want on their profile page, not being able to verify if the person you are speaking to is actually who they are telling is an issue for developers that are looking for new jobs. I wanted to solve this problem using Verifiable Credentials.

Some examples of LinkedIn's issues:

Only 50 or so profiles out of 7,000 Binance employees on LinkedIn are real, says CZ (CEO of binance) link

My personal experience with scammers and attackers on linkedin that claim to be hiring managers for companies and send github repositories that clearly contain malware.

What it does

CrediLink connect is a browser extension that is used with indy-bex-connector NPM package (also written for this hackathon).

Using the browser extension you can:

  • Create a wallet/import an existing wallet
  • Create DID's
  • Receive VC's
  • Create/Receive Connections
  • Create/Receive Proof requests
  • Verify proofs

The extension uses BIP-39 for generating seedphrases which are then turned into the users wallet-key and wallet-name.

How we built it

CrediLink connect is built using Vue.js and Quasar Framework's BEX mode The extension requires a blockchain, i use hyperledger-indy with 4 nodes (note that indy-sdk is deprecated but indy-node is not) and aries cloudagent on multitenant mode for managing wallets.

Challenges we ran into

This was the first time I created a browser extension.

To make a demo for the browser extension, you need a website that can interact with the browser extension, so I had to create an NPM package as well as a website that uses that package to communicate with the BEX.

After creating the NPM package i realised that the seedphrase is contained inside that package (to give credentials as issuer), which would make it so that anyone using package would be able to steal the phrase and create any credential they want using that seed.

So I had to also write a basic js server that holds the seedphrase and connects to aries cloudagent.

Accomplishments that we're proud of

The extension works properly on chromium based browsers, users are able to receive credentials using their wallets, if any user loses their wallet, they can retrieve it using their mnemonic.

Final notes

long demo Please watch the long demo if you wish to run this project.

The long demo contains instructions on how to start the indy nodes and how to connect aries cloudagent to the nodes. It also contains the information on the initial configuration steps that are required to be done before running.

Built With

Share this project:

Updates