Blockcert implementation through Truffle, Solidity and Web3.js

Hi,

I am new to this technology and I want to create a certification application in which it will provide a digital certificate to any requesting user. User will provide his id and badge details based upon which the application will generate the certificate in blockchain, which the student can share with someone else. If needed verification can also be done from any 3rd party.

Can anyone suggested me what flow will be the best for the above solution?

The simplest thing I can imagine, is a running backend app that can run the shell commands for the cert-tools and cert-issuer, passing in the arguments it got from the frontend (from the POST request made by the user filling out a form, for example). Python Flask does backend and frontend, but if you’re comfortable with your technologies than you can probably get anything to work.

The main painpoints with building a frontend automation service is…

  • To issue with their wallet, their wallet needs money on it.
  • To issue with their wallet, you need their private key.

So you either have to ask for their public-private keypair in your frontend, which is unsafe but not entirely infeasible, or you have to generate a public-private keypair for them (backend does this) when they sign up, and then send some money to their new public key, so that your issuer code will run successfully when they decide to use it.

Luckily there’s python libraries just a google away, for generating public-private keypairs, and also for sending money from your wallet to their new wallet, (I recommend you store the generated private keys in the local database, and only return the public key to the frontend).

Those are my ideas at least. Hope that stirs the pot. :female_detective: