Please pardon my ignorance, I am pretty new to the blockchain world and blockcerts. I wonder if there is a way to simplify end-user experience by removing the requirement for the badge recipient to provide public key?
This way users won’t need to install any additional software and manage their wallet with the public and private keys. As the badge issuer I will then be able to keep all of the badges on my end, and recipients would then be able to get a copy when needed. Perhaps, I can generate recipient’s public/private keys at the badge creation time?
Is this something that can be accomplished, or I am totally missing the architecture of blockcerts?
Great question! This goes to the heart of the project and is often not understood.
Control of keys is a fundamental requirement for ownership. There is no way around this and it does require the additional effort to gain the additional benefit. This is a big shift from the passive stance that learners have held in the past. Fortunately, the Blockcerts wallet provides a very easy way for learners to generate and send keys without knowing anything technical.
Unfortunately several badge providers are claiming “blockchain” features, but skipping this step, and therefore not providing ownership. That practice is not Blockcerts compliant. Some schools have even experimented with generating keys for recipients, but this isn’t secure and misses the entire point of having keys in the first place: to demonstrate ownership.
Hosted badges might be good enough for low-stakes claims. However, for high-stakes accomplishments that need to last a lifetime, this type of hosted credential isn’t enough. Hosted badges are easy to spoof, they are not tamper evident, and they do not survive should the vendor or issuer go down.