Skip to content

Commit c7f6f78

Browse files
authored
Update README.md
1 parent fa1f6cc commit c7f6f78

1 file changed

Lines changed: 5 additions & 3 deletions

File tree

resolver/README.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,14 @@ To resolve a `did:cel` identifier, a resolver MUST perform the following steps:
1616
3. Verify Inception:
1717
1. Extract the create event log entry.
1818
2. Extract `didDocument` from the create event.
19-
3. The `didDocument.id` and `didDocument.assertionMethod.controller` fields MUST exactly match the `did:cel` which is being resolved.
19+
3. The `didDocument.id` and `didDocument.assertionMethod.controller` fields MUST exactly match the `did:cel` which is being resolved. TBD extract assertionMethod
2020
4. Recreate `initialDidDocument` by removing the `id` and `assertionMethod.controller` fields from the `didDocument`
2121
5. Compute `multihash(sha3-256(JCS(initialDidDocument)))`. The result value MUST exactly match the `initialDidDocumentHash` extracted from the DID.
2222
6. Verify create event integrity
23-
5. Verify Integrity: Iterate through subsequent events ($E_n \dots E_0$), in reverse chronological order, starting with the newest entry, allowing previous verification to be reused if already cached or computed as needed. For each event, verify that:
24-
- For $E_n$ where $n \gt 1$, the `previousEventHash` MUST match the `sha3-256` hash of the previous event's document hash.
23+
- The create event is signed by a key authorized in the assertionMethod declaration
24+
- Witness Verification: The resolver MUST verify that the event contains a sufficient number of valid witness signatures. The specific threshold and selection of required witnesses are determined by application-level logic based on the trust requirements of the relying party.
25+
5. Verify Integrity: Iterate through subsequent events ($E_n \dots E_1$), in reverse chronological order, starting with the newest entry, allowing previous verification to be reused if already cached or computed as needed. For each event, verify that:
26+
- The `previousEventHash` MUST match the `sha3-256` hash of the previous event's document hash.
2527
- The event is signed by a key authorized in the state established by the previous event.
2628
- Witness Verification: The resolver MUST verify that the event contains a sufficient number of valid witness signatures. The specific threshold and selection of required witnesses are determined by application-level logic based on the trust requirements of the relying party.
2729
6. Verify Liveness & Temporal Continuity: The resolver MUST verify a contiguous chain of heartbeat proofs throughout the log duration.

0 commit comments

Comments
 (0)