My view is, everything written in the ledger should be accessible by anyone. So their public DID, Schema ID, Cred Def ID, should be made accessible. Whether it’s to public (like Alice the individual) or just among organizations is still manageable.
An example for just among organizations would look like this:
- Faber’s public DID is known to public (it’s why it’s called public). The source of trust to this public DID is from Steward.
- On Alice’s case, Acme needs to request Faber the Schema ID or Cred Def ID if it hasn’t been known before. Before using it, Acme should check from the Ledger both Schema ID or Cred Def ID and confirm it is created and signed by Faber’s public DID. Because of 1 Acme will trust it.
- It can be done by case-by-case (think of Acme may request another college on another case), or a registry to make college => Schema ID or Cred Def ID resolvable. No matter which case, the trust is still based on 1, not from any college or any registry.
I think both are still workable: either made to public, or just known among organizations.
Just my view as I’m not the original designer of the system. But I think this makes sense.