1EdTech / cert-schema

The schema for Blockcerts
MIT License
74 stars 72 forks source link

Support Decentralized identifiers #41

Closed kimdhamilton closed 6 years ago

kimdhamilton commented 7 years ago

Instead of relying on public keys, we want to use Decentralized Identifiers (DIDs), since these enable longer-lived Blockcert ownership.

Note that the decentralized identifier spec is still being finalized in the W3C Credentials CG. There are 2 known (at this time) mostly compliant (i.e. the spec still isn't finalized) method specs -- Veres 1 and BTCR. Other popular method specs such as Sovrin and uPort are expected to comply shortly after spec finalization.

Blockcerts won't tie to any specific DID provider. Rather it only knows about DIDs. We may, for purposes of prototypes, show examples with the simplest DID method, i.e. BTCR.

DIDs enable more user-friendly means of recovery, e.g. social recovery in the case that you lose your device, or in some way make your private keys unrecoverable.

The schema change is super simple: we will simply use Verifiable Claims conventions enabling id, entity, and owner to be DIDs.

Changes to the Blockcerts ecosystem could be interesting:

In general, this nicely decouples Blockcerts from key management.

kimdhamilton commented 6 years ago

This issue was moved to blockchain-certificates/cert-issuer#69