Delegated Multisig AID Creation #32
pfeairheller
started this conversation in
General
Replies: 2 comments
-
Great details/challenge @pfeairheller ! |
Beta Was this translation helpful? Give feedback.
0 replies
-
This procedure has been completed in a series of scripts and documented in full in Discussion #95 |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Delegated Multisig AID Creation
Introduction
This document attempts to document the steps targeted for an interop exercise between various signify clients, KERIA agents
and KERIpy command line. Completion of the following steps with the result of a 3 participant multisig AID that is delegated
from a 4th AID using any combination of different Signify clients and one KERIpy participant closely resembles the first procedure
required by a Qualified vLEI Issuer in the vLEI ecosystem. That is, create their issuing AID that is at least a 3 participant multisig
AID, delegated from the GLEIF External AID. The functionality needed for this procedure includes local (single sig) AID creation,
OOBI exchange (generation and resolution), challenge phrase exchange (generation and signing), multisig AID initiation and joining, delegation request and approval. The ability to interact with witnesses and agents as message recipients is assumed for all participants.
Participants
The following list is the suggested breakdown of participants in this interop exercise.
Witness Network
A publicly available witness network of at least 5 witnesses will be made available for this interop exercise. It is anticipated that
the KERIpy implementation of a Witness will be used to launch the witnesses. The witnesses will be launched in promiscuous mode accepting witness requests from any AID.
Delegator
The Delegator AID should be created using the KERIpy command line as a single sig AID using a publicly available set of witnesses. Most of this functionality current exists in the KERIpy command line but the following functionality needs to be verified:
Mulisig Participants
Ideally we would like to have the 3 participants for the multisig AID each participate using a different Signify client against
a single KERIA multi-tenant service (an alternate configuration allowing for multiple KERIA services may also be tried). The clients
targeting for the first implementation are:
The "user interface" for the interaction with the Signify client will differ for each client type and may be as simple as a script
that completes the necessary steps. The intent of this interop exercise is not to focus on user interface but the underlying
capabilities of KERIA, each client and interoperability between the implementations.
Detailed Interop Script
The following list of steps is an attempt to capture all steps needed to create the delegated multisig AID and demonstrate
interoperability. It is also intended to be a blueprint for Signify clients and KERIA agent development to achieve compatibility. The
steps are listed in order for each participant for clarity, but it is expected that many of the steps will be performed in parallel and
interleaved with each other. The lists below are descriptive of the functionality required, not prescriptive of the order.
Delegator
Multisig Participants
Key Generation Algorithm
The KERIA agent service supports three different key generation algorithms for local AIDs: Salty, Randy and HSM. It would be ideal if we could have an implementation of each used for this exercise but that is beyond the scope of interop. Therefore, it will
be up to each participant to use any one of Salty, Randy or HSM even if all three participants end up using the same key generation
algorithm.
Steps to be Perform By Every Participant
/boot
API call.Steps to be Performed by the Multisig Lead Participant
delpre
.Steps to be Performed by Non-Lead Multisig Participants
Bonus Points
The next steps to be tested include AID interaction events (used for credential registry creation and credential issuance), AID rotation events (which will require delegation approval) and various contact operations for associating human-readable information to the AIDs that have been resolved.
Beta Was this translation helpful? Give feedback.
All reactions