alan-turing-institute / trustchain

Trustworthy decentralised PKI
https://alan-turing-institute.github.io/trustchain/
Apache License 2.0
9 stars 4 forks source link

Write a technical note on "Root Integration" #185

Closed thobson88 closed 3 days ago

thobson88 commented 1 week ago

We already have two technical notes about ways to integrate different trust networks:

  1. Rebasing, i.e. grafting one tree onto another (with only the new subordinate network having to update their root event time)
  2. Interoperability DIDs, i.e. a shared DID representing entities from different networks so each accepts credentials issued by the other (neither having to update their root event time)

The main limitations of these approaches are:

A third possible approach is to create a new root that is upstream of both of the original roots and contains the same keys. This is a more blunt method because users on both networks have to update their root event time. But it avoids the limitations mentioned above and is therefore probably worth writing down.

thobson88 commented 1 week ago

First attempt:

Root DID Integration [DRAFT]

Suppose (as in the Rebasing section above) two independent root transactions have been created by two separate user communities, each with its own network of trust relationships represented by chains of downstream DIDs.

At some later date there may be a mutual agreement to fuse the two networks into a single one, but (unlike the case above) suppose that neither of the root entities is prepared to be subordinated by the other.

In this situation the two networks can be integrated by publishing a new root DID, whose set of public keys is the union of the public keys from each of the original roots. The two original root DIDs are then updated to become downstream DIDs of the new root.

Users on both networks would need to reconfigure the root event time on their Trustchain nodes to match the publication time of the new integrated root DID but, once this is done, all credentials that were previously issued will remain valid and will now be verifiable by participants on both networks.