Skip to content

Commit

Permalink
Documentation updates (#138) (#139)
Browse files Browse the repository at this point in the history
  • Loading branch information
bnonni authored Sep 8, 2024
1 parent ba4863a commit 967037d
Show file tree
Hide file tree
Showing 6 changed files with 1,226 additions and 1,165 deletions.
32 changes: 16 additions & 16 deletions docs/diagrams/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,40 +3,40 @@
## Architecture Diagram

### Actors

- **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-architecture](/docs/img/dcx-architecture.png)
![dcx-architecture](/docs/img/dcx-protocol-architecture.png)

## Sequence Diagram

### Full Protocol

<details>

1. DCX Issuer configures Issuer DWN with dcx protocol
2. DCX Issuer creates credential manifest record in Issuer DWN
3. DCX Issuer creates subscription to Issuer DWN
4. DCX Applicant creates subscription to Applicant DWN
5. DCX Applicant reads credential manifest record from Issuer DWN
6. DCX Applicant acquires required credentials from issuers listed in manifest
7. DCX Applicant creates application record in Issuer DWN
8. DCX Issuer reads application record via Issuer DWN subscription
9. DCX Issuer uses @web5/dcx to verify application record credentials against credential manifest
1. DCX Issuer configures Issuer DWN with dcx protocol
2. DCX Issuer creates credential manifest record in Issuer DWN
3. DCX Issuer creates subscription to Issuer DWN
4. DCX Applicant creates subscription to Applicant DWN
5. DCX Applicant reads credential manifest record from Issuer DWN
6. DCX Applicant acquires required credentials from issuers listed in manifest
7. DCX Applicant creates application record in Issuer DWN
8. DCX Issuer reads application record via Issuer DWN subscription
9. DCX Issuer uses @web5/dcx to verify application record credentials against credential manifest
10. DCX Issuer creates response record in Applicant DWN
11. DCX Applicant reads response record via Applicant DWN subscription
12. DCX Issuer creates invoice record in Applicant DWN
13. DCX Applicant reads invoice record via Applicant DWN subscription

</details>
<br />

![dcx-full-sequence](/docs/img/dcx-full-sequence.png)

<details>
<summary>Notes</summary>

1. Credential-issuer and credential-applicant protocols defines DWN record CRUD actions between Issuer and Applicant
2. under the credential-issuer manifest route
Expand All @@ -45,7 +45,7 @@
5. Defines required "credentials in" to receive desired "credentials out"
6. Credentials are acquired separately, outside of DCX protocol, from listed trusted issuers
7. Application record includes credentials that satisfy credential manifest mentioned in step 5
9. DCX Issuer validates credentials against credential manifest using DCX software handlers
8. DCX Issuer validates credentials against credential manifest using DCX software handlers

</details>

Expand All @@ -64,8 +64,8 @@
9. DCX Issuer reads an incoming application record and validates against respective credential manifest
10. DCX Issuer creates application response or denial record and sends to applicant DWN
11. DCX Issuer creates invoice response record and sends to applicant DWN

</details>
<br />

![dcx-issuer-sequence](/docs/img/dcx-issuer-sequence.png)

Expand All @@ -74,13 +74,13 @@
<details>

1. DCX Applicant configures Applicant DWN with dcx protocol (issuer & applicant)
2. DCX Applicant creates subscription to Applicant DWN
2. DCX Applicant creates subscription to Applicant DWN
3. DCX Applicant reads credential manifest record from Issuer DWN
4. DCX Applicant acquires required credentials from issuers listed in manifest
5. DCX Applicant creates application record in Issuer DWN
6. DCX Applicant reads response record via Applicant DWN subscription
7. DCX Applicant reads invoice record via Applicant DWN subscription (optional)

</details>
<br />

![dcx-applicant-sequence](/docs/img/dcx-applicant-sequence.png)
Loading

0 comments on commit 967037d

Please sign in to comment.