I’m working with a few Canadian leaders on a large report that is aimed at describing the current state of Digital Wallets, particularly wallets that are more about digital identity and credentials – as opposed to crypto wallets.

One concept that is clear is that there is a need for standards and open protocols to ensure that we’re not being locked in to something and to share the benefits of learning broadly in the community. This short article is an early excerpt from the report and it is about the formalization (aka Evolution) of protocols from a very high level.

Most useful protocols start off as an Isolated use capability that can barely be described as a “protocol”. Over time, as it shows value there is a Community level adoption. If the protocol is truly valuable there is a push to create a Formal protocol.

Proprietary to Community to Standard

The three main stages of a protocol are:

  • Isolated (or Proprietary) – a singular implementation exists likely from a single closed- or open-source project and it has minor adoption in a very closed project or customer base.
  • Community – a larger community has begun to use some competing (Isolated) versions and realizes that they need to converge on something more common in order to grow as a community.
  • Formal – a group of communities have put in the effort to formalize a broad protocol, usually through a standards body of some kind (e.g. IETF, OASIS).

Is It Worth The Effort?

At every shift there is a substantial effort to lift a protocol to the next stage. The efforts relate to:

  • Technical Development Efforts – the technical community expends a large amount of time working on the common and different use cases, digging out the incompatibilities, breaking thing down to the bare minimums, and much more.
  • Social Capital Investment – the amount of social capital that is invested to push a protocol forward. This investment is crucial for success of a protocol.

These efforts need to be gauged against results. If adoption doesn’t grow with more formalization there may be no need for a broadly applicable protocol. The successful protocols drive adoption as they get more and more formal.

A Small Example – Sovrin Agent-to-Agent

Sovrin provides a good example. The initial libVCX library, donated by Evernym, begins to meet the needs of an Agent-to-Agent (A2A) protocol. This is currently an Isolated (proprietary) protocol. However, the Evernym & Sovrin teams, combined with projects from the BC Government’s VON project and BYU catalyzed the community, are now developing a Sovrin A2A protocol – a Community protocol.

In time I believe that the Sovrin A2A protocol will help drive for a broader protocol that supports a multitude of underlying systems. The investment required to take disparate communities (e.g. DIF, uPort, Veres.one) come together to create a Formal protocol will likely happen here. The technical and social investment to do so are quite large and it will take time. Anyone basing business and short-term decisions on a Formal protocol should look for Community (or Isolated) protocols that meet their needs for now.

As an advisor to multiple players in the Sovrin ecosystem (e.g. Evernym, CULedger, Tykn, BC Gov) I am excited to see where this is going. This Community protocol effort has been impressive to watch and invest time and effort in.


Also published on Medium.