Initial SSI-Agent Network Architecture

The SSI-Agent Network Architecture has two viewpoints:

  1. the intra-party or single-party SSI viewpoint, which focuses on the set of (human and/or electronic) agents of a single, specific party.
  2. the inter-party or multi-party SSI viewpoint, which is about specific functional components (e.g. Verifier, Holder, etc.) that typically belong to different parties.

An individual party may use the single-party SSI viewpoint to come to grips with concerns related to the creation and maintenance of its network of its electronic agents. The set of concerns would include:

  • How can electronic components be onboarded as an agents of this party?
  • How can the integrity of such electronic agents be stated in a trustworthy manner (do such components need some kind of accreditation certificate, do we need to come up with a service that can remotely test the integrity of a component and have it issue ephemeral integrity-certificates/credentials, …)?
  • How can the party specify which of its agents may talk with which other agents, and for what purposes?
  • How should a party specify the policies for the various SSI functionalities - what kind of support would be useful here?

Parties that want (their agents) to interact with one another may use the multi-party SSI viewpoint to come to grips with concerns related to the interoperability of the functionalities that their components implement. The set of concerns would include:

  • How can parties interact with one another at the information level (this includes decentralized semantic interoperability issues, advertising credentials, how a party can find other parties that issue credentials that are useful to him, etc.)
  • What kinds of underlying technologies must agents of a party support so as to be(come) interoperable with parties that it wants to interact with?