@interop/wallet-core 0.66.0 → 0.68.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -8
- package/dist/clientAnnex/credentialAnchoredGenesis.d.ts +6 -10
- package/dist/clientAnnex/credentialAnchoredGenesis.d.ts.map +1 -1
- package/dist/clientAnnex/credentialAnchoredGenesis.js +34 -56
- package/dist/clientAnnex/credentialAnchoredGenesis.js.map +1 -1
- package/dist/clientAnnex/establish.d.ts +46 -29
- package/dist/clientAnnex/establish.d.ts.map +1 -1
- package/dist/clientAnnex/establish.js +111 -86
- package/dist/clientAnnex/establish.js.map +1 -1
- package/dist/clientAnnex/forget.d.ts +7 -16
- package/dist/clientAnnex/forget.d.ts.map +1 -1
- package/dist/clientAnnex/forget.js +13 -24
- package/dist/clientAnnex/forget.js.map +1 -1
- package/dist/clientAnnex/forgetLast.d.ts +33 -129
- package/dist/clientAnnex/forgetLast.d.ts.map +1 -1
- package/dist/clientAnnex/forgetLast.js +43 -182
- package/dist/clientAnnex/forgetLast.js.map +1 -1
- package/dist/clientAnnex/gc.d.ts +26 -12
- package/dist/clientAnnex/gc.d.ts.map +1 -1
- package/dist/clientAnnex/gc.js +60 -57
- package/dist/clientAnnex/gc.js.map +1 -1
- package/dist/clientAnnex/heal.d.ts +75 -18
- package/dist/clientAnnex/heal.d.ts.map +1 -1
- package/dist/clientAnnex/heal.js +79 -147
- package/dist/clientAnnex/heal.js.map +1 -1
- package/dist/clientAnnex/index.d.ts +8 -8
- package/dist/clientAnnex/index.d.ts.map +1 -1
- package/dist/clientAnnex/index.js +5 -5
- package/dist/clientAnnex/index.js.map +1 -1
- package/dist/clientAnnex/ladder.d.ts +51 -4
- package/dist/clientAnnex/ladder.d.ts.map +1 -1
- package/dist/clientAnnex/ladder.js +283 -47
- package/dist/clientAnnex/ladder.js.map +1 -1
- package/dist/clientAnnex/ladderAnchored.d.ts +62 -73
- package/dist/clientAnnex/ladderAnchored.d.ts.map +1 -1
- package/dist/clientAnnex/ladderAnchored.js +103 -117
- package/dist/clientAnnex/ladderAnchored.js.map +1 -1
- package/dist/clientAnnex/log.d.ts +123 -125
- package/dist/clientAnnex/log.d.ts.map +1 -1
- package/dist/clientAnnex/log.js +174 -233
- package/dist/clientAnnex/log.js.map +1 -1
- package/dist/clientAnnex/mend.d.ts +0 -4
- package/dist/clientAnnex/mend.d.ts.map +1 -1
- package/dist/clientAnnex/mend.js +50 -51
- package/dist/clientAnnex/mend.js.map +1 -1
- package/dist/clientAnnex/recoveryLadderAnchored.d.ts +25 -13
- package/dist/clientAnnex/recoveryLadderAnchored.d.ts.map +1 -1
- package/dist/clientAnnex/recoveryLadderAnchored.js +80 -303
- package/dist/clientAnnex/recoveryLadderAnchored.js.map +1 -1
- package/dist/clientAnnex/rosterDeliveredEpochs.d.ts +13 -5
- package/dist/clientAnnex/rosterDeliveredEpochs.d.ts.map +1 -1
- package/dist/clientAnnex/rosterDeliveredEpochs.js +18 -9
- package/dist/clientAnnex/rosterDeliveredEpochs.js.map +1 -1
- package/dist/clientAnnex/selfEnroll.d.ts +6 -10
- package/dist/clientAnnex/selfEnroll.d.ts.map +1 -1
- package/dist/clientAnnex/selfEnroll.js +13 -18
- package/dist/clientAnnex/selfEnroll.js.map +1 -1
- package/dist/clientAnnex/zcap.d.ts +19 -0
- package/dist/clientAnnex/zcap.d.ts.map +1 -1
- package/dist/clientAnnex/zcap.js +80 -12
- package/dist/clientAnnex/zcap.js.map +1 -1
- package/dist/clients/index.d.ts +3 -2
- package/dist/clients/index.d.ts.map +1 -1
- package/dist/clients/index.js +3 -2
- package/dist/clients/index.js.map +1 -1
- package/dist/clients/listing.d.ts.map +1 -1
- package/dist/clients/listing.js +33 -15
- package/dist/clients/listing.js.map +1 -1
- package/dist/clients/policy.d.ts +18 -0
- package/dist/clients/policy.d.ts.map +1 -1
- package/dist/clients/policy.js +22 -8
- package/dist/clients/policy.js.map +1 -1
- package/dist/clients/revocation.d.ts +18 -30
- package/dist/clients/revocation.d.ts.map +1 -1
- package/dist/clients/revocation.js +12 -27
- package/dist/clients/revocation.js.map +1 -1
- package/dist/clients/rosterPolicy.d.ts +6 -1
- package/dist/clients/rosterPolicy.d.ts.map +1 -1
- package/dist/clients/rosterPolicy.js +27 -30
- package/dist/clients/rosterPolicy.js.map +1 -1
- package/dist/descriptors/errors.d.ts +6 -5
- package/dist/descriptors/errors.d.ts.map +1 -1
- package/dist/descriptors/errors.js +6 -5
- package/dist/descriptors/errors.js.map +1 -1
- package/dist/descriptors/index.d.ts +7 -3
- package/dist/descriptors/index.d.ts.map +1 -1
- package/dist/descriptors/index.js +7 -3
- package/dist/descriptors/index.js.map +1 -1
- package/dist/descriptors/logSource.d.ts +28 -6
- package/dist/descriptors/logSource.d.ts.map +1 -1
- package/dist/descriptors/logSource.js +33 -7
- package/dist/descriptors/logSource.js.map +1 -1
- package/dist/enrollment/enrollment.d.ts.map +1 -1
- package/dist/enrollment/enrollment.js +3 -7
- package/dist/enrollment/enrollment.js.map +1 -1
- package/dist/genesis/accountGenesis.d.ts +11 -16
- package/dist/genesis/accountGenesis.d.ts.map +1 -1
- package/dist/genesis/accountGenesis.js +43 -47
- package/dist/genesis/accountGenesis.js.map +1 -1
- package/dist/genesis/kmsAuthentication.d.ts +50 -0
- package/dist/genesis/kmsAuthentication.d.ts.map +1 -0
- package/dist/genesis/kmsAuthentication.js +49 -0
- package/dist/genesis/kmsAuthentication.js.map +1 -0
- package/dist/keyring/kdf.d.ts +16 -20
- package/dist/keyring/kdf.d.ts.map +1 -1
- package/dist/keyring/kdf.js +2 -2
- package/dist/keyring/kdf.js.map +1 -1
- package/dist/keyring/unlockSpace.d.ts +8 -30
- package/dist/keyring/unlockSpace.d.ts.map +1 -1
- package/dist/keyring/unlockSpace.js +8 -31
- package/dist/keyring/unlockSpace.js.map +1 -1
- package/dist/keys/clientKeyRecord.d.ts +2 -1
- package/dist/keys/clientKeyRecord.d.ts.map +1 -1
- package/dist/keys/clientKeyRecord.js +28 -11
- package/dist/keys/clientKeyRecord.js.map +1 -1
- package/dist/keys/index.d.ts +6 -2
- package/dist/keys/index.d.ts.map +1 -1
- package/dist/keys/index.js +5 -1
- package/dist/keys/index.js.map +1 -1
- package/dist/keys/rosterLogStore.d.ts.map +1 -1
- package/dist/keys/rosterLogStore.js +14 -5
- package/dist/keys/rosterLogStore.js.map +1 -1
- package/dist/keys/spaceEpochs.d.ts +92 -3
- package/dist/keys/spaceEpochs.d.ts.map +1 -1
- package/dist/keys/spaceEpochs.js +110 -4
- package/dist/keys/spaceEpochs.js.map +1 -1
- package/dist/keys/userKeyRoster.d.ts +30 -3
- package/dist/keys/userKeyRoster.d.ts.map +1 -1
- package/dist/keys/userKeyRoster.js +90 -15
- package/dist/keys/userKeyRoster.js.map +1 -1
- package/dist/keys/userKeyRosterCascade.d.ts.map +1 -1
- package/dist/keys/userKeyRosterCascade.js +5 -1
- package/dist/keys/userKeyRosterCascade.js.map +1 -1
- package/dist/recovery/continuation.d.ts +250 -0
- package/dist/recovery/continuation.d.ts.map +1 -0
- package/dist/recovery/continuation.js +467 -0
- package/dist/recovery/continuation.js.map +1 -0
- package/dist/recovery/index.d.ts +12 -8
- package/dist/recovery/index.d.ts.map +1 -1
- package/dist/recovery/index.js +11 -7
- package/dist/recovery/index.js.map +1 -1
- package/dist/recovery/recoveryDelegation.d.ts +23 -126
- package/dist/recovery/recoveryDelegation.d.ts.map +1 -1
- package/dist/recovery/recoveryDelegation.js +1 -266
- package/dist/recovery/recoveryDelegation.js.map +1 -1
- package/dist/recovery/recoveryWebvh.d.ts +52 -107
- package/dist/recovery/recoveryWebvh.d.ts.map +1 -1
- package/dist/recovery/recoveryWebvh.js +54 -403
- package/dist/recovery/recoveryWebvh.js.map +1 -1
- package/dist/request/classify.d.ts +3 -14
- package/dist/request/classify.d.ts.map +1 -1
- package/dist/request/classify.js +19 -40
- package/dist/request/classify.js.map +1 -1
- package/dist/request/index.d.ts +1 -0
- package/dist/request/index.d.ts.map +1 -1
- package/dist/request/index.js +1 -0
- package/dist/request/index.js.map +1 -1
- package/dist/request/onboarding.d.ts.map +1 -1
- package/dist/request/onboarding.js +19 -27
- package/dist/request/onboarding.js.map +1 -1
- package/dist/request/parse.d.ts +5 -3
- package/dist/request/parse.d.ts.map +1 -1
- package/dist/request/parse.js +7 -6
- package/dist/request/parse.js.map +1 -1
- package/dist/request/processRequest.d.ts.map +1 -1
- package/dist/request/processRequest.js +2 -1
- package/dist/request/processRequest.js.map +1 -1
- package/dist/request/queryPredicates.d.ts +98 -0
- package/dist/request/queryPredicates.d.ts.map +1 -0
- package/dist/request/queryPredicates.js +107 -0
- package/dist/request/queryPredicates.js.map +1 -0
- package/dist/resourceLog/document.d.ts +39 -0
- package/dist/resourceLog/document.d.ts.map +1 -1
- package/dist/resourceLog/document.js +41 -0
- package/dist/resourceLog/document.js.map +1 -1
- package/dist/resourceLog/index.d.ts +2 -2
- package/dist/resourceLog/index.js +2 -2
- package/dist/resourceLog/ladderRungs.d.ts.map +1 -1
- package/dist/resourceLog/ladderRungs.js +3 -2
- package/dist/resourceLog/ladderRungs.js.map +1 -1
- package/dist/sync/contactsConflict.d.ts.map +1 -1
- package/dist/sync/contactsConflict.js +8 -2
- package/dist/sync/contactsConflict.js.map +1 -1
- package/dist/sync/engine.d.ts +38 -23
- package/dist/sync/engine.d.ts.map +1 -1
- package/dist/sync/engine.js +36 -5
- package/dist/sync/engine.js.map +1 -1
- package/dist/sync/index.d.ts +9 -12
- package/dist/sync/index.d.ts.map +1 -1
- package/dist/sync/index.js +8 -11
- package/dist/sync/index.js.map +1 -1
- package/dist/sync/push.d.ts.map +1 -1
- package/dist/sync/push.js +1 -2
- package/dist/sync/push.js.map +1 -1
- package/dist/sync/remint.d.ts +0 -31
- package/dist/sync/remint.d.ts.map +1 -1
- package/dist/sync/remint.js +32 -1
- package/dist/sync/remint.js.map +1 -1
- package/dist/sync/types.d.ts +4 -41
- package/dist/sync/types.d.ts.map +1 -1
- package/dist/sync/types.js +4 -47
- package/dist/sync/types.js.map +1 -1
- package/dist/unlock/index.d.ts +1 -1
- package/dist/unlock/index.d.ts.map +1 -1
- package/dist/unlock/index.js +1 -1
- package/dist/unlock/index.js.map +1 -1
- package/dist/unlock/retire.d.ts +16 -64
- package/dist/unlock/retire.d.ts.map +1 -1
- package/dist/unlock/retire.js +7 -86
- package/dist/unlock/retire.js.map +1 -1
- package/dist/unlock/standingWebvh.d.ts +27 -61
- package/dist/unlock/standingWebvh.d.ts.map +1 -1
- package/dist/unlock/standingWebvh.js +40 -92
- package/dist/unlock/standingWebvh.js.map +1 -1
- package/dist/unlock/unlockRecord.d.ts.map +1 -1
- package/dist/unlock/unlockRecord.js +69 -44
- package/dist/unlock/unlockRecord.js.map +1 -1
- package/dist/webvh/accountEntry.d.ts +68 -19
- package/dist/webvh/accountEntry.d.ts.map +1 -1
- package/dist/webvh/accountEntry.js +117 -37
- package/dist/webvh/accountEntry.js.map +1 -1
- package/dist/webvh/delegatedLogStore.d.ts +24 -13
- package/dist/webvh/delegatedLogStore.d.ts.map +1 -1
- package/dist/webvh/delegatedLogStore.js +40 -11
- package/dist/webvh/delegatedLogStore.js.map +1 -1
- package/dist/webvh/didWebvh.d.ts +91 -86
- package/dist/webvh/didWebvh.d.ts.map +1 -1
- package/dist/webvh/didWebvh.js +117 -142
- package/dist/webvh/didWebvh.js.map +1 -1
- package/dist/webvh/enrollClient.d.ts +2 -8
- package/dist/webvh/enrollClient.d.ts.map +1 -1
- package/dist/webvh/enrollClient.js +22 -31
- package/dist/webvh/enrollClient.js.map +1 -1
- package/dist/webvh/index.d.ts +12 -8
- package/dist/webvh/index.d.ts.map +1 -1
- package/dist/webvh/index.js +10 -7
- package/dist/webvh/index.js.map +1 -1
- package/dist/webvh/listClients.d.ts.map +1 -1
- package/dist/webvh/listClients.js +102 -65
- package/dist/webvh/listClients.js.map +1 -1
- package/dist/webvh/mergeMethods.d.ts +84 -0
- package/dist/webvh/mergeMethods.d.ts.map +1 -0
- package/dist/webvh/mergeMethods.js +46 -0
- package/dist/webvh/mergeMethods.js.map +1 -0
- package/dist/webvh/revokeClient.d.ts +15 -11
- package/dist/webvh/revokeClient.d.ts.map +1 -1
- package/dist/webvh/revokeClient.js +130 -57
- package/dist/webvh/revokeClient.js.map +1 -1
- package/dist/webvh/verifyLog.d.ts +45 -4
- package/dist/webvh/verifyLog.d.ts.map +1 -1
- package/dist/webvh/verifyLog.js +62 -21
- package/dist/webvh/verifyLog.js.map +1 -1
- package/dist/webvh/wasIdStore.d.ts +16 -3
- package/dist/webvh/wasIdStore.d.ts.map +1 -1
- package/dist/webvh/wasIdStore.js +18 -3
- package/dist/webvh/wasIdStore.js.map +1 -1
- package/package.json +11 -11
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { relationIds } from '../resourceLog/document.js';
|
|
2
|
+
/**
|
|
3
|
+
* Merges verification methods into a published document across the five
|
|
4
|
+
* relations. `verificationMethod` keeps every existing method the predicate
|
|
5
|
+
* does not retire and that no added method replaces by id, then the added
|
|
6
|
+
* methods in order; each relation keeps its existing references (retired ones
|
|
7
|
+
* dropped) and then the ids `relations` names for it, deduped.
|
|
8
|
+
*
|
|
9
|
+
* The retirement predicate runs over the existing document only, and the
|
|
10
|
+
* added ids join afterwards: a method this entry publishes may already stand
|
|
11
|
+
* in a relation (a reinstalled ladder VM, say), and filtering the union would
|
|
12
|
+
* strike the very method being published.
|
|
13
|
+
*
|
|
14
|
+
* @param options {object}
|
|
15
|
+
* @param options.doc {object} the published document the entry extends
|
|
16
|
+
* @param options.methods {VerificationMethod[]} the methods to publish, in
|
|
17
|
+
* the order they land in `verificationMethod`
|
|
18
|
+
* @param options.relations {RelationMembership} the ids each relation gains
|
|
19
|
+
* @param [options.retire] {(id: string) => boolean} which existing method
|
|
20
|
+
* ids and relation references leave the document in the same entry
|
|
21
|
+
* @returns {object} the merged `verificationMethods` and the five relations,
|
|
22
|
+
* as the account-entry seam takes them
|
|
23
|
+
*/
|
|
24
|
+
export function mergeVerificationMethods({ doc, methods, relations, retire = () => false }) {
|
|
25
|
+
const retired = (id) => id !== undefined && retire(id);
|
|
26
|
+
const existingMethods = doc.verificationMethod ?? [];
|
|
27
|
+
const verificationMethods = [
|
|
28
|
+
...existingMethods.filter(method => !retired(method.id) && !methods.some(added => added.id === method.id)),
|
|
29
|
+
...methods
|
|
30
|
+
];
|
|
31
|
+
const withReferences = (relation, ids) => [
|
|
32
|
+
...new Set([
|
|
33
|
+
...relationIds(relation).filter(id => !retired(id)),
|
|
34
|
+
...(ids ?? [])
|
|
35
|
+
])
|
|
36
|
+
];
|
|
37
|
+
return {
|
|
38
|
+
verificationMethods,
|
|
39
|
+
authentication: withReferences(doc.authentication, relations.authentication),
|
|
40
|
+
assertionMethod: withReferences(doc.assertionMethod, relations.assertionMethod),
|
|
41
|
+
keyAgreement: withReferences(doc.keyAgreement, relations.keyAgreement),
|
|
42
|
+
capabilityInvocation: withReferences(doc.capabilityInvocation, relations.capabilityInvocation),
|
|
43
|
+
capabilityDelegation: withReferences(doc.capabilityDelegation, relations.capabilityDelegation)
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=mergeMethods.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mergeMethods.js","sourceRoot":"","sources":["../../src/webvh/mergeMethods.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAexD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,wBAAwB,CAAC,EACvC,GAAG,EACH,OAAO,EACP,SAAS,EACT,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,EAarB;IAQC,MAAM,OAAO,GAAG,CAAC,EAAsB,EAAW,EAAE,CAClD,EAAE,KAAK,SAAS,IAAI,MAAM,CAAC,EAAE,CAAC,CAAA;IAChC,MAAM,eAAe,GAAG,GAAG,CAAC,kBAAkB,IAAI,EAAE,CAAA;IACpD,MAAM,mBAAmB,GAAG;QAC1B,GAAG,eAAe,CAAC,MAAM,CACvB,MAAM,CAAC,EAAE,CACP,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC,CACxE;QACD,GAAG,OAAO;KACX,CAAA;IACD,MAAM,cAAc,GAAG,CACrB,QAAqD,EACrD,GAAyB,EACzB,EAAE,CAAC;QACH,GAAG,IAAI,GAAG,CAAC;YACT,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACnD,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;SACf,CAAC;KACH,CAAA;IACD,OAAO;QACL,mBAAmB;QACnB,cAAc,EAAE,cAAc,CAC5B,GAAG,CAAC,cAAc,EAClB,SAAS,CAAC,cAAc,CACzB;QACD,eAAe,EAAE,cAAc,CAC7B,GAAG,CAAC,eAAe,EACnB,SAAS,CAAC,eAAe,CAC1B;QACD,YAAY,EAAE,cAAc,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,YAAY,CAAC;QACtE,oBAAoB,EAAE,cAAc,CAClC,GAAG,CAAC,oBAAoB,EACxB,SAAS,CAAC,oBAAoB,CAC/B;QACD,oBAAoB,EAAE,cAAc,CAClC,GAAG,CAAC,oBAAoB,EACxB,SAAS,CAAC,oBAAoB,CAC/B;KACF,CAAA;AACH,CAAC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { DIDDoc, DIDLog, VerificationMethod } from '@interop/did-method-webvh';
|
|
2
|
-
import type { ResourceLogPinStore } from '@interop/vh-resource-log';
|
|
3
2
|
import type { AccountLogSigner } from './accountEntry.js';
|
|
4
3
|
import type { PublishedWebvhLog, WebvhIdStore } from './didWebvh.js';
|
|
5
4
|
/**
|
|
@@ -86,12 +85,22 @@ export declare function clientRemovalTarget({ published, client }: {
|
|
|
86
85
|
* these to `updateDID` beside its own signer -- an enrolled client's update
|
|
87
86
|
* key for a revocation, a revealed ladder rung for a forget.
|
|
88
87
|
*
|
|
88
|
+
* The latent commitments excluded from that attribution are derived here
|
|
89
|
+
* from the log (`standingCredentialLatentHashes`), so no caller has to know
|
|
90
|
+
* the account's standing credentials to remove a client correctly; a caller's
|
|
91
|
+
* own list is excluded beside them as a cross-check and vouches for what the
|
|
92
|
+
* walk could not read (a credential an earlier recovery's add-and-retire
|
|
93
|
+
* entry introduced has no anchor, and a registry still names its hash). The
|
|
94
|
+
* derived set never overrides the decision-0007 position, so a walk that
|
|
95
|
+
* over-claimed cannot leave the client's own staged hash standing.
|
|
96
|
+
*
|
|
89
97
|
* @param options {object}
|
|
90
98
|
* @param options.published {PublishedWebvhLog}
|
|
91
99
|
* @param options.target {ClientRemovalTarget}
|
|
92
100
|
* @param [options.knownLatentHashes] {string[]} standing latent commitments
|
|
93
|
-
* the caller vouches for
|
|
94
|
-
* excluded from the
|
|
101
|
+
* the caller vouches for beyond the derived set (a recovery registry's
|
|
102
|
+
* update-key hashes, a ladder's own rung hashes), excluded from the
|
|
103
|
+
* staged-hash attribution alongside it
|
|
95
104
|
* @returns {Promise<object>} the `updateDID` field bundle
|
|
96
105
|
*/
|
|
97
106
|
export declare function clientRemovalFields({ published, target, knownLatentHashes }: {
|
|
@@ -174,12 +183,9 @@ export declare function clientRemovalFields({ published, target, knownLatentHash
|
|
|
174
183
|
* the caller vouches for (the recovery registry's update-key hashes),
|
|
175
184
|
* excluded from the staged-hash attribution
|
|
176
185
|
* @param [options.expectedDid] {string} the account DID the log must resolve
|
|
177
|
-
* to, from the caller's stored account pointer
|
|
178
|
-
*
|
|
179
|
-
*
|
|
180
|
-
* what this entry publishes
|
|
181
|
-
* @param [options.logId] {string} the account log's pin slot; required
|
|
182
|
-
* whenever a `pinStore` is supplied
|
|
186
|
+
* to, from the caller's stored account pointer. The read is checked against
|
|
187
|
+
* the store's own chain-head pin, which advances to what this entry
|
|
188
|
+
* publishes
|
|
183
189
|
* @returns {Promise<{ did: string, doc: DIDDoc, log: DIDLog }>} the
|
|
184
190
|
* account's DID, its resolved document AFTER the edit -- what the roster
|
|
185
191
|
* rotation that follows resolves its remaining recipients from, so the
|
|
@@ -196,8 +202,6 @@ export declare function revokeWebvhClient(options: {
|
|
|
196
202
|
revokedClient: RevokedClientKeys;
|
|
197
203
|
knownLatentHashes?: string[];
|
|
198
204
|
expectedDid?: string;
|
|
199
|
-
pinStore?: ResourceLogPinStore;
|
|
200
|
-
logId?: string;
|
|
201
205
|
}): Promise<{
|
|
202
206
|
did: string;
|
|
203
207
|
doc: DIDDoc;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"revokeClient.d.ts","sourceRoot":"","sources":["../../src/webvh/revokeClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"revokeClient.d.ts","sourceRoot":"","sources":["../../src/webvh/revokeClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,22 +30,32 @@
|
|
|
30
30
|
* Two shapes commit more than the staged hash in one entry: a recovery
|
|
31
31
|
* continuation (the replacement code's latent hash rides beside it) and a
|
|
32
32
|
* standing credential's reveal-and-commit self-enrollment (the ladder's
|
|
33
|
-
* next-rung hash does). The
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
33
|
+
* next-rung hash does). The removal first disambiguates by excluding the
|
|
34
|
+
* latent commitments of every standing credential, derived from the log
|
|
35
|
+
* itself (`standingCredentialLatentHashes`: each credential anchored at its
|
|
36
|
+
* bind entry and its ladder walked); the caller may vouch for more
|
|
37
|
+
* (`knownLatentHashes`, a recovery registry's hashes), which are unioned in
|
|
38
|
+
* and cross-checked against the derivation -- a vouched hash the walk did
|
|
39
|
+
* not claim, or a standing credential the walk could not read, is logged
|
|
40
|
+
* rather than silently read as "no latent hashes". The derived set never
|
|
41
|
+
* removes the candidate the decision-0007 position names, since the seedless
|
|
42
|
+
* walk can over-claim a torn self-enrollment's orphans. When more than
|
|
43
|
+
* one candidate still survives, the append-order convention of decision 0007
|
|
44
|
+
* resolves it positionally -- the staged hash is the addition immediately
|
|
45
|
+
* AFTER the revoked client's update-key hash in the entry's `nextKeyHashes`
|
|
46
|
+
* append order (the next-rung hash is last) -- and only a residue position
|
|
47
|
+
* cannot resolve either refuses loudly rather than guessing
|
|
48
|
+
* ({@link StagedCommitmentAmbiguousError}): removing a wrong hash would either
|
|
49
|
+
* leave the revoked client re-enrollable or brick another party's standing
|
|
50
|
+
* commitment.
|
|
43
51
|
*/
|
|
44
52
|
import { deriveNextKeyHash } from '@interop/did-method-webvh';
|
|
53
|
+
import { standingCredentialLatentHashes } from '../clientAnnex/ladder.js';
|
|
54
|
+
import { log as logger } from '../log.js';
|
|
45
55
|
import { relationIds } from '../resourceLog/document.js';
|
|
46
|
-
import { signAccountEntry } from './accountEntry.js';
|
|
56
|
+
import { concludeUnchangedAccountEntry, signAccountEntry } from './accountEntry.js';
|
|
47
57
|
import { preEntryProjectionPublisher } from './didWebProjection.js';
|
|
48
|
-
import {
|
|
58
|
+
import { effectiveParameters, updateKeyMultibase, withLogConflictRetry } from './didWebvh.js';
|
|
49
59
|
import { attributeClientUpdateKey, listEnrolledWebvhClients, markedKeyAgreementMultibases } from './listClients.js';
|
|
50
60
|
/**
|
|
51
61
|
* Thrown when the log attribution cannot isolate the revoked client's staged
|
|
@@ -85,39 +95,56 @@ export class StagedCommitmentAmbiguousError extends Error {
|
|
|
85
95
|
* @param options.revokedUpdateKey {string} the revoked client's active
|
|
86
96
|
* update-key multibase
|
|
87
97
|
* @param options.knownLatentHashes {string[]} standing latent commitments
|
|
88
|
-
* the caller
|
|
98
|
+
* the caller vouches for (recovery-code update-key hashes), always excluded
|
|
99
|
+
* @param [options.derivedLatentHashes] {string[]} standing latent
|
|
100
|
+
* commitments a log walk claimed for the standing credentials. Excluded
|
|
101
|
+
* too, EXCEPT the hash the decision-0007 position names as the client's
|
|
102
|
+
* staged hash: the seedless walk can over-claim a torn self-enrollment's
|
|
103
|
+
* orphan hashes as rungs, and an exclusion that ate the positional answer
|
|
104
|
+
* would leave the client's staged commitment standing as a re-seizure
|
|
105
|
+
* credential, silently
|
|
106
|
+
* @param [options.params] {Array} the log's per-entry effective parameters,
|
|
107
|
+
* when the caller already computed them (a whole-roster walk does it once
|
|
108
|
+
* rather than once per client); derived from `log` otherwise
|
|
89
109
|
* @returns {Promise<string | undefined>}
|
|
90
110
|
*/
|
|
91
|
-
async function attributeStagedHash({ log, revokedUpdateKey, knownLatentHashes }) {
|
|
111
|
+
async function attributeStagedHash({ log, revokedUpdateKey, knownLatentHashes, derivedLatentHashes = [], params = effectiveParameters(log) }) {
|
|
92
112
|
const revokedHash = await deriveNextKeyHash(revokedUpdateKey);
|
|
93
|
-
const params = effectiveParameters(log);
|
|
94
113
|
// Filtering the entry's own nextKeyHashes preserves its append order, which
|
|
95
|
-
// the positional
|
|
114
|
+
// the positional rule below relies on (decision 0007).
|
|
96
115
|
const orderedAdded = (index) => {
|
|
97
116
|
const previous = new Set(index > 0 ? params[index - 1].nextKeyHashes : []);
|
|
98
117
|
return params[index].nextKeyHashes.filter(hash => !previous.has(hash));
|
|
99
118
|
};
|
|
100
|
-
|
|
101
|
-
|
|
119
|
+
// The decision-0007 position: the staged hash is the addition immediately
|
|
120
|
+
// AFTER the revoked client's update-key hash in the entry's append order
|
|
121
|
+
// (the ladder's next-rung hash is last). Undefined when the update-key hash
|
|
122
|
+
// is not among the entry's additions.
|
|
123
|
+
const positionalSuccessor = (index) => {
|
|
124
|
+
const additions = orderedAdded(index);
|
|
125
|
+
const anchor = additions.indexOf(revokedHash);
|
|
126
|
+
return anchor === -1 ? undefined : additions[anchor + 1];
|
|
127
|
+
};
|
|
128
|
+
const prune = (index) => {
|
|
129
|
+
const candidates = new Set(orderedAdded(index));
|
|
102
130
|
candidates.delete(revokedHash);
|
|
103
131
|
for (const hash of knownLatentHashes) {
|
|
104
132
|
candidates.delete(hash);
|
|
105
133
|
}
|
|
134
|
+
const successor = positionalSuccessor(index);
|
|
135
|
+
for (const hash of derivedLatentHashes) {
|
|
136
|
+
if (hash !== successor) {
|
|
137
|
+
candidates.delete(hash);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
106
140
|
return candidates;
|
|
107
141
|
};
|
|
108
|
-
// The
|
|
109
|
-
//
|
|
110
|
-
//
|
|
111
|
-
//
|
|
112
|
-
// stands -- when the update-key hash is not among the entry's additions, or
|
|
113
|
-
// its successor is not a surviving candidate.
|
|
142
|
+
// The positional rule, applied only when the prune leaves more than one
|
|
143
|
+
// candidate. Resolves undefined -- the ambiguity refusal stands -- when the
|
|
144
|
+
// update-key hash is not among the entry's additions, or its successor is
|
|
145
|
+
// not a surviving candidate.
|
|
114
146
|
const stagedByPosition = (index, candidates) => {
|
|
115
|
-
const
|
|
116
|
-
const anchor = additions.indexOf(revokedHash);
|
|
117
|
-
if (anchor === -1) {
|
|
118
|
-
return undefined;
|
|
119
|
-
}
|
|
120
|
-
const successor = additions[anchor + 1];
|
|
147
|
+
const successor = positionalSuccessor(index);
|
|
121
148
|
return successor !== undefined && candidates.has(successor)
|
|
122
149
|
? successor
|
|
123
150
|
: undefined;
|
|
@@ -140,7 +167,7 @@ async function attributeStagedHash({ log, revokedUpdateKey, knownLatentHashes })
|
|
|
140
167
|
// reveals the new active key (genesis likewise commits both of its hashes
|
|
141
168
|
// in entry one), so the reveal entry's own additions are tried first. An
|
|
142
169
|
// enrollment add or a recovery add-and-retire adds no hash at the reveal.
|
|
143
|
-
const atReveal = prune(
|
|
170
|
+
const atReveal = prune(revealIndex);
|
|
144
171
|
if (atReveal.size === 1) {
|
|
145
172
|
return [...atReveal][0];
|
|
146
173
|
}
|
|
@@ -166,7 +193,7 @@ async function attributeStagedHash({ log, revokedUpdateKey, knownLatentHashes })
|
|
|
166
193
|
if (commitIndex === -1) {
|
|
167
194
|
return undefined;
|
|
168
195
|
}
|
|
169
|
-
const atCommit = prune(
|
|
196
|
+
const atCommit = prune(commitIndex);
|
|
170
197
|
if (atCommit.size > 1) {
|
|
171
198
|
const positional = stagedByPosition(commitIndex, atCommit);
|
|
172
199
|
if (positional !== undefined) {
|
|
@@ -289,6 +316,39 @@ export async function clientRemovalTarget({ published, client }) {
|
|
|
289
316
|
present: vmPresent || keyPresent || hashPresent
|
|
290
317
|
};
|
|
291
318
|
}
|
|
319
|
+
/**
|
|
320
|
+
* The latent commitments a staged-hash attribution excludes: every standing
|
|
321
|
+
* credential's committed rung hashes, derived from the log, beside what the
|
|
322
|
+
* caller vouches for. The two are cross-checked rather than trusted blind. A
|
|
323
|
+
* credential whose walk refused is logged, since its hashes are then covered
|
|
324
|
+
* only by the caller's list or by the positional rule; a vouched hash the
|
|
325
|
+
* walk did not claim is logged too, since it is either such a credential's or
|
|
326
|
+
* a stale registry entry's. Both are routine on some accounts (a ladder-signed
|
|
327
|
+
* enrollment leaves its credential's walk refusing for good, and a credential
|
|
328
|
+
* a recovery's add-and-retire entry introduced has no anchor), so they are
|
|
329
|
+
* informational -- the attribution still refuses on its own when the residue
|
|
330
|
+
* is ambiguous.
|
|
331
|
+
*
|
|
332
|
+
* @param options {object}
|
|
333
|
+
* @param options.log {DIDLog}
|
|
334
|
+
* @param options.vouched {string[]} the caller's `knownLatentHashes`
|
|
335
|
+
* @returns {Promise<{ vouched: string[], derived: string[] }>}
|
|
336
|
+
*/
|
|
337
|
+
async function latentHashesToExclude({ log, vouched }) {
|
|
338
|
+
const derived = await standingCredentialLatentHashes({ log });
|
|
339
|
+
const claimed = new Set(derived.hashes);
|
|
340
|
+
if (derived.unclaimedCredentialVmIds.length > 0) {
|
|
341
|
+
logger.info('Client removal: the latent commitments of some standing credentials ' +
|
|
342
|
+
'could not be read off the log; their rungs are excluded from the ' +
|
|
343
|
+
'staged-hash attribution only where the caller vouched for them', { credentialVmIds: derived.unclaimedCredentialVmIds });
|
|
344
|
+
}
|
|
345
|
+
const unattributed = vouched.filter(hash => !claimed.has(hash));
|
|
346
|
+
if (unattributed.length > 0) {
|
|
347
|
+
logger.info('Client removal: the caller vouched for latent commitments the log ' +
|
|
348
|
+
'walk did not claim for any standing credential', { hashes: unattributed });
|
|
349
|
+
}
|
|
350
|
+
return { vouched, derived: derived.hashes };
|
|
351
|
+
}
|
|
292
352
|
/**
|
|
293
353
|
* Builds the removal entry's document and parameter fields from a computed
|
|
294
354
|
* target: the client's verification methods out of the document and all five
|
|
@@ -299,12 +359,22 @@ export async function clientRemovalTarget({ published, client }) {
|
|
|
299
359
|
* these to `updateDID` beside its own signer -- an enrolled client's update
|
|
300
360
|
* key for a revocation, a revealed ladder rung for a forget.
|
|
301
361
|
*
|
|
362
|
+
* The latent commitments excluded from that attribution are derived here
|
|
363
|
+
* from the log (`standingCredentialLatentHashes`), so no caller has to know
|
|
364
|
+
* the account's standing credentials to remove a client correctly; a caller's
|
|
365
|
+
* own list is excluded beside them as a cross-check and vouches for what the
|
|
366
|
+
* walk could not read (a credential an earlier recovery's add-and-retire
|
|
367
|
+
* entry introduced has no anchor, and a registry still names its hash). The
|
|
368
|
+
* derived set never overrides the decision-0007 position, so a walk that
|
|
369
|
+
* over-claimed cannot leave the client's own staged hash standing.
|
|
370
|
+
*
|
|
302
371
|
* @param options {object}
|
|
303
372
|
* @param options.published {PublishedWebvhLog}
|
|
304
373
|
* @param options.target {ClientRemovalTarget}
|
|
305
374
|
* @param [options.knownLatentHashes] {string[]} standing latent commitments
|
|
306
|
-
* the caller vouches for
|
|
307
|
-
* excluded from the
|
|
375
|
+
* the caller vouches for beyond the derived set (a recovery registry's
|
|
376
|
+
* update-key hashes, a ladder's own rung hashes), excluded from the
|
|
377
|
+
* staged-hash attribution alongside it
|
|
308
378
|
* @returns {Promise<object>} the `updateDID` field bundle
|
|
309
379
|
*/
|
|
310
380
|
export async function clientRemovalFields({ published, target, knownLatentHashes = [] }) {
|
|
@@ -313,13 +383,19 @@ export async function clientRemovalFields({ published, target, knownLatentHashes
|
|
|
313
383
|
// The removed client's staged commitment, recovered from the log while the
|
|
314
384
|
// log still shows the enrollment (attribution needs the standing entries,
|
|
315
385
|
// so this runs before the removal entry is built).
|
|
316
|
-
|
|
317
|
-
|
|
386
|
+
let stagedHash;
|
|
387
|
+
if (target.keyPresent) {
|
|
388
|
+
const latent = await latentHashesToExclude({
|
|
389
|
+
log: published.log,
|
|
390
|
+
vouched: knownLatentHashes
|
|
391
|
+
});
|
|
392
|
+
stagedHash = await attributeStagedHash({
|
|
318
393
|
log: published.log,
|
|
319
394
|
revokedUpdateKey: removedUpdateKey,
|
|
320
|
-
knownLatentHashes
|
|
321
|
-
|
|
322
|
-
|
|
395
|
+
knownLatentHashes: latent.vouched,
|
|
396
|
+
derivedLatentHashes: latent.derived
|
|
397
|
+
});
|
|
398
|
+
}
|
|
323
399
|
const removedHashes = new Set([target.removedHash, stagedHash].filter((hash) => hash !== undefined));
|
|
324
400
|
const removedVmIds = new Set([signingVmId, ...keyAgreementVmIds]);
|
|
325
401
|
const existingMethods = (doc.verificationMethod ?? []);
|
|
@@ -400,12 +476,9 @@ export async function clientRemovalFields({ published, target, knownLatentHashes
|
|
|
400
476
|
* the caller vouches for (the recovery registry's update-key hashes),
|
|
401
477
|
* excluded from the staged-hash attribution
|
|
402
478
|
* @param [options.expectedDid] {string} the account DID the log must resolve
|
|
403
|
-
* to, from the caller's stored account pointer
|
|
404
|
-
*
|
|
405
|
-
*
|
|
406
|
-
* what this entry publishes
|
|
407
|
-
* @param [options.logId] {string} the account log's pin slot; required
|
|
408
|
-
* whenever a `pinStore` is supplied
|
|
479
|
+
* to, from the caller's stored account pointer. The read is checked against
|
|
480
|
+
* the store's own chain-head pin, which advances to what this entry
|
|
481
|
+
* publishes
|
|
409
482
|
* @returns {Promise<{ did: string, doc: DIDDoc, log: DIDLog }>} the
|
|
410
483
|
* account's DID, its resolved document AFTER the edit -- what the roster
|
|
411
484
|
* rotation that follows resolves its remaining recipients from, so the
|
|
@@ -424,14 +497,12 @@ export async function revokeWebvhClient(options) {
|
|
|
424
497
|
* @param options {object} see {@link revokeWebvhClient}
|
|
425
498
|
* @returns {Promise<{ did: string, doc: DIDDoc, log: DIDLog }>}
|
|
426
499
|
*/
|
|
427
|
-
async function revokeWebvhClientOnce({ idStore, signer, projectionStore, revokedClient, knownLatentHashes = [], expectedDid
|
|
500
|
+
async function revokeWebvhClientOnce({ idStore, signer, projectionStore, revokedClient, knownLatentHashes = [], expectedDid }) {
|
|
428
501
|
let concludedHead;
|
|
429
502
|
const outcome = await signAccountEntry({
|
|
430
503
|
idStore,
|
|
431
504
|
signer,
|
|
432
505
|
...(expectedDid !== undefined ? { expectedDid } : {}),
|
|
433
|
-
...(pinStore ? { pinStore } : {}),
|
|
434
|
-
...(logId !== undefined ? { logId } : {}),
|
|
435
506
|
missingMessage: 'did:webvh: did.jsonl is missing; nothing to revoke from.',
|
|
436
507
|
verb: 'revoking a client',
|
|
437
508
|
// The post-removal projection, published while the caller's store can
|
|
@@ -466,13 +537,11 @@ async function revokeWebvhClientOnce({ idStore, signer, projectionStore, revoked
|
|
|
466
537
|
// left did.json lagging the log. Healable on the client arm, which
|
|
467
538
|
// invokes as the controller; a lag left by a ladder-signed entry is
|
|
468
539
|
// mended by `ensureDidWebProjection` instead.
|
|
469
|
-
concludedHead =
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
}
|
|
475
|
-
: { did: published.did, doc: published.doc, log: published.log };
|
|
540
|
+
concludedHead = await concludeUnchangedAccountEntry({
|
|
541
|
+
idStore,
|
|
542
|
+
signer,
|
|
543
|
+
published
|
|
544
|
+
});
|
|
476
545
|
return undefined;
|
|
477
546
|
}
|
|
478
547
|
return clientRemovalFields({
|
|
@@ -536,6 +605,9 @@ export async function survivingClientKeyProtection({ log, retiredVmIds = [], kno
|
|
|
536
605
|
}
|
|
537
606
|
const did = log[log.length - 1].state.id;
|
|
538
607
|
const retired = new Set(retiredVmIds);
|
|
608
|
+
// One walk of the log's parameters for the whole roster: the per-client
|
|
609
|
+
// attribution below reads the same view.
|
|
610
|
+
const params = effectiveParameters(log);
|
|
539
611
|
for (const client of listEnrolledWebvhClients({ log })) {
|
|
540
612
|
const retiredHere = client.keyAgreementKeyMultibases.some(multibase => retired.has(`${did}#${multibase}`));
|
|
541
613
|
if (retiredHere) {
|
|
@@ -553,7 +625,8 @@ export async function survivingClientKeyProtection({ log, retiredVmIds = [], kno
|
|
|
553
625
|
const staged = await attributeStagedHash({
|
|
554
626
|
log,
|
|
555
627
|
revokedUpdateKey: updateKey,
|
|
556
|
-
knownLatentHashes
|
|
628
|
+
knownLatentHashes,
|
|
629
|
+
params
|
|
557
630
|
});
|
|
558
631
|
if (staged !== undefined) {
|
|
559
632
|
hashes.add(staged);
|
|
@@ -561,7 +634,7 @@ export async function survivingClientKeyProtection({ log, retiredVmIds = [], kno
|
|
|
561
634
|
}
|
|
562
635
|
catch (err) {
|
|
563
636
|
// Ambiguous: protect every candidate rather than none.
|
|
564
|
-
if (err
|
|
637
|
+
if (err?.name !== 'StagedCommitmentAmbiguousError') {
|
|
565
638
|
throw err;
|
|
566
639
|
}
|
|
567
640
|
for (const candidate of err
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"revokeClient.js","sourceRoot":"","sources":["../../src/webvh/revokeClient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"revokeClient.js","sourceRoot":"","sources":["../../src/webvh/revokeClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,9 +2,25 @@ import type { DIDDoc, DIDLog } from '@interop/did-method-webvh';
|
|
|
2
2
|
import type { PublishedWebvhLog } from './didWebvh.js';
|
|
3
3
|
import { type ResourceLogHeadPin, type ResourceLogPinStore } from '@interop/vh-resource-log';
|
|
4
4
|
/**
|
|
5
|
-
* The pin-slot key for
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* The pin-slot key for the did:webvh log (`did.jsonl`) of one collection --
|
|
6
|
+
* the one derivation every log store shares, so the root-invoked and the
|
|
7
|
+
* delegated store families over the same collection check the same slot.
|
|
8
|
+
* Host-free like every pin-slot key.
|
|
9
|
+
*
|
|
10
|
+
* @param options {object}
|
|
11
|
+
* @param options.spaceId {string} the Space holding the collection
|
|
12
|
+
* @param options.collectionId {string} the collection holding the log (the
|
|
13
|
+
* account's `id` collection, or an annex generation's `gen-` collection)
|
|
14
|
+
* @returns {string}
|
|
15
|
+
*/
|
|
16
|
+
export declare function logResourcePinId({ spaceId, collectionId }: {
|
|
17
|
+
spaceId: string;
|
|
18
|
+
collectionId: string;
|
|
19
|
+
}): string;
|
|
20
|
+
/**
|
|
21
|
+
* The pin-slot key for an account's did:webvh log (`id/did.jsonl`) -- what
|
|
22
|
+
* {@link verifyAccountLog}, which fetches by URL and holds no store, derives
|
|
23
|
+
* internally.
|
|
8
24
|
*
|
|
9
25
|
* @param options {object}
|
|
10
26
|
* @param options.spaceId {string} the account's Space id
|
|
@@ -13,6 +29,27 @@ import { type ResourceLogHeadPin, type ResourceLogPinStore } from '@interop/vh-r
|
|
|
13
29
|
export declare function accountLogPinId({ spaceId }: {
|
|
14
30
|
spaceId: string;
|
|
15
31
|
}): string;
|
|
32
|
+
/**
|
|
33
|
+
* The substituted-account refusal on its own: a resolved head that is not the
|
|
34
|
+
* DID the caller expected is refused rather than built on. Stated once so a
|
|
35
|
+
* fresh read and a caller-threaded head refuse identically.
|
|
36
|
+
*
|
|
37
|
+
* A ceremony that takes an already-read head from its caller (the transient
|
|
38
|
+
* visit's one-read composition, where the readiness stage hands its verified
|
|
39
|
+
* head to the enrollment) runs this explicitly: the read that would otherwise
|
|
40
|
+
* have run it never happened, and a head resolving to another DID must not
|
|
41
|
+
* become the entry's basis just because it arrived by parameter.
|
|
42
|
+
*
|
|
43
|
+
* @param options {object}
|
|
44
|
+
* @param options.published {PublishedWebvhLog} the resolved head
|
|
45
|
+
* @param [options.expectedDid] {string} the DID it must resolve to; absent,
|
|
46
|
+
* the head is accepted (the caller discovering the DID from the log itself)
|
|
47
|
+
* @returns {PublishedWebvhLog} the head verbatim
|
|
48
|
+
*/
|
|
49
|
+
export declare function assertPublishedLogDid({ published, expectedDid }: {
|
|
50
|
+
published: PublishedWebvhLog;
|
|
51
|
+
expectedDid?: string;
|
|
52
|
+
}): PublishedWebvhLog;
|
|
16
53
|
/**
|
|
17
54
|
* Thrown when the account has published no DID log at all (the resource is
|
|
18
55
|
* absent). Distinguished from every other failure because it is the one
|
|
@@ -85,7 +122,11 @@ export declare function checkAndAdvanceAccountLogPin({ pinStore, logId, log }: {
|
|
|
85
122
|
* document may treat that reason as a transport hiccup and carry on with what
|
|
86
123
|
* it has. Every other reason is a security signal. No `pinStore`, no
|
|
87
124
|
* continuity check -- the pin lives app-side beside the account-pointer pin,
|
|
88
|
-
* and a caller that has none keeps one-shot verification.
|
|
125
|
+
* and a caller that has none keeps one-shot verification. This is the one
|
|
126
|
+
* reader that takes the pin store as an argument: it fetches by URL and holds
|
|
127
|
+
* no {@link WebvhIdStore}, whose `pin` member is where every ceremony read
|
|
128
|
+
* and publish finds it. A ceremony that holds a store hands this function
|
|
129
|
+
* that store's pin store.
|
|
89
130
|
*
|
|
90
131
|
* @param options {object}
|
|
91
132
|
* @param options.did {string} the account's did:webvh, as the caller's
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verifyLog.d.ts","sourceRoot":"","sources":["../../src/webvh/verifyLog.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAE/D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEtD,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACzB,MAAM,0BAA0B,CAAA;AAEjC;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"verifyLog.d.ts","sourceRoot":"","sources":["../../src/webvh/verifyLog.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAE/D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEtD,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACzB,MAAM,0BAA0B,CAAA;AAEjC;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,OAAO,EACP,YAAY,EACb,EAAE;IACD,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;CACrB,GAAG,MAAM,CAMT;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAExE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qBAAqB,CAAC,EACpC,SAAS,EACT,WAAW,EACZ,EAAE;IACD,SAAS,EAAE,iBAAiB,CAAA;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,GAAG,iBAAiB,CAQpB;AAED;;;;;;GAMG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;gBACnC,OAAO,SAA0C;CAI9D;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,yBAAyB,CAAC,EACxC,GAAG,EACH,GAAG,EACJ,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,kBAAkB,GAAG,IAAI,CAAA;CAC/B,GAAG,kBAAkB,CA4CrB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,4BAA4B,CAAC,EACjD,QAAQ,EACR,KAAK,EACL,GAAG,EACJ,EAAE;IACD,QAAQ,EAAE,mBAAmB,CAAA;IAC7B,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,OAAO,CAAC,IAAI,CAAC,CAQhB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAsB,gBAAgB,CAAC,EACrC,GAAG,EACH,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,SAAS,EACV,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,mBAAmB,CAAA;IAC9B,SAAS,CAAC,EAAE,iBAAiB,CAAA;CAC9B,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAoD9B;AAED;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,aAAa,EAAE,MAAM,EAAE,CAAA;CACxB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,SAAS,EACV,EAAE;IACD,SAAS,EAAE,iBAAiB,CAAA;CAC7B,GAAG,kBAAkB,CAOrB"}
|