@interop/wallet-core 0.61.0 → 0.65.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 +41 -16
- package/dist/clientAnnex/credentialAnchoredGenesis.d.ts +46 -26
- package/dist/clientAnnex/credentialAnchoredGenesis.d.ts.map +1 -1
- package/dist/clientAnnex/credentialAnchoredGenesis.js +91 -39
- package/dist/clientAnnex/credentialAnchoredGenesis.js.map +1 -1
- package/dist/clientAnnex/establish.d.ts +55 -34
- package/dist/clientAnnex/establish.d.ts.map +1 -1
- package/dist/clientAnnex/establish.js +102 -56
- package/dist/clientAnnex/establish.js.map +1 -1
- package/dist/clientAnnex/forget.d.ts +16 -2
- package/dist/clientAnnex/forget.d.ts.map +1 -1
- package/dist/clientAnnex/forget.js +11 -9
- package/dist/clientAnnex/forget.js.map +1 -1
- package/dist/clientAnnex/forgetLast.d.ts +126 -35
- package/dist/clientAnnex/forgetLast.d.ts.map +1 -1
- package/dist/clientAnnex/forgetLast.js +208 -60
- package/dist/clientAnnex/forgetLast.js.map +1 -1
- package/dist/clientAnnex/gc.d.ts +3 -2
- package/dist/clientAnnex/gc.d.ts.map +1 -1
- package/dist/clientAnnex/gc.js +7 -7
- package/dist/clientAnnex/gc.js.map +1 -1
- package/dist/clientAnnex/heal.d.ts +101 -33
- package/dist/clientAnnex/heal.d.ts.map +1 -1
- package/dist/clientAnnex/heal.js +559 -212
- package/dist/clientAnnex/heal.js.map +1 -1
- package/dist/clientAnnex/index.d.ts +21 -5
- package/dist/clientAnnex/index.d.ts.map +1 -1
- package/dist/clientAnnex/index.js +24 -5
- package/dist/clientAnnex/index.js.map +1 -1
- package/dist/clientAnnex/ladder.d.ts +304 -18
- package/dist/clientAnnex/ladder.d.ts.map +1 -1
- package/dist/clientAnnex/ladder.js +942 -64
- package/dist/clientAnnex/ladder.js.map +1 -1
- package/dist/clientAnnex/ladderAnchored.d.ts +261 -28
- package/dist/clientAnnex/ladderAnchored.d.ts.map +1 -1
- package/dist/clientAnnex/ladderAnchored.js +521 -295
- package/dist/clientAnnex/ladderAnchored.js.map +1 -1
- package/dist/clientAnnex/log.d.ts +193 -38
- package/dist/clientAnnex/log.d.ts.map +1 -1
- package/dist/clientAnnex/log.js +445 -190
- package/dist/clientAnnex/log.js.map +1 -1
- package/dist/clientAnnex/mend.d.ts +12 -6
- package/dist/clientAnnex/mend.d.ts.map +1 -1
- package/dist/clientAnnex/mend.js +26 -12
- package/dist/clientAnnex/mend.js.map +1 -1
- package/dist/clientAnnex/recoveryLadderAnchored.d.ts +38 -11
- package/dist/clientAnnex/recoveryLadderAnchored.d.ts.map +1 -1
- package/dist/clientAnnex/recoveryLadderAnchored.js +177 -55
- package/dist/clientAnnex/recoveryLadderAnchored.js.map +1 -1
- package/dist/clientAnnex/spaceCapability.d.ts +123 -0
- package/dist/clientAnnex/spaceCapability.d.ts.map +1 -0
- package/dist/clientAnnex/spaceCapability.js +152 -0
- package/dist/clientAnnex/spaceCapability.js.map +1 -0
- package/dist/clientAnnex/stages.d.ts +63 -0
- package/dist/clientAnnex/stages.d.ts.map +1 -0
- package/dist/clientAnnex/stages.js +64 -0
- package/dist/clientAnnex/stages.js.map +1 -0
- package/dist/clientAnnex/zcap.d.ts +1 -1
- package/dist/clientAnnex/zcap.d.ts.map +1 -1
- package/dist/clientAnnex/zcap.js +42 -35
- package/dist/clientAnnex/zcap.js.map +1 -1
- package/dist/clients/policy.d.ts +15 -1
- package/dist/clients/policy.d.ts.map +1 -1
- package/dist/clients/policy.js +12 -6
- package/dist/clients/policy.js.map +1 -1
- package/dist/clients/revocation.d.ts +18 -10
- package/dist/clients/revocation.d.ts.map +1 -1
- package/dist/clients/revocation.js +13 -5
- package/dist/clients/revocation.js.map +1 -1
- package/dist/clients/rosterPolicy.d.ts +10 -2
- package/dist/clients/rosterPolicy.d.ts.map +1 -1
- package/dist/clients/rosterPolicy.js +41 -24
- package/dist/clients/rosterPolicy.js.map +1 -1
- package/dist/descriptors/acquire.d.ts.map +1 -1
- package/dist/descriptors/acquire.js +6 -23
- package/dist/descriptors/acquire.js.map +1 -1
- package/dist/descriptors/cipher.d.ts.map +1 -1
- package/dist/descriptors/cipher.js +5 -0
- package/dist/descriptors/cipher.js.map +1 -1
- package/dist/descriptors/errors.d.ts +43 -0
- package/dist/descriptors/errors.d.ts.map +1 -0
- package/dist/descriptors/errors.js +45 -0
- package/dist/descriptors/errors.js.map +1 -0
- package/dist/descriptors/index.d.ts +5 -0
- package/dist/descriptors/index.d.ts.map +1 -1
- package/dist/descriptors/index.js +5 -0
- package/dist/descriptors/index.js.map +1 -1
- package/dist/enrollment/enrollment.d.ts +37 -10
- package/dist/enrollment/enrollment.d.ts.map +1 -1
- package/dist/enrollment/enrollment.js +52 -15
- package/dist/enrollment/enrollment.js.map +1 -1
- package/dist/genesis/accountGenesis.d.ts +42 -11
- package/dist/genesis/accountGenesis.d.ts.map +1 -1
- package/dist/genesis/accountGenesis.js +80 -22
- package/dist/genesis/accountGenesis.js.map +1 -1
- package/dist/genesis/index.d.ts +3 -1
- package/dist/genesis/index.d.ts.map +1 -1
- package/dist/genesis/index.js +3 -1
- package/dist/genesis/index.js.map +1 -1
- package/dist/identity/agents.d.ts +17 -1
- package/dist/identity/agents.d.ts.map +1 -1
- package/dist/identity/agents.js +24 -8
- package/dist/identity/agents.js.map +1 -1
- package/dist/identity/index.d.ts +3 -1
- package/dist/identity/index.d.ts.map +1 -1
- package/dist/identity/index.js +3 -1
- package/dist/identity/index.js.map +1 -1
- package/dist/index.d.ts +6 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -3
- package/dist/index.js.map +1 -1
- package/dist/keyring/index.d.ts +2 -1
- package/dist/keyring/index.d.ts.map +1 -1
- package/dist/keyring/index.js +2 -1
- package/dist/keyring/index.js.map +1 -1
- package/dist/keyring/record.d.ts.map +1 -1
- package/dist/keyring/record.js +3 -6
- package/dist/keyring/record.js.map +1 -1
- package/dist/keyring/unlockSpace.d.ts +14 -5
- package/dist/keyring/unlockSpace.d.ts.map +1 -1
- package/dist/keyring/unlockSpace.js +31 -36
- package/dist/keyring/unlockSpace.js.map +1 -1
- package/dist/keys/index.d.ts +10 -6
- package/dist/keys/index.d.ts.map +1 -1
- package/dist/keys/index.js +9 -5
- package/dist/keys/index.js.map +1 -1
- package/dist/keys/rosterLogStore.d.ts +12 -11
- package/dist/keys/rosterLogStore.d.ts.map +1 -1
- package/dist/keys/rosterLogStore.js +15 -13
- package/dist/keys/rosterLogStore.js.map +1 -1
- package/dist/keys/rosterStore.d.ts +3 -6
- package/dist/keys/rosterStore.d.ts.map +1 -1
- package/dist/keys/rosterStore.js +10 -9
- package/dist/keys/rosterStore.js.map +1 -1
- package/dist/keys/spaceEpochs.d.ts.map +1 -1
- package/dist/keys/spaceEpochs.js +2 -3
- package/dist/keys/spaceEpochs.js.map +1 -1
- package/dist/keys/userKeyRoster.d.ts +89 -9
- package/dist/keys/userKeyRoster.d.ts.map +1 -1
- package/dist/keys/userKeyRoster.js +262 -19
- package/dist/keys/userKeyRoster.js.map +1 -1
- package/dist/keys/userKeyRosterCascade.d.ts +7 -6
- package/dist/keys/userKeyRosterCascade.d.ts.map +1 -1
- package/dist/keys/userKeyRosterCascade.js +7 -6
- package/dist/keys/userKeyRosterCascade.js.map +1 -1
- package/dist/keys/wasLabelsStore.d.ts +9 -2
- package/dist/keys/wasLabelsStore.d.ts.map +1 -1
- package/dist/keys/wasLabelsStore.js +14 -6
- package/dist/keys/wasLabelsStore.js.map +1 -1
- package/dist/log.d.ts +7 -2
- package/dist/log.d.ts.map +1 -1
- package/dist/log.js +6 -1
- package/dist/log.js.map +1 -1
- 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/recoveryCode.d.ts +27 -7
- package/dist/recovery/recoveryCode.d.ts.map +1 -1
- package/dist/recovery/recoveryCode.js +18 -6
- package/dist/recovery/recoveryCode.js.map +1 -1
- package/dist/recovery/recoveryDelegation.d.ts +4 -1
- package/dist/recovery/recoveryDelegation.d.ts.map +1 -1
- package/dist/recovery/recoveryDelegation.js +25 -36
- package/dist/recovery/recoveryDelegation.js.map +1 -1
- package/dist/recovery/recoveryWebvh.d.ts +117 -65
- package/dist/recovery/recoveryWebvh.d.ts.map +1 -1
- package/dist/recovery/recoveryWebvh.js +279 -126
- package/dist/recovery/recoveryWebvh.js.map +1 -1
- package/dist/request/classify.d.ts +32 -8
- package/dist/request/classify.d.ts.map +1 -1
- package/dist/request/classify.js +39 -14
- package/dist/request/classify.js.map +1 -1
- package/dist/request/ephemeralExchange.d.ts +1 -6
- package/dist/request/ephemeralExchange.d.ts.map +1 -1
- package/dist/request/ephemeralExchange.js.map +1 -1
- package/dist/request/onboarding.d.ts.map +1 -1
- package/dist/request/onboarding.js +2 -2
- package/dist/request/onboarding.js.map +1 -1
- package/dist/request/parse.d.ts.map +1 -1
- package/dist/request/parse.js +2 -3
- package/dist/request/parse.js.map +1 -1
- package/dist/resourceLog/controller.d.ts +34 -12
- package/dist/resourceLog/controller.d.ts.map +1 -1
- package/dist/resourceLog/controller.js +79 -86
- package/dist/resourceLog/controller.js.map +1 -1
- package/dist/resourceLog/document.d.ts +182 -0
- package/dist/resourceLog/document.d.ts.map +1 -0
- package/dist/resourceLog/document.js +159 -0
- package/dist/resourceLog/document.js.map +1 -0
- package/dist/resourceLog/errors.d.ts +47 -8
- package/dist/resourceLog/errors.d.ts.map +1 -1
- package/dist/resourceLog/errors.js +54 -8
- package/dist/resourceLog/errors.js.map +1 -1
- package/dist/resourceLog/index.d.ts +7 -3
- package/dist/resourceLog/index.d.ts.map +1 -1
- package/dist/resourceLog/index.js +7 -3
- package/dist/resourceLog/index.js.map +1 -1
- package/dist/resourceLog/ladderRungs.d.ts +35 -0
- package/dist/resourceLog/ladderRungs.d.ts.map +1 -0
- package/dist/resourceLog/ladderRungs.js +352 -0
- package/dist/resourceLog/ladderRungs.js.map +1 -0
- package/dist/resourceLog/license.d.ts +42 -17
- package/dist/resourceLog/license.d.ts.map +1 -1
- package/dist/resourceLog/license.js +38 -24
- package/dist/resourceLog/license.js.map +1 -1
- package/dist/space/activity.d.ts +15 -15
- package/dist/space/activity.d.ts.map +1 -1
- package/dist/space/activity.js +15 -15
- package/dist/space/activity.js.map +1 -1
- package/dist/space/collections.d.ts +11 -0
- package/dist/space/collections.d.ts.map +1 -1
- package/dist/space/collections.js +13 -0
- package/dist/space/collections.js.map +1 -1
- package/dist/space/deleteSpace.d.ts +28 -0
- package/dist/space/deleteSpace.d.ts.map +1 -0
- package/dist/space/deleteSpace.js +44 -0
- package/dist/space/deleteSpace.js.map +1 -0
- package/dist/space/errors.d.ts.map +1 -1
- package/dist/space/errors.js +0 -1
- package/dist/space/errors.js.map +1 -1
- package/dist/space/index.d.ts +6 -0
- package/dist/space/index.d.ts.map +1 -1
- package/dist/space/index.js +6 -0
- package/dist/space/index.js.map +1 -1
- package/dist/space/plaintextCollection.d.ts +43 -0
- package/dist/space/plaintextCollection.d.ts.map +1 -0
- package/dist/space/plaintextCollection.js +17 -0
- package/dist/space/plaintextCollection.js.map +1 -0
- package/dist/stages.d.ts +23 -0
- package/dist/stages.d.ts.map +1 -0
- package/dist/stages.js +23 -0
- package/dist/stages.js.map +1 -0
- package/dist/sync/index.d.ts +7 -0
- package/dist/sync/index.d.ts.map +1 -1
- package/dist/sync/index.js +7 -0
- package/dist/sync/index.js.map +1 -1
- package/dist/sync/push.js +4 -4
- package/dist/sync/push.js.map +1 -1
- package/dist/sync/remint.js +2 -2
- package/dist/sync/remint.js.map +1 -1
- package/dist/sync/types.d.ts +41 -1
- package/dist/sync/types.d.ts.map +1 -1
- package/dist/sync/types.js +47 -1
- package/dist/sync/types.js.map +1 -1
- package/dist/unlock/index.d.ts +6 -2
- package/dist/unlock/index.d.ts.map +1 -1
- package/dist/unlock/index.js +5 -1
- package/dist/unlock/index.js.map +1 -1
- package/dist/unlock/retire.d.ts +95 -14
- package/dist/unlock/retire.d.ts.map +1 -1
- package/dist/unlock/retire.js +102 -10
- package/dist/unlock/retire.js.map +1 -1
- package/dist/unlock/standingClient.d.ts.map +1 -1
- package/dist/unlock/standingClient.js +5 -1
- package/dist/unlock/standingClient.js.map +1 -1
- package/dist/unlock/standingWebvh.d.ts +341 -49
- package/dist/unlock/standingWebvh.d.ts.map +1 -1
- package/dist/unlock/standingWebvh.js +608 -164
- package/dist/unlock/standingWebvh.js.map +1 -1
- package/dist/webvh/accountEntry.d.ts +146 -0
- package/dist/webvh/accountEntry.d.ts.map +1 -0
- package/dist/webvh/accountEntry.js +239 -0
- package/dist/webvh/accountEntry.js.map +1 -0
- package/dist/webvh/didWeb.d.ts +12 -7
- package/dist/webvh/didWeb.d.ts.map +1 -1
- package/dist/webvh/didWeb.js +2 -2
- package/dist/webvh/didWeb.js.map +1 -1
- package/dist/webvh/didWebProjection.d.ts +164 -0
- package/dist/webvh/didWebProjection.d.ts.map +1 -0
- package/dist/webvh/didWebProjection.js +230 -0
- package/dist/webvh/didWebProjection.js.map +1 -0
- package/dist/webvh/didWebvh.d.ts +278 -138
- package/dist/webvh/didWebvh.d.ts.map +1 -1
- package/dist/webvh/didWebvh.js +314 -345
- package/dist/webvh/didWebvh.js.map +1 -1
- package/dist/webvh/enrollClient.d.ts +65 -0
- package/dist/webvh/enrollClient.d.ts.map +1 -0
- package/dist/webvh/enrollClient.js +172 -0
- package/dist/webvh/enrollClient.js.map +1 -0
- package/dist/webvh/index.d.ts +37 -12
- package/dist/webvh/index.d.ts.map +1 -1
- package/dist/webvh/index.js +33 -10
- package/dist/webvh/index.js.map +1 -1
- package/dist/webvh/listClients.d.ts +1 -33
- package/dist/webvh/listClients.d.ts.map +1 -1
- package/dist/webvh/listClients.js +2 -28
- package/dist/webvh/listClients.js.map +1 -1
- package/dist/webvh/revokeClient.d.ts +89 -11
- package/dist/webvh/revokeClient.d.ts.map +1 -1
- package/dist/webvh/revokeClient.js +182 -47
- package/dist/webvh/revokeClient.js.map +1 -1
- package/dist/webvh/standingZcap.d.ts +61 -14
- package/dist/webvh/standingZcap.d.ts.map +1 -1
- package/dist/webvh/standingZcap.js +91 -0
- package/dist/webvh/standingZcap.js.map +1 -1
- package/dist/webvh/verifyLog.d.ts +59 -5
- package/dist/webvh/verifyLog.d.ts.map +1 -1
- package/dist/webvh/verifyLog.js +76 -11
- package/dist/webvh/verifyLog.js.map +1 -1
- package/dist/webvh/wasIdStore.d.ts +8 -8
- package/dist/webvh/wasIdStore.d.ts.map +1 -1
- package/dist/webvh/wasIdStore.js +39 -14
- package/dist/webvh/wasIdStore.js.map +1 -1
- package/dist/webvh/zcap.d.ts +14 -1
- package/dist/webvh/zcap.d.ts.map +1 -1
- package/dist/webvh/zcap.js +3 -27
- package/dist/webvh/zcap.js.map +1 -1
- package/package.json +5 -5
- package/dist/webvh/keyAgreement.d.ts +0 -72
- package/dist/webvh/keyAgreement.d.ts.map +0 -1
- package/dist/webvh/keyAgreement.js +0 -47
- package/dist/webvh/keyAgreement.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listClients.d.ts","sourceRoot":"","sources":["../../src/webvh/listClients.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"listClients.d.ts","sourceRoot":"","sources":["../../src/webvh/listClients.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAUvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAEtE;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,mBAAmB;IAClC,mBAAmB,EAAE,MAAM,CAAA;IAC3B,yBAAyB,EAAE,MAAM,EAAE,CAAA;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACnC,kBAAkB,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACxE,oBAAoB,CAAC,EAAE,KAAK,CAC1B,MAAM,GAAG;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;KAAE,CACtD,CAAA;CACF;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,EACpC,GAAG,EACJ,EAAE;IACD,GAAG,EAAE,oBAAoB,CAAA;CAC1B,GAAG,GAAG,CAAC,MAAM,CAAC,CAYd;AA+CD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,uBAAuB,CAAC,EACtC,GAAG,EACH,eAAe,EAChB,EAAE;IACD,GAAG,EAAE,oBAAoB,CAAA;IACzB,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB,GAAG,OAAO,CAMV;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,yBAAyB,CAAC,EACxC,GAAG,EACH,mBAAmB,EACpB,EAAE;IACD,GAAG,EAAE,oBAAoB,CAAA;IACzB,mBAAmB,EAAE,MAAM,CAAA;CAC5B,GAAG,KAAK,CAAC;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAKtD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,4BAA4B,CAAC,EAC3C,GAAG,EACH,mBAAmB,EACpB,EAAE;IACD,GAAG,EAAE,oBAAoB,CAAA;IACzB,mBAAmB,EAAE,MAAM,CAAA;CAC5B,GAAG,MAAM,EAAE,CAcX;AAyID;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,GAAG,EACH,mBAAmB,EACpB,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,mBAAmB,EAAE,MAAM,CAAA;CAC5B,GAAG,MAAM,GAAG,SAAS,CAKrB;AA0BD;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,GAAG,EACJ,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,mBAAmB,EAAE,CAmCxB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { vmFragmentOf } from '@interop/vh-resource-log';
|
|
2
|
-
import { clientKeyAgreementController, effectiveParameters
|
|
3
|
-
import { resolvedKeyAgreementMethods } from '
|
|
2
|
+
import { clientKeyAgreementController, effectiveParameters } from './didWebvh.js';
|
|
3
|
+
import { relationIds, resolvedKeyAgreementMethods } from '../resourceLog/document.js';
|
|
4
4
|
/**
|
|
5
5
|
* The key multibases the document currently publishes: every verification
|
|
6
6
|
* method's `publicKeyMultibase`, plus the fragment of its id (for a did:webvh
|
|
@@ -97,32 +97,6 @@ export function delegationKeyInDocument({ doc, delegationKeyId }) {
|
|
|
97
97
|
}
|
|
98
98
|
return delegationRelationMultibases({ doc }).has(multibase);
|
|
99
99
|
}
|
|
100
|
-
/**
|
|
101
|
-
* The ladder-VM recognition convention: a `capabilityDelegation` member
|
|
102
|
-
* absent from `capabilityInvocation` is a ladder VM -- the stable sibling key
|
|
103
|
-
* a standing credential publishes while the account has no enrolled client
|
|
104
|
-
* (`ladderVerificationMethod` is the one write-side builder). The
|
|
105
|
-
* asymmetry is the convention rather than a marker property because it is
|
|
106
|
-
* what actually carries the authority: zcap's `delegator.id` cannot identify
|
|
107
|
-
* the signer, so a verifier classifies the VM from the resolved document it
|
|
108
|
-
* already holds -- a zero-I/O read -- and the same asymmetry is what keeps
|
|
109
|
-
* the VM structurally out of every client listing (those key on
|
|
110
|
-
* `capabilityInvocation`). An enrolled client publishes its signing key under
|
|
111
|
-
* both relations, so it can never match.
|
|
112
|
-
*
|
|
113
|
-
* Returns every matching verification-method id, in document order: the
|
|
114
|
-
* ordinary shape is one (the minting credential's) or none (any client
|
|
115
|
-
* enrolled), but a stale third-party ladder VM can stand beside the live
|
|
116
|
-
* one, and the first self-enrollment's add entry has to remove them all.
|
|
117
|
-
*
|
|
118
|
-
* @param options {object}
|
|
119
|
-
* @param options.doc {object} a locally verified document
|
|
120
|
-
* @returns {string[]} the ladder VMs' verification-method ids
|
|
121
|
-
*/
|
|
122
|
-
export function ladderVmIds({ doc }) {
|
|
123
|
-
const invocable = new Set(relationIds(doc.capabilityInvocation));
|
|
124
|
-
return relationIds(doc.capabilityDelegation).filter(id => !invocable.has(id));
|
|
125
|
-
}
|
|
126
100
|
/**
|
|
127
101
|
* The `keyAgreement` verification methods one client's controller marker
|
|
128
102
|
* claims: the document's resolved key-agreement methods
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listClients.js","sourceRoot":"","sources":["../../src/webvh/listClients.ts"],"names":[],"mappings":"AA0DA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,
|
|
1
|
+
{"version":3,"file":"listClients.js","sourceRoot":"","sources":["../../src/webvh/listClients.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { DIDDoc, DIDLog, VerificationMethod } from '@interop/did-method-webvh';
|
|
2
|
-
import type {
|
|
2
|
+
import type { ResourceLogPinStore } from '@interop/vh-resource-log';
|
|
3
|
+
import type { AccountLogSigner } from './accountEntry.js';
|
|
4
|
+
import type { PublishedWebvhLog, WebvhIdStore } from './didWebvh.js';
|
|
3
5
|
/**
|
|
4
6
|
* The public halves of the client being revoked, as the document and log
|
|
5
7
|
* carry them: its signing-key multibase and its active update key. The
|
|
@@ -119,8 +121,10 @@ export declare function clientRemovalFields({ published, target, knownLatentHash
|
|
|
119
121
|
*
|
|
120
122
|
* Idempotent: a client with no remaining presence (verification methods,
|
|
121
123
|
* update key, commitments all gone) is a no-op on the log (it still republishes
|
|
122
|
-
* `did.json` from the resolved log, healing a torn earlier publish
|
|
123
|
-
*
|
|
124
|
+
* `did.json` from the resolved log, healing a torn earlier publish of this
|
|
125
|
+
* cascade -- the revoking client invokes as the controller, so it may write
|
|
126
|
+
* the projection), so a naive re-run after a mid-cascade crash converges
|
|
127
|
+
* without forking the log.
|
|
124
128
|
*
|
|
125
129
|
* The supplied `updateKeyMultibase` is treated as a snapshot, not as truth: a
|
|
126
130
|
* client that self-rotated between the caller's listing and this call -- or a
|
|
@@ -130,11 +134,19 @@ export declare function clientRemovalFields({ published, target, knownLatentHash
|
|
|
130
134
|
* `updateKeys` would strike nothing out of it and the call would report
|
|
131
135
|
* success over a client that kept full log-update authority.
|
|
132
136
|
*
|
|
133
|
-
* Self-revocation is refused: the entry is signed by
|
|
134
|
-
* update key, and a client that removed its own key could not
|
|
135
|
-
* the removal the resolver will verify (and would strand the
|
|
136
|
-
* follows the document edit). Revoking the last remaining client
|
|
137
|
-
* by the same guard.
|
|
137
|
+
* Self-revocation is refused on the CLIENT arm: the entry is signed by that
|
|
138
|
+
* client's active update key, and a client that removed its own key could not
|
|
139
|
+
* have signed the removal the resolver will verify (and would strand the
|
|
140
|
+
* cascade that follows the document edit). Revoking the last remaining client
|
|
141
|
+
* is refused by the same guard.
|
|
142
|
+
*
|
|
143
|
+
* The LADDER arm has no self. A standing credential's rung signs the removal
|
|
144
|
+
* through the credential's bridge delegation, so any enrolled client may be
|
|
145
|
+
* removed, the last one included: the account then stands ladder-anchored,
|
|
146
|
+
* the shape a credential-anchored signup produces (`decisions/0017`). The
|
|
147
|
+
* entry strikes the attributed staged hash exactly as the client arm does.
|
|
148
|
+
* The `did:web` projection is the ceremony's own pre-entry PUT there, since a
|
|
149
|
+
* ladder-signed entry writes `did.jsonl` alone.
|
|
138
150
|
*
|
|
139
151
|
* The removal entry publishes conditionally on the log this call read, so a
|
|
140
152
|
* concurrent enrollment landing in between is never erased by the revocation
|
|
@@ -143,8 +155,18 @@ export declare function clientRemovalFields({ published, target, knownLatentHash
|
|
|
143
155
|
*
|
|
144
156
|
* @param options {object}
|
|
145
157
|
* @param options.idStore {WebvhIdStore}
|
|
146
|
-
* @param options.
|
|
147
|
-
* own did:webvh update-key seeds
|
|
158
|
+
* @param options.signer {AccountLogSigner} who signs the removal entry: the
|
|
159
|
+
* REVOKING client's own did:webvh update-key seeds, or the acting
|
|
160
|
+
* credential's ladder seed
|
|
161
|
+
* @param [options.projectionStore] {object} an `id`-collection store the
|
|
162
|
+
* caller may write through (a transient session's, bound to its generation
|
|
163
|
+
* delegation; an enrolled client's own root-invoking store). Supplied, the
|
|
164
|
+
* post-removal `did:web` projection is PUT through it immediately BEFORE
|
|
165
|
+
* the removal entry publishes, which is what keeps a ladder-signed removal
|
|
166
|
+
* from leaving `did.json` naming the revoked client. Best-effort: a failed
|
|
167
|
+
* PUT is warned and the removal proceeds. Omitted, the ladder arm leaves
|
|
168
|
+
* the projection to the next visit's `ensureDidWebProjection` and the
|
|
169
|
+
* client arm publishes it after the entry, as before
|
|
148
170
|
* @param options.revokedClient {RevokedClientKeys} the revoked client's
|
|
149
171
|
* public halves; an `updateKeyMultibase` the log does not authorize (stale,
|
|
150
172
|
* or the client's staged key) is re-derived from the log
|
|
@@ -153,6 +175,11 @@ export declare function clientRemovalFields({ published, target, knownLatentHash
|
|
|
153
175
|
* excluded from the staged-hash attribution
|
|
154
176
|
* @param [options.expectedDid] {string} the account DID the log must resolve
|
|
155
177
|
* to, from the caller's stored account pointer
|
|
178
|
+
* @param [options.pinStore] {ResourceLogPinStore} the caller's chain-head
|
|
179
|
+
* pins; the read is checked against the pinned head and the pin advances to
|
|
180
|
+
* what this entry publishes
|
|
181
|
+
* @param [options.logId] {string} the account log's pin slot; required
|
|
182
|
+
* whenever a `pinStore` is supplied
|
|
156
183
|
* @returns {Promise<{ did: string, doc: DIDDoc, log: DIDLog }>} the
|
|
157
184
|
* account's DID, its resolved document AFTER the edit -- what the roster
|
|
158
185
|
* rotation that follows resolves its remaining recipients from, so the
|
|
@@ -164,13 +191,64 @@ export declare function clientRemovalFields({ published, target, knownLatentHash
|
|
|
164
191
|
*/
|
|
165
192
|
export declare function revokeWebvhClient(options: {
|
|
166
193
|
idStore: WebvhIdStore;
|
|
167
|
-
|
|
194
|
+
signer: AccountLogSigner;
|
|
195
|
+
projectionStore?: Pick<WebvhIdStore, 'getIdResourceRaw' | 'putIdResource'>;
|
|
168
196
|
revokedClient: RevokedClientKeys;
|
|
169
197
|
knownLatentHashes?: string[];
|
|
170
198
|
expectedDid?: string;
|
|
199
|
+
pinStore?: ResourceLogPinStore;
|
|
200
|
+
logId?: string;
|
|
171
201
|
}): Promise<{
|
|
172
202
|
did: string;
|
|
173
203
|
doc: DIDDoc;
|
|
174
204
|
log: DIDLog;
|
|
175
205
|
}>;
|
|
206
|
+
/**
|
|
207
|
+
* The update keys and committed hashes that belong to the account's SURVIVING
|
|
208
|
+
* enrolled clients -- what no credential retirement may ever strike, however
|
|
209
|
+
* an attribution walk came by them.
|
|
210
|
+
*
|
|
211
|
+
* A ceremony that retires several credentials in one entry resolves each one's
|
|
212
|
+
* rungs from the log, and a mis-anchored walk can land on an enrolled client's
|
|
213
|
+
* key instead. Striking that key is silent and unhealable: the client keeps
|
|
214
|
+
* its verification methods and its roster wrap, and simply can never extend
|
|
215
|
+
* the account log again. So the protection is structural rather than a
|
|
216
|
+
* property of the walk. Every client the document lists under
|
|
217
|
+
* `capabilityInvocation` contributes its active update key (recovered by the
|
|
218
|
+
* same attribution the listing performs), that key's carry-over hash, and its
|
|
219
|
+
* staged hash where the log attributes one. An ambiguous staged attribution
|
|
220
|
+
* protects every candidate, since over-protecting only leaves a rung standing
|
|
221
|
+
* while under-protecting destroys a client.
|
|
222
|
+
*
|
|
223
|
+
* A client whose ACTIVE update key the listing cannot attribute at all is a
|
|
224
|
+
* hole in that reasoning: it contributes nothing, so nothing of its would be
|
|
225
|
+
* protected. Rather than protect a guess, the helper names it on `ambiguous`
|
|
226
|
+
* and the caller withholds the whole strike. The same shape already disables
|
|
227
|
+
* a row's disconnect in the clients surface.
|
|
228
|
+
*
|
|
229
|
+
* @param options {object}
|
|
230
|
+
* @param options.log {DIDLog} a resolved, caller-verified log, read BEFORE
|
|
231
|
+
* the entry is built
|
|
232
|
+
* @param [options.retiredVmIds] {string[]} verification-method ids the entry
|
|
233
|
+
* is retiring. A client whose marked `keyAgreement` method is among them is
|
|
234
|
+
* not surviving and contributes nothing. Credential-class members are never
|
|
235
|
+
* client-marked, so on today's ceremonies this list never matches; the
|
|
236
|
+
* parameter is what keeps that an assertion rather than an assumption
|
|
237
|
+
* @param [options.knownLatentHashes] {string[]} standing latent commitments
|
|
238
|
+
* the caller vouches for -- for a credential retirement, the rung hashes its
|
|
239
|
+
* own walks claimed. Excluded from the staged-hash attribution, so a
|
|
240
|
+
* retiring credential's rung committed beside a client's staged hash cannot
|
|
241
|
+
* make that attribution ambiguous and get itself protected
|
|
242
|
+
* @returns {Promise<{ keys: Set<string>, hashes: Set<string>,
|
|
243
|
+
* ambiguous: string[] }>}
|
|
244
|
+
*/
|
|
245
|
+
export declare function survivingClientKeyProtection({ log, retiredVmIds, knownLatentHashes }: {
|
|
246
|
+
log: DIDLog;
|
|
247
|
+
retiredVmIds?: string[];
|
|
248
|
+
knownLatentHashes?: string[];
|
|
249
|
+
}): Promise<{
|
|
250
|
+
keys: Set<string>;
|
|
251
|
+
hashes: Set<string>;
|
|
252
|
+
ambiguous: string[];
|
|
253
|
+
}>;
|
|
176
254
|
//# sourceMappingURL=revokeClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"revokeClient.d.ts","sourceRoot":"","sources":["../../src/webvh/revokeClient.ts"],"names":[],"mappings":"AA4CA,OAAO,KAAK,EACV,MAAM,EACN,MAAM,EACN,kBAAkB,EACnB,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"revokeClient.d.ts","sourceRoot":"","sources":["../../src/webvh/revokeClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,9 +41,12 @@
|
|
|
41
41
|
* removing a wrong hash would either leave the revoked client re-enrollable
|
|
42
42
|
* or brick another party's standing commitment.
|
|
43
43
|
*/
|
|
44
|
-
import { deriveNextKeyHash
|
|
45
|
-
import {
|
|
46
|
-
import {
|
|
44
|
+
import { deriveNextKeyHash } from '@interop/did-method-webvh';
|
|
45
|
+
import { relationIds } from '../resourceLog/document.js';
|
|
46
|
+
import { signAccountEntry } from './accountEntry.js';
|
|
47
|
+
import { preEntryProjectionPublisher } from './didWebProjection.js';
|
|
48
|
+
import { concludeWithPublishedLog, effectiveParameters, updateKeyMultibase, withLogConflictRetry } from './didWebvh.js';
|
|
49
|
+
import { attributeClientUpdateKey, listEnrolledWebvhClients, markedKeyAgreementMultibases } from './listClients.js';
|
|
47
50
|
/**
|
|
48
51
|
* Thrown when the log attribution cannot isolate the revoked client's staged
|
|
49
52
|
* commitment to a single hash -- more than one candidate survives after the
|
|
@@ -344,8 +347,10 @@ export async function clientRemovalFields({ published, target, knownLatentHashes
|
|
|
344
347
|
*
|
|
345
348
|
* Idempotent: a client with no remaining presence (verification methods,
|
|
346
349
|
* update key, commitments all gone) is a no-op on the log (it still republishes
|
|
347
|
-
* `did.json` from the resolved log, healing a torn earlier publish
|
|
348
|
-
*
|
|
350
|
+
* `did.json` from the resolved log, healing a torn earlier publish of this
|
|
351
|
+
* cascade -- the revoking client invokes as the controller, so it may write
|
|
352
|
+
* the projection), so a naive re-run after a mid-cascade crash converges
|
|
353
|
+
* without forking the log.
|
|
349
354
|
*
|
|
350
355
|
* The supplied `updateKeyMultibase` is treated as a snapshot, not as truth: a
|
|
351
356
|
* client that self-rotated between the caller's listing and this call -- or a
|
|
@@ -355,11 +360,19 @@ export async function clientRemovalFields({ published, target, knownLatentHashes
|
|
|
355
360
|
* `updateKeys` would strike nothing out of it and the call would report
|
|
356
361
|
* success over a client that kept full log-update authority.
|
|
357
362
|
*
|
|
358
|
-
* Self-revocation is refused: the entry is signed by
|
|
359
|
-
* update key, and a client that removed its own key could not
|
|
360
|
-
* the removal the resolver will verify (and would strand the
|
|
361
|
-
* follows the document edit). Revoking the last remaining client
|
|
362
|
-
* by the same guard.
|
|
363
|
+
* Self-revocation is refused on the CLIENT arm: the entry is signed by that
|
|
364
|
+
* client's active update key, and a client that removed its own key could not
|
|
365
|
+
* have signed the removal the resolver will verify (and would strand the
|
|
366
|
+
* cascade that follows the document edit). Revoking the last remaining client
|
|
367
|
+
* is refused by the same guard.
|
|
368
|
+
*
|
|
369
|
+
* The LADDER arm has no self. A standing credential's rung signs the removal
|
|
370
|
+
* through the credential's bridge delegation, so any enrolled client may be
|
|
371
|
+
* removed, the last one included: the account then stands ladder-anchored,
|
|
372
|
+
* the shape a credential-anchored signup produces (`decisions/0017`). The
|
|
373
|
+
* entry strikes the attributed staged hash exactly as the client arm does.
|
|
374
|
+
* The `did:web` projection is the ceremony's own pre-entry PUT there, since a
|
|
375
|
+
* ladder-signed entry writes `did.jsonl` alone.
|
|
363
376
|
*
|
|
364
377
|
* The removal entry publishes conditionally on the log this call read, so a
|
|
365
378
|
* concurrent enrollment landing in between is never erased by the revocation
|
|
@@ -368,8 +381,18 @@ export async function clientRemovalFields({ published, target, knownLatentHashes
|
|
|
368
381
|
*
|
|
369
382
|
* @param options {object}
|
|
370
383
|
* @param options.idStore {WebvhIdStore}
|
|
371
|
-
* @param options.
|
|
372
|
-
* own did:webvh update-key seeds
|
|
384
|
+
* @param options.signer {AccountLogSigner} who signs the removal entry: the
|
|
385
|
+
* REVOKING client's own did:webvh update-key seeds, or the acting
|
|
386
|
+
* credential's ladder seed
|
|
387
|
+
* @param [options.projectionStore] {object} an `id`-collection store the
|
|
388
|
+
* caller may write through (a transient session's, bound to its generation
|
|
389
|
+
* delegation; an enrolled client's own root-invoking store). Supplied, the
|
|
390
|
+
* post-removal `did:web` projection is PUT through it immediately BEFORE
|
|
391
|
+
* the removal entry publishes, which is what keeps a ladder-signed removal
|
|
392
|
+
* from leaving `did.json` naming the revoked client. Best-effort: a failed
|
|
393
|
+
* PUT is warned and the removal proceeds. Omitted, the ladder arm leaves
|
|
394
|
+
* the projection to the next visit's `ensureDidWebProjection` and the
|
|
395
|
+
* client arm publishes it after the entry, as before
|
|
373
396
|
* @param options.revokedClient {RevokedClientKeys} the revoked client's
|
|
374
397
|
* public halves; an `updateKeyMultibase` the log does not authorize (stale,
|
|
375
398
|
* or the client's staged key) is re-derived from the log
|
|
@@ -378,6 +401,11 @@ export async function clientRemovalFields({ published, target, knownLatentHashes
|
|
|
378
401
|
* excluded from the staged-hash attribution
|
|
379
402
|
* @param [options.expectedDid] {string} the account DID the log must resolve
|
|
380
403
|
* to, from the caller's stored account pointer
|
|
404
|
+
* @param [options.pinStore] {ResourceLogPinStore} the caller's chain-head
|
|
405
|
+
* pins; the read is checked against the pinned head and the pin advances to
|
|
406
|
+
* what this entry publishes
|
|
407
|
+
* @param [options.logId] {string} the account log's pin slot; required
|
|
408
|
+
* whenever a `pinStore` is supplied
|
|
381
409
|
* @returns {Promise<{ did: string, doc: DIDDoc, log: DIDLog }>} the
|
|
382
410
|
* account's DID, its resolved document AFTER the edit -- what the roster
|
|
383
411
|
* rotation that follows resolves its remaining recipients from, so the
|
|
@@ -396,45 +424,152 @@ export async function revokeWebvhClient(options) {
|
|
|
396
424
|
* @param options {object} see {@link revokeWebvhClient}
|
|
397
425
|
* @returns {Promise<{ did: string, doc: DIDDoc, log: DIDLog }>}
|
|
398
426
|
*/
|
|
399
|
-
async function revokeWebvhClientOnce({ idStore,
|
|
400
|
-
|
|
427
|
+
async function revokeWebvhClientOnce({ idStore, signer, projectionStore, revokedClient, knownLatentHashes = [], expectedDid, pinStore, logId }) {
|
|
428
|
+
let concludedHead;
|
|
429
|
+
const outcome = await signAccountEntry({
|
|
401
430
|
idStore,
|
|
402
|
-
|
|
431
|
+
signer,
|
|
432
|
+
...(expectedDid !== undefined ? { expectedDid } : {}),
|
|
433
|
+
...(pinStore ? { pinStore } : {}),
|
|
434
|
+
...(logId !== undefined ? { logId } : {}),
|
|
435
|
+
missingMessage: 'did:webvh: did.jsonl is missing; nothing to revoke from.',
|
|
436
|
+
verb: 'revoking a client',
|
|
437
|
+
// The post-removal projection, published while the caller's store can
|
|
438
|
+
// still write it and before the entry the ladder arm cannot publish it
|
|
439
|
+
// with.
|
|
440
|
+
...(projectionStore
|
|
441
|
+
? {
|
|
442
|
+
beforePublish: preEntryProjectionPublisher({ store: projectionStore })
|
|
443
|
+
}
|
|
444
|
+
: {}),
|
|
445
|
+
build: async ({ published }) => {
|
|
446
|
+
const target = await clientRemovalTarget({
|
|
447
|
+
published,
|
|
448
|
+
client: revokedClient
|
|
449
|
+
});
|
|
450
|
+
if (signer.kind === 'client') {
|
|
451
|
+
// The client arm alone has a self: the entry is signed by this
|
|
452
|
+
// client's active update key. The ladder arm signs with a rung, so
|
|
453
|
+
// any client may be removed, the last one included
|
|
454
|
+
// (`decisions/0017`).
|
|
455
|
+
const activeKey = await updateKeyMultibase({
|
|
456
|
+
seed: signer.updateKeys.updateSeed
|
|
457
|
+
});
|
|
458
|
+
if (target.removedUpdateKey === activeKey ||
|
|
459
|
+
revokedClient.updateKeyMultibase === activeKey) {
|
|
460
|
+
throw new Error('did:webvh: a client cannot revoke itself; disconnect this ' +
|
|
461
|
+
'client from another enrolled client instead.');
|
|
462
|
+
}
|
|
463
|
+
}
|
|
464
|
+
if (!target.present) {
|
|
465
|
+
// Nothing left to remove, but a torn earlier publish can still have
|
|
466
|
+
// left did.json lagging the log. Healable on the client arm, which
|
|
467
|
+
// invokes as the controller; a lag left by a ladder-signed entry is
|
|
468
|
+
// mended by `ensureDidWebProjection` instead.
|
|
469
|
+
concludedHead =
|
|
470
|
+
signer.kind === 'client'
|
|
471
|
+
? {
|
|
472
|
+
...(await concludeWithPublishedLog({ idStore, published })),
|
|
473
|
+
log: published.log
|
|
474
|
+
}
|
|
475
|
+
: { did: published.did, doc: published.doc, log: published.log };
|
|
476
|
+
return undefined;
|
|
477
|
+
}
|
|
478
|
+
return clientRemovalFields({
|
|
479
|
+
published,
|
|
480
|
+
target,
|
|
481
|
+
knownLatentHashes
|
|
482
|
+
});
|
|
483
|
+
}
|
|
403
484
|
});
|
|
404
|
-
if (
|
|
405
|
-
|
|
485
|
+
if (concludedHead) {
|
|
486
|
+
return concludedHead;
|
|
406
487
|
}
|
|
407
|
-
const
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
488
|
+
const head = outcome.updated ?? outcome.published;
|
|
489
|
+
return { did: head.did, doc: head.doc, log: head.log };
|
|
490
|
+
}
|
|
491
|
+
/**
|
|
492
|
+
* The update keys and committed hashes that belong to the account's SURVIVING
|
|
493
|
+
* enrolled clients -- what no credential retirement may ever strike, however
|
|
494
|
+
* an attribution walk came by them.
|
|
495
|
+
*
|
|
496
|
+
* A ceremony that retires several credentials in one entry resolves each one's
|
|
497
|
+
* rungs from the log, and a mis-anchored walk can land on an enrolled client's
|
|
498
|
+
* key instead. Striking that key is silent and unhealable: the client keeps
|
|
499
|
+
* its verification methods and its roster wrap, and simply can never extend
|
|
500
|
+
* the account log again. So the protection is structural rather than a
|
|
501
|
+
* property of the walk. Every client the document lists under
|
|
502
|
+
* `capabilityInvocation` contributes its active update key (recovered by the
|
|
503
|
+
* same attribution the listing performs), that key's carry-over hash, and its
|
|
504
|
+
* staged hash where the log attributes one. An ambiguous staged attribution
|
|
505
|
+
* protects every candidate, since over-protecting only leaves a rung standing
|
|
506
|
+
* while under-protecting destroys a client.
|
|
507
|
+
*
|
|
508
|
+
* A client whose ACTIVE update key the listing cannot attribute at all is a
|
|
509
|
+
* hole in that reasoning: it contributes nothing, so nothing of its would be
|
|
510
|
+
* protected. Rather than protect a guess, the helper names it on `ambiguous`
|
|
511
|
+
* and the caller withholds the whole strike. The same shape already disables
|
|
512
|
+
* a row's disconnect in the clients surface.
|
|
513
|
+
*
|
|
514
|
+
* @param options {object}
|
|
515
|
+
* @param options.log {DIDLog} a resolved, caller-verified log, read BEFORE
|
|
516
|
+
* the entry is built
|
|
517
|
+
* @param [options.retiredVmIds] {string[]} verification-method ids the entry
|
|
518
|
+
* is retiring. A client whose marked `keyAgreement` method is among them is
|
|
519
|
+
* not surviving and contributes nothing. Credential-class members are never
|
|
520
|
+
* client-marked, so on today's ceremonies this list never matches; the
|
|
521
|
+
* parameter is what keeps that an assertion rather than an assumption
|
|
522
|
+
* @param [options.knownLatentHashes] {string[]} standing latent commitments
|
|
523
|
+
* the caller vouches for -- for a credential retirement, the rung hashes its
|
|
524
|
+
* own walks claimed. Excluded from the staged-hash attribution, so a
|
|
525
|
+
* retiring credential's rung committed beside a client's staged hash cannot
|
|
526
|
+
* make that attribution ambiguous and get itself protected
|
|
527
|
+
* @returns {Promise<{ keys: Set<string>, hashes: Set<string>,
|
|
528
|
+
* ambiguous: string[] }>}
|
|
529
|
+
*/
|
|
530
|
+
export async function survivingClientKeyProtection({ log, retiredVmIds = [], knownLatentHashes = [] }) {
|
|
531
|
+
const keys = new Set();
|
|
532
|
+
const hashes = new Set();
|
|
533
|
+
const ambiguous = [];
|
|
534
|
+
if (log.length === 0) {
|
|
535
|
+
return { keys, hashes, ambiguous };
|
|
419
536
|
}
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
537
|
+
const did = log[log.length - 1].state.id;
|
|
538
|
+
const retired = new Set(retiredVmIds);
|
|
539
|
+
for (const client of listEnrolledWebvhClients({ log })) {
|
|
540
|
+
const retiredHere = client.keyAgreementKeyMultibases.some(multibase => retired.has(`${did}#${multibase}`));
|
|
541
|
+
if (retiredHere) {
|
|
542
|
+
continue;
|
|
543
|
+
}
|
|
544
|
+
const updateKey = client.updateKeyMultibase;
|
|
545
|
+
if (updateKey === undefined) {
|
|
546
|
+
// Nothing of this client can be protected, so nothing may be struck.
|
|
547
|
+
ambiguous.push(client.signingKeyMultibase);
|
|
548
|
+
continue;
|
|
549
|
+
}
|
|
550
|
+
keys.add(updateKey);
|
|
551
|
+
hashes.add(await deriveNextKeyHash(updateKey));
|
|
552
|
+
try {
|
|
553
|
+
const staged = await attributeStagedHash({
|
|
554
|
+
log,
|
|
555
|
+
revokedUpdateKey: updateKey,
|
|
556
|
+
knownLatentHashes
|
|
557
|
+
});
|
|
558
|
+
if (staged !== undefined) {
|
|
559
|
+
hashes.add(staged);
|
|
560
|
+
}
|
|
561
|
+
}
|
|
562
|
+
catch (err) {
|
|
563
|
+
// Ambiguous: protect every candidate rather than none.
|
|
564
|
+
if (err.name !== 'StagedCommitmentAmbiguousError') {
|
|
565
|
+
throw err;
|
|
566
|
+
}
|
|
567
|
+
for (const candidate of err
|
|
568
|
+
.candidates) {
|
|
569
|
+
hashes.add(candidate);
|
|
570
|
+
}
|
|
571
|
+
}
|
|
423
572
|
}
|
|
424
|
-
|
|
425
|
-
const fields = await clientRemovalFields({
|
|
426
|
-
published,
|
|
427
|
-
target,
|
|
428
|
-
knownLatentHashes
|
|
429
|
-
});
|
|
430
|
-
const signer = await updateKeySigner({ seed: updateKeys.updateSeed });
|
|
431
|
-
const updated = await updateDID({
|
|
432
|
-
log: published.log,
|
|
433
|
-
signer,
|
|
434
|
-
alsoKnownAsWeb: true,
|
|
435
|
-
...fields
|
|
436
|
-
});
|
|
437
|
-
await publishUpdatedLog({ idStore, updated, ifMatch: published.etag });
|
|
438
|
-
return { did: updated.did, doc: updated.doc, log: updated.log };
|
|
573
|
+
return { keys, hashes, ambiguous };
|
|
439
574
|
}
|
|
440
575
|
//# sourceMappingURL=revokeClient.js.map
|
|
@@ -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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"}
|