- DCX: Protocol boundary within which actors communicate
- DCX Issuer: Web server running @web5/dcx and web5-js
- Issuer DWN: DCX Issuer's DWN server running dwn-sdk-js
- DCX Applicant: User client application running @web5/dcx and web5-js
- Applicant DWN: DCX Applicant's DWN server running dwn-sdk-js
- DCX Issuer configures Issuer DWN with dcx protocol
- DCX Issuer creates credential manifest record in Issuer DWN
- DCX Issuer creates subscription to Issuer DWN
- DCX Applicant creates subscription to Applicant DWN
- DCX Applicant reads credential manifest record from Issuer DWN
- DCX Applicant acquires required credentials from issuers listed in manifest
- DCX Applicant creates application record in Issuer DWN
- DCX Issuer reads application record via Issuer DWN subscription
- DCX Issuer uses @web5/dcx to verify application record credentials against credential manifest
- DCX Issuer creates response record in Applicant DWN
- DCX Applicant reads response record via Applicant DWN subscription
- DCX Issuer creates invoice record in Applicant DWN
- DCX Applicant reads invoice record via Applicant DWN subscription
- Credential-issuer and credential-applicant protocols defines DWN record CRUD actions between Issuer and Applicant
- under the credential-issuer manifest route
- Subscription to receive incoming application records
- Subscription to receive incoming response records
- Defines required "credentials in" to receive desired "credentials out"
- Credentials are acquired separately, outside of DCX protocol, from listed trusted issuers
- Application record includes credentials that satisfy credential manifest mentioned in step 5
- DCX Issuer validates credentials against credential manifest using DCX software handlers
- DCX Issuer configures Issuer DWN with dcx protocol (issuer & applicant)
- DCX Issuer creates credential manifest record in Issuer DWN
- DCX Issuer creates subscription to Issuer DWN
- DCX Issuer reads application record via Issuer DWN subscription
- DCX Issuer uses DCX software handlers to verify credentials against credential manifest
- DCX Issuer configures DWN with DCX Issuer protocol
- DCX Issuer creates DWN manifest record in own DWN to define required credentials to obtain other credentials
- DCX Issuer subscribes to own DWN to listen for application records
- DCX Issuer reads an incoming application record and validates against respective credential manifest
- DCX Issuer creates application response or denial record and sends to applicant DWN
- DCX Issuer creates invoice response record and sends to applicant DWN
- DCX Applicant configures Applicant DWN with dcx protocol (issuer & applicant)
- DCX Applicant creates subscription to Applicant DWN
- DCX Applicant reads credential manifest record from Issuer DWN
- DCX Applicant acquires required credentials from issuers listed in manifest
- DCX Applicant creates application record in Issuer DWN
- DCX Applicant reads response record via Applicant DWN subscription
- DCX Applicant reads invoice record via Applicant DWN subscription (optional)