@interop/was-conformance-suite 0.6.1 → 0.7.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 +22 -14
- package/dist/harness/types.d.ts +6 -0
- package/dist/harness/types.d.ts.map +1 -1
- package/dist/helpers.d.ts +12 -0
- package/dist/helpers.d.ts.map +1 -1
- package/dist/helpers.js +16 -2
- package/dist/helpers.js.map +1 -1
- package/dist/suites/delegation-cryptosuites-api.d.ts +11 -0
- package/dist/suites/delegation-cryptosuites-api.d.ts.map +1 -0
- package/dist/suites/delegation-cryptosuites-api.js +194 -0
- package/dist/suites/delegation-cryptosuites-api.js.map +1 -0
- package/dist/suites/index.d.ts +2 -1
- package/dist/suites/index.d.ts.map +1 -1
- package/dist/suites/index.js +3 -1
- package/dist/suites/index.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -121,20 +121,28 @@ Options:
|
|
|
121
121
|
|
|
122
122
|
The available suite ids (for `--suite`) are:
|
|
123
123
|
|
|
124
|
-
| id | tests
|
|
125
|
-
| --------------------------- |
|
|
126
|
-
| `
|
|
127
|
-
| `
|
|
128
|
-
| `
|
|
129
|
-
| `
|
|
130
|
-
| `client-
|
|
131
|
-
| `client-
|
|
132
|
-
| `
|
|
133
|
-
| `
|
|
134
|
-
| `
|
|
135
|
-
| `
|
|
136
|
-
| `
|
|
137
|
-
| `
|
|
124
|
+
| id | tests |
|
|
125
|
+
| --------------------------- | ------------------------------------------------------- |
|
|
126
|
+
| `authz-ordering-api` | Authorization ordering (no-leak negatives) |
|
|
127
|
+
| `blinded-index-api` | Blinded-index query profile |
|
|
128
|
+
| `changes-query-api` | Collection changes query profile |
|
|
129
|
+
| `chunks-api` | Chunked Resources API |
|
|
130
|
+
| `client-backends` | WasClient -- BYOS backend registration |
|
|
131
|
+
| `client-delegation` | WasClient -- Delegation |
|
|
132
|
+
| `client-export-import` | WasClient -- Export / Import |
|
|
133
|
+
| `client-resources` | WasClient -- Resources |
|
|
134
|
+
| `client-spaces` | WasClient -- Spaces & Collections |
|
|
135
|
+
| `collection-api` | Collections API |
|
|
136
|
+
| `conditional-requests-api` | Conditional requests & caching |
|
|
137
|
+
| `delegation-cryptosuites` | Delegation-proof cryptosuites |
|
|
138
|
+
| `digest-api` | Request body integrity (Digest) negatives |
|
|
139
|
+
| `encryption-descriptor-api` | Encryption descriptor API |
|
|
140
|
+
| `invocation-target-api` | Capability invocationTarget binding |
|
|
141
|
+
| `policy-api` | Access-control policy API |
|
|
142
|
+
| `resource-api` | Resource API |
|
|
143
|
+
| `server` | Server |
|
|
144
|
+
| `spaces-api` | Spaces |
|
|
145
|
+
| `write-validation-api` | Write-validation negatives (reserved ids, Content-Type) |
|
|
138
146
|
|
|
139
147
|
#### Environment-variable fallbacks
|
|
140
148
|
|
package/dist/harness/types.d.ts
CHANGED
|
@@ -12,6 +12,12 @@ import type { ISigner } from '@interop/data-integrity-core';
|
|
|
12
12
|
*/
|
|
13
13
|
export interface Actor {
|
|
14
14
|
did: string;
|
|
15
|
+
/**
|
|
16
|
+
* The identity's own signer. `rootClient` and `was` are built from it; a
|
|
17
|
+
* suite needs it directly only to build a client of its own, e.g. one signing
|
|
18
|
+
* delegation proofs with a different cryptosuite.
|
|
19
|
+
*/
|
|
20
|
+
signer: ISigner;
|
|
15
21
|
rootClient: ZcapClient;
|
|
16
22
|
was: WasClient;
|
|
17
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/harness/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/harness/types.ts"],"names":[],"mappings":"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"}
|
package/dist/helpers.d.ts
CHANGED
|
@@ -7,6 +7,18 @@ import type { Space } from '@interop/was-client';
|
|
|
7
7
|
import type { ISigner } from '@interop/data-integrity-core';
|
|
8
8
|
import { v4 as uuidv4 } from 'uuid';
|
|
9
9
|
import type { Actors, ConformanceContext } from './harness/types.js';
|
|
10
|
+
/**
|
|
11
|
+
* The suite's ZcapClient: delegation proofs are signed with `eddsa-jcs-2022`,
|
|
12
|
+
* which canonicalizes with JCS and so needs no JSON-LD document loader at
|
|
13
|
+
* signing time. That is what WAS clients now emit, so the required tests
|
|
14
|
+
* exercise the suite a server actually meets. `Ed25519Signature2020` is not
|
|
15
|
+
* gone from the suite: the optional `delegation-cryptosuites` suite asserts a
|
|
16
|
+
* server still accepts it, and accepts a chain that mixes the two.
|
|
17
|
+
*
|
|
18
|
+
* @param options {object}
|
|
19
|
+
* @param options.signer {ISigner}
|
|
20
|
+
* @returns {ZcapClient}
|
|
21
|
+
*/
|
|
10
22
|
export declare function zcapClient({ signer }: {
|
|
11
23
|
signer: ISigner;
|
|
12
24
|
}): ZcapClient;
|
package/dist/helpers.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAIhD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAA;AAEnC,OAAO,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAapE,wBAAgB,UAAU,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,GAAG,UAAU,CAMtE;AAED;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,EACxB,SAAS,EACT,MAAM,EACP,EAAE;IACD,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,OAAO,CAAA;CAChB,GAAG,SAAS,CAEZ;AAED,wBAAsB,gBAAgB,CAAC,EACrC,SAAS,EACV,EAAE;IACD,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAIhD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAA;AAEnC,OAAO,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAapE;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,GAAG,UAAU,CAMtE;AAED;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,EACxB,SAAS,EACT,MAAM,EACP,EAAE;IACD,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,OAAO,CAAA;CAChB,GAAG,SAAS,CAEZ;AAED,wBAAsB,gBAAgB,CAAC,EACrC,SAAS,EACV,EAAE;IACD,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,OAAO,CAAC,MAAM,CAAC,CA2ClB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,WAAW,CAAC,EAChC,SAAS,EACT,eAAe,EACf,gBAAgB,EAChB,UAAU,EACX,EAAE;IACD,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,gBAAgB,EAAE,MAAM,CAAA;IACxB,UAAU,EAAE,UAAU,CAAA;CACvB,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,GAAG,CAAA;CAAE,CAAC,CAwB3D;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,cAAc,CAAC,EACnC,SAAS,EACT,eAAe,EACf,GAAG,EACH,IAAI,EACL,EAAE;IACD,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,GAAG,EAAE,SAAS,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,GAAG,OAAO,CAAC,KAAK,CAAC,CAmBjB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAMxD;AAED;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CAAC,EAClC,SAAS,EACT,eAAsB,EACvB,EAAE;IACD,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAChC,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAe9B;AAED,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,CAAA"}
|
package/dist/helpers.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import { ZcapClient } from '@interop/ezcap';
|
|
5
5
|
import { WasClient } from '@interop/was-client';
|
|
6
6
|
import { decodeSecretKeySeed } from '@digitalcredentials/bnid';
|
|
7
|
-
import {
|
|
7
|
+
import { EddsaJcs2022 } from '@interop/ed25519-signature/eddsa-jcs-2022';
|
|
8
8
|
import { Ed25519VerificationKey } from '@interop/ed25519-verification-key';
|
|
9
9
|
import { v4 as uuidv4 } from 'uuid';
|
|
10
10
|
/**
|
|
@@ -17,9 +17,21 @@ const secretKeySeeds = {
|
|
|
17
17
|
bob: 'z1AmpBeBetWxKMBpAcHsztGogaUki1LXWANSzTd5CiYoikA',
|
|
18
18
|
bobDelegatedApp: 'z1AfgF2HQvQaaAhod3KEYUHwY5epGtP5QmbEMKtMFf8XcYk'
|
|
19
19
|
};
|
|
20
|
+
/**
|
|
21
|
+
* The suite's ZcapClient: delegation proofs are signed with `eddsa-jcs-2022`,
|
|
22
|
+
* which canonicalizes with JCS and so needs no JSON-LD document loader at
|
|
23
|
+
* signing time. That is what WAS clients now emit, so the required tests
|
|
24
|
+
* exercise the suite a server actually meets. `Ed25519Signature2020` is not
|
|
25
|
+
* gone from the suite: the optional `delegation-cryptosuites` suite asserts a
|
|
26
|
+
* server still accepts it, and accepts a chain that mixes the two.
|
|
27
|
+
*
|
|
28
|
+
* @param options {object}
|
|
29
|
+
* @param options.signer {ISigner}
|
|
30
|
+
* @returns {ZcapClient}
|
|
31
|
+
*/
|
|
20
32
|
export function zcapClient({ signer }) {
|
|
21
33
|
return new ZcapClient({
|
|
22
|
-
SuiteClass:
|
|
34
|
+
SuiteClass: EddsaJcs2022,
|
|
23
35
|
invocationSigner: signer,
|
|
24
36
|
delegationSigner: signer
|
|
25
37
|
});
|
|
@@ -59,6 +71,7 @@ export async function buildZcapClients({ serverUrl }) {
|
|
|
59
71
|
return {
|
|
60
72
|
alice: {
|
|
61
73
|
did: aliceRootDid,
|
|
74
|
+
signer: aliceSigner,
|
|
62
75
|
// Low-level ZcapClient -- kept for raw request()/delegate() calls.
|
|
63
76
|
rootClient: zcapClient({ signer: aliceSigner }),
|
|
64
77
|
// High-level WAS client wrapping the same signer.
|
|
@@ -70,6 +83,7 @@ export async function buildZcapClients({ serverUrl }) {
|
|
|
70
83
|
},
|
|
71
84
|
bob: {
|
|
72
85
|
did: bobRootDid,
|
|
86
|
+
signer: bobSigner,
|
|
73
87
|
rootClient: zcapClient({ signer: bobSigner }),
|
|
74
88
|
was: wasClient({ serverUrl, signer: bobSigner })
|
|
75
89
|
}
|
package/dist/helpers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Suite } from '../harness/types.js';
|
|
2
|
+
interface State {
|
|
3
|
+
alice: any;
|
|
4
|
+
aliceDelegatedApp: any;
|
|
5
|
+
bob: any;
|
|
6
|
+
docUrl: string;
|
|
7
|
+
spaceId: string;
|
|
8
|
+
}
|
|
9
|
+
export declare const delegationCryptosuitesApi: Suite<State>;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=delegation-cryptosuites-api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delegation-cryptosuites-api.d.ts","sourceRoot":"","sources":["../../src/suites/delegation-cryptosuites-api.ts"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAEhD,UAAU,KAAK;IACb,KAAK,EAAE,GAAG,CAAA;IACV,iBAAiB,EAAE,GAAG,CAAA;IACtB,GAAG,EAAE,GAAG,CAAA;IACR,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;CAChB;AA+BD,eAAO,MAAM,yBAAyB,EAAE,KAAK,CAAC,KAAK,CA0IlD,CAAA"}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) 2026 Interop Alliance. All rights reserved.
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* WAS conformance tests -- delegation-proof cryptosuites (OPTIONAL).
|
|
6
|
+
*
|
|
7
|
+
* A delegated capability's `proof` is a signature on the document, separate
|
|
8
|
+
* from the capability invocation's HTTP signature. This suite asserts a server
|
|
9
|
+
* accepts both cryptosuites in use, rather than the run silently tracking
|
|
10
|
+
* whichever one it happens to send.
|
|
11
|
+
*
|
|
12
|
+
* The two are not on the same footing. The rest of this conformance suite signs
|
|
13
|
+
* its delegations with `eddsa-jcs-2022`, which canonicalizes with JCS and so
|
|
14
|
+
* costs no JSON-LD canonicalization; that is what current WAS clients emit, so
|
|
15
|
+
* every delegated test in the required set already depends on a server
|
|
16
|
+
* accepting it, and the test for it here is required too.
|
|
17
|
+
*
|
|
18
|
+
* `Ed25519Signature2020` is the older suite, and its tests are marked optional:
|
|
19
|
+
* a server may reasonably have moved past it, and the spec's authorization
|
|
20
|
+
* profile names no cryptosuite at all. Accepting it is still what keeps two
|
|
21
|
+
* populations working -- clients that have not upgraded, and wallets that
|
|
22
|
+
* recorded a grant before the switch and submit that stored capability back for
|
|
23
|
+
* revocation under the suite it was signed with.
|
|
24
|
+
*
|
|
25
|
+
* The two are told apart by `proof.type` and `proof.cryptosuite`, with no
|
|
26
|
+
* heuristic, so a server may accept both at once and the links of a single
|
|
27
|
+
* chain may mix them. The mixed-chain test here runs the one direction any
|
|
28
|
+
* client can produce unaided: an `Ed25519Signature2020` parent with an
|
|
29
|
+
* `eddsa-jcs-2022` child. The reverse needs the old-suite client to be handed a
|
|
30
|
+
* document loader serving the data-integrity context -- URDNA2015 expands the
|
|
31
|
+
* parent embedded in `proof.capabilityChain` -- and it throws at signing time,
|
|
32
|
+
* on the client, before any server sees the chain. That is a client-side
|
|
33
|
+
* limitation rather than a server property, so it is out of scope here.
|
|
34
|
+
*/
|
|
35
|
+
import { ZcapClient } from '@interop/ezcap';
|
|
36
|
+
import { Ed25519Signature2020 } from '@interop/ed25519-signature';
|
|
37
|
+
import assert from '../harness/assert.js';
|
|
38
|
+
/**
|
|
39
|
+
* A ZcapClient signing its delegation proofs with `Ed25519Signature2020` -- the
|
|
40
|
+
* older suite, as a client that has not upgraded still sends it. The suite's
|
|
41
|
+
* own `ctx.zcapClient` is the `eddsa-jcs-2022` counterpart.
|
|
42
|
+
*
|
|
43
|
+
* @param options {object}
|
|
44
|
+
* @param options.signer {ISigner}
|
|
45
|
+
* @returns {ZcapClient}
|
|
46
|
+
*/
|
|
47
|
+
function legacyZcapClient({ signer }) {
|
|
48
|
+
return new ZcapClient({
|
|
49
|
+
SuiteClass: Ed25519Signature2020,
|
|
50
|
+
invocationSigner: signer,
|
|
51
|
+
delegationSigner: signer
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* The delegation proof of a freshly delegated capability. `proof` may be a
|
|
56
|
+
* single proof or a set of them; `delegate()` produces exactly one.
|
|
57
|
+
*
|
|
58
|
+
* @param capability {any}
|
|
59
|
+
* @returns {Record<string, string>}
|
|
60
|
+
*/
|
|
61
|
+
function delegationProof(capability) {
|
|
62
|
+
const { proof } = capability;
|
|
63
|
+
return Array.isArray(proof) ? proof[0] : proof;
|
|
64
|
+
}
|
|
65
|
+
export const delegationCryptosuitesApi = {
|
|
66
|
+
id: 'delegation-cryptosuites',
|
|
67
|
+
name: 'Delegation-proof cryptosuites',
|
|
68
|
+
specRefs: ['https://wallet.storage/spec#delegation'],
|
|
69
|
+
setup: async (ctx) => {
|
|
70
|
+
const alice = { ...ctx.actors.alice };
|
|
71
|
+
const aliceDelegatedApp = { ...ctx.actors.aliceDelegatedApp };
|
|
72
|
+
const bob = { ...ctx.actors.bob };
|
|
73
|
+
const spaceId = ctx.generateId();
|
|
74
|
+
const resourceId = ctx.generateId();
|
|
75
|
+
await ctx.createSpace({
|
|
76
|
+
spaceDescription: {
|
|
77
|
+
id: spaceId,
|
|
78
|
+
name: "Alice's Cryptosuite Space",
|
|
79
|
+
controller: alice.did
|
|
80
|
+
},
|
|
81
|
+
rootClient: alice.rootClient
|
|
82
|
+
});
|
|
83
|
+
await alice.rootClient.request({
|
|
84
|
+
url: new URL(`/space/${spaceId}/`, ctx.serverUrl).toString(),
|
|
85
|
+
method: 'POST',
|
|
86
|
+
action: 'POST',
|
|
87
|
+
json: { id: 'credentials', name: 'Verifiable Credentials' }
|
|
88
|
+
});
|
|
89
|
+
const docUrl = new URL(`/space/${spaceId}/credentials/${resourceId}`, ctx.serverUrl).toString();
|
|
90
|
+
await alice.rootClient.request({
|
|
91
|
+
url: docUrl,
|
|
92
|
+
method: 'PUT',
|
|
93
|
+
action: 'PUT',
|
|
94
|
+
json: { id: resourceId, hello: 'world' }
|
|
95
|
+
});
|
|
96
|
+
return { alice, aliceDelegatedApp, bob, docUrl, spaceId };
|
|
97
|
+
},
|
|
98
|
+
teardown: async (ctx, state) => {
|
|
99
|
+
try {
|
|
100
|
+
await state.alice.rootClient.request({
|
|
101
|
+
url: new URL(`/space/${state.spaceId}`, ctx.serverUrl).toString(),
|
|
102
|
+
method: 'DELETE'
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
catch {
|
|
106
|
+
/* best-effort cleanup */
|
|
107
|
+
}
|
|
108
|
+
},
|
|
109
|
+
tests: [
|
|
110
|
+
{
|
|
111
|
+
id: 'cryptosuites.eddsa-jcs-2022',
|
|
112
|
+
name: 'accepts a delegation proof signed with eddsa-jcs-2022',
|
|
113
|
+
specRefs: ['https://wallet.storage/spec#delegation'],
|
|
114
|
+
run: async (ctx, state) => {
|
|
115
|
+
const { alice, aliceDelegatedApp, docUrl } = state;
|
|
116
|
+
const capability = await alice.rootClient.delegate({
|
|
117
|
+
allowedActions: ['GET'],
|
|
118
|
+
invocationTarget: docUrl,
|
|
119
|
+
controller: aliceDelegatedApp.did
|
|
120
|
+
});
|
|
121
|
+
const proof = delegationProof(capability);
|
|
122
|
+
assert.equal(proof.type, 'DataIntegrityProof');
|
|
123
|
+
assert.equal(proof.cryptosuite, 'eddsa-jcs-2022');
|
|
124
|
+
const response = await ctx
|
|
125
|
+
.zcapClient({ signer: aliceDelegatedApp.signer })
|
|
126
|
+
.request({ url: docUrl, method: 'GET', action: 'GET', capability });
|
|
127
|
+
assert.equal(response.status, 200);
|
|
128
|
+
assert.equal(response.data.hello, 'world');
|
|
129
|
+
}
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
id: 'cryptosuites.ed25519-signature-2020',
|
|
133
|
+
name: 'accepts a delegation proof signed with Ed25519Signature2020',
|
|
134
|
+
// Optional: the older suite, which a server may reasonably no longer
|
|
135
|
+
// accept. The spec names no cryptosuite either way.
|
|
136
|
+
optional: true,
|
|
137
|
+
specRefs: ['https://wallet.storage/spec#delegation'],
|
|
138
|
+
run: async (ctx, state) => {
|
|
139
|
+
const { alice, aliceDelegatedApp, docUrl } = state;
|
|
140
|
+
// Alice's own signer, but a client on the older suite -- the shape a
|
|
141
|
+
// client that has not upgraded still sends.
|
|
142
|
+
const capability = await legacyZcapClient({
|
|
143
|
+
signer: alice.signer
|
|
144
|
+
}).delegate({
|
|
145
|
+
allowedActions: ['GET'],
|
|
146
|
+
invocationTarget: docUrl,
|
|
147
|
+
controller: aliceDelegatedApp.did
|
|
148
|
+
});
|
|
149
|
+
assert.equal(delegationProof(capability).type, 'Ed25519Signature2020');
|
|
150
|
+
const response = await ctx
|
|
151
|
+
.zcapClient({ signer: aliceDelegatedApp.signer })
|
|
152
|
+
.request({ url: docUrl, method: 'GET', action: 'GET', capability });
|
|
153
|
+
assert.equal(response.status, 200);
|
|
154
|
+
assert.equal(response.data.hello, 'world');
|
|
155
|
+
}
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
id: 'cryptosuites.mixed-chain',
|
|
159
|
+
name: 'accepts a chain whose links mix the two cryptosuites',
|
|
160
|
+
// Optional for the same reason: its parent link is Ed25519Signature2020.
|
|
161
|
+
optional: true,
|
|
162
|
+
specRefs: ['https://wallet.storage/spec#delegation'],
|
|
163
|
+
run: async (ctx, state) => {
|
|
164
|
+
const { alice, aliceDelegatedApp, bob, docUrl } = state;
|
|
165
|
+
// An Ed25519Signature2020 parent...
|
|
166
|
+
const parent = await legacyZcapClient({
|
|
167
|
+
signer: alice.signer
|
|
168
|
+
}).delegate({
|
|
169
|
+
allowedActions: ['GET'],
|
|
170
|
+
invocationTarget: docUrl,
|
|
171
|
+
controller: aliceDelegatedApp.did
|
|
172
|
+
});
|
|
173
|
+
// ...re-delegated by an upgraded client, so the child is JCS-signed.
|
|
174
|
+
const child = await ctx
|
|
175
|
+
.zcapClient({ signer: aliceDelegatedApp.signer })
|
|
176
|
+
.delegate({
|
|
177
|
+
capability: parent,
|
|
178
|
+
allowedActions: ['GET'],
|
|
179
|
+
controller: bob.did
|
|
180
|
+
});
|
|
181
|
+
assert.equal(delegationProof(child).cryptosuite, 'eddsa-jcs-2022');
|
|
182
|
+
const response = await bob.rootClient.request({
|
|
183
|
+
url: docUrl,
|
|
184
|
+
method: 'GET',
|
|
185
|
+
action: 'GET',
|
|
186
|
+
capability: child
|
|
187
|
+
});
|
|
188
|
+
assert.equal(response.status, 200);
|
|
189
|
+
assert.equal(response.data.hello, 'world');
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
]
|
|
193
|
+
};
|
|
194
|
+
//# sourceMappingURL=delegation-cryptosuites-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delegation-cryptosuites-api.js","sourceRoot":"","sources":["../../src/suites/delegation-cryptosuites-api.ts"],"names":[],"mappings":"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"}
|
package/dist/suites/index.d.ts
CHANGED
|
@@ -13,6 +13,7 @@ import { clientResources } from './client-resources.js';
|
|
|
13
13
|
import { clientSpaces } from './client-spaces.js';
|
|
14
14
|
import { collectionApi } from './collection-api.js';
|
|
15
15
|
import { conditionalRequestsApi } from './conditional-requests-api.js';
|
|
16
|
+
import { delegationCryptosuitesApi } from './delegation-cryptosuites-api.js';
|
|
16
17
|
import { digestApi } from './digest-api.js';
|
|
17
18
|
import { encryptionDescriptorApi } from './encryption-descriptor-api.js';
|
|
18
19
|
import { invocationTargetApi } from './invocation-target-api.js';
|
|
@@ -26,5 +27,5 @@ import { writeValidationApi } from './write-validation-api.js';
|
|
|
26
27
|
* original file-alphabetical execution order of the ported suite).
|
|
27
28
|
*/
|
|
28
29
|
export declare const suites: Array<Suite<any>>;
|
|
29
|
-
export { authzOrderingApi, blindedIndexApi, changesQueryApi, chunksApi, clientBackends, clientDelegation, clientExportImport, clientResources, clientSpaces, collectionApi, conditionalRequestsApi, digestApi, encryptionDescriptorApi, invocationTargetApi, policyApi, resourceApi, server, spacesApi, writeValidationApi };
|
|
30
|
+
export { authzOrderingApi, blindedIndexApi, changesQueryApi, chunksApi, clientBackends, clientDelegation, clientExportImport, clientResources, clientSpaces, collectionApi, conditionalRequestsApi, delegationCryptosuitesApi, digestApi, encryptionDescriptorApi, invocationTargetApi, policyApi, resourceApi, server, spacesApi, writeValidationApi };
|
|
30
31
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/suites/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAEhD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAA;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAE9D;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/suites/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAEhD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAA;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAA;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAA;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAE9D;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAqBpC,CAAA;AAED,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,aAAa,EACb,sBAAsB,EACtB,yBAAyB,EACzB,SAAS,EACT,uBAAuB,EACvB,mBAAmB,EACnB,SAAS,EACT,WAAW,EACX,MAAM,EACN,SAAS,EACT,kBAAkB,EACnB,CAAA"}
|
package/dist/suites/index.js
CHANGED
|
@@ -9,6 +9,7 @@ import { clientResources } from './client-resources.js';
|
|
|
9
9
|
import { clientSpaces } from './client-spaces.js';
|
|
10
10
|
import { collectionApi } from './collection-api.js';
|
|
11
11
|
import { conditionalRequestsApi } from './conditional-requests-api.js';
|
|
12
|
+
import { delegationCryptosuitesApi } from './delegation-cryptosuites-api.js';
|
|
12
13
|
import { digestApi } from './digest-api.js';
|
|
13
14
|
import { encryptionDescriptorApi } from './encryption-descriptor-api.js';
|
|
14
15
|
import { invocationTargetApi } from './invocation-target-api.js';
|
|
@@ -33,6 +34,7 @@ export const suites = [
|
|
|
33
34
|
clientSpaces,
|
|
34
35
|
collectionApi,
|
|
35
36
|
conditionalRequestsApi,
|
|
37
|
+
delegationCryptosuitesApi,
|
|
36
38
|
digestApi,
|
|
37
39
|
encryptionDescriptorApi,
|
|
38
40
|
invocationTargetApi,
|
|
@@ -42,5 +44,5 @@ export const suites = [
|
|
|
42
44
|
spacesApi,
|
|
43
45
|
writeValidationApi
|
|
44
46
|
];
|
|
45
|
-
export { authzOrderingApi, blindedIndexApi, changesQueryApi, chunksApi, clientBackends, clientDelegation, clientExportImport, clientResources, clientSpaces, collectionApi, conditionalRequestsApi, digestApi, encryptionDescriptorApi, invocationTargetApi, policyApi, resourceApi, server, spacesApi, writeValidationApi };
|
|
47
|
+
export { authzOrderingApi, blindedIndexApi, changesQueryApi, chunksApi, clientBackends, clientDelegation, clientExportImport, clientResources, clientSpaces, collectionApi, conditionalRequestsApi, delegationCryptosuitesApi, digestApi, encryptionDescriptorApi, invocationTargetApi, policyApi, resourceApi, server, spacesApi, writeValidationApi };
|
|
46
48
|
//# sourceMappingURL=index.js.map
|
package/dist/suites/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/suites/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAA;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAE9D;;;GAGG;AACH,MAAM,CAAC,MAAM,MAAM,GAAsB;IACvC,gBAAgB;IAChB,eAAe;IACf,eAAe;IACf,SAAS;IACT,cAAc;IACd,gBAAgB;IAChB,kBAAkB;IAClB,eAAe;IACf,YAAY;IACZ,aAAa;IACb,sBAAsB;IACtB,SAAS;IACT,uBAAuB;IACvB,mBAAmB;IACnB,SAAS;IACT,WAAW;IACX,MAAM;IACN,SAAS;IACT,kBAAkB;CACnB,CAAA;AAED,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,aAAa,EACb,sBAAsB,EACtB,SAAS,EACT,uBAAuB,EACvB,mBAAmB,EACnB,SAAS,EACT,WAAW,EACX,MAAM,EACN,SAAS,EACT,kBAAkB,EACnB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/suites/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAA;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAA;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAA;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAE9D;;;GAGG;AACH,MAAM,CAAC,MAAM,MAAM,GAAsB;IACvC,gBAAgB;IAChB,eAAe;IACf,eAAe;IACf,SAAS;IACT,cAAc;IACd,gBAAgB;IAChB,kBAAkB;IAClB,eAAe;IACf,YAAY;IACZ,aAAa;IACb,sBAAsB;IACtB,yBAAyB;IACzB,SAAS;IACT,uBAAuB;IACvB,mBAAmB;IACnB,SAAS;IACT,WAAW;IACX,MAAM;IACN,SAAS;IACT,kBAAkB;CACnB,CAAA;AAED,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,aAAa,EACb,sBAAsB,EACtB,yBAAyB,EACzB,SAAS,EACT,uBAAuB,EACvB,mBAAmB,EACnB,SAAS,EACT,WAAW,EACX,MAAM,EACN,SAAS,EACT,kBAAkB,EACnB,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@interop/was-conformance-suite",
|
|
3
3
|
"description": "Conformance test suite for Wallet Attached Storage (WAS) servers, runnable as a CLI or in the browser.",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.7.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"build": "pnpm run clear && tsc",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"dependencies": {
|
|
44
44
|
"@digitalcredentials/bnid": "^5.0.0",
|
|
45
45
|
"@interop/data-integrity-core": "^8.7.1",
|
|
46
|
-
"@interop/ed25519-signature": "^7.
|
|
46
|
+
"@interop/ed25519-signature": "^7.2.0",
|
|
47
47
|
"@interop/ed25519-verification-key": "^8.0.4",
|
|
48
48
|
"@interop/ezcap": "^7.4.3",
|
|
49
49
|
"@interop/http-digest-header": "^3.1.0",
|