@openvtc/trust-tasks 0.24.0 → 0.24.2
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/CHANGELOG.md +113 -0
- package/dist/_shared/components.d.ts +55 -2
- package/dist/_shared/components.d.ts.map +1 -1
- package/dist/device/list/0.1/payload.d.ts +4 -4
- package/dist/device/list/0.1/payload.d.ts.map +1 -1
- package/dist/device/list/0.1/payload.js +4 -0
- package/dist/device/list/0.1/payload.js.map +1 -1
- package/dist/device/list/0.2/payload.d.ts +4 -4
- package/dist/device/list/0.2/payload.d.ts.map +1 -1
- package/dist/device/list/0.2/payload.js +4 -0
- package/dist/device/list/0.2/payload.js.map +1 -1
- package/dist/device/register/0.1/payload.d.ts +4 -4
- package/dist/device/register/0.1/payload.d.ts.map +1 -1
- package/dist/device/register/0.1/payload.js +4 -0
- package/dist/device/register/0.1/payload.js.map +1 -1
- package/dist/device/register/0.2/payload.d.ts +4 -4
- package/dist/device/register/0.2/payload.d.ts.map +1 -1
- package/dist/device/register/0.2/payload.js +4 -0
- package/dist/device/register/0.2/payload.js.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/keys/sign-csr/0.1/payload.d.ts +729 -0
- package/dist/keys/sign-csr/0.1/payload.d.ts.map +1 -0
- package/dist/keys/sign-csr/0.1/payload.js +280 -0
- package/dist/keys/sign-csr/0.1/payload.js.map +1 -0
- package/dist/keys/sign-jws/0.1/payload.d.ts +352 -0
- package/dist/keys/sign-jws/0.1/payload.d.ts.map +1 -0
- package/dist/keys/sign-jws/0.1/payload.js +207 -0
- package/dist/keys/sign-jws/0.1/payload.js.map +1 -0
- package/dist/rooms/_shared/0.1/blobs.d.ts +1 -1
- package/dist/rooms/_shared/0.1/blobs.d.ts.map +1 -1
- package/dist/vtc/join-requests/wallet-session/start/0.1/payload.d.ts +398 -0
- package/dist/vtc/join-requests/wallet-session/start/0.1/payload.d.ts.map +1 -0
- package/dist/vtc/join-requests/wallet-session/start/0.1/payload.js +220 -0
- package/dist/vtc/join-requests/wallet-session/start/0.1/payload.js.map +1 -0
- package/dist/vtc/join-requests/wallet-session/status/0.1/payload.d.ts +655 -0
- package/dist/vtc/join-requests/wallet-session/status/0.1/payload.d.ts.map +1 -0
- package/dist/vtc/join-requests/wallet-session/status/0.1/payload.js +360 -0
- package/dist/vtc/join-requests/wallet-session/status/0.1/payload.js.map +1 -0
- package/package.json +1 -1
- package/src/_shared/components.ts +57 -0
- package/src/device/list/0.1/payload.ts +4 -0
- package/src/device/list/0.2/payload.ts +4 -0
- package/src/device/register/0.1/payload.ts +4 -0
- package/src/device/register/0.2/payload.ts +4 -0
- package/src/index.ts +4 -0
- package/src/keys/sign-csr/0.1/payload.ts +646 -0
- package/src/keys/sign-jws/0.1/payload.ts +271 -0
- package/src/rooms/_shared/0.1/blobs.ts +1 -1
- package/src/vtc/join-requests/wallet-session/start/0.1/payload.ts +279 -0
- package/src/vtc/join-requests/wallet-session/status/0.1/payload.ts +454 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../../../../../src/vtc/join-requests/wallet-session/status/0.1/payload.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,sCAAsC,CAAC;AAGhE;;GAEG;AACH,MAAM,WAAW,yCAAyC;IACxD;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,GAAG,CAAC;CACX;AACD,MAAM,WAAW,iDAAiD;IAChE,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,KAAK,EAAE,gBAAgB,GAAG,kBAAkB,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC;IACnF;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;OAEG;IACH,MAAM,CAAC,EAAE,qBAAqB,GAAG,mBAAmB,GAAG,kBAAkB,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;IAChH,GAAG,CAAC,EAAE,GAAG,CAAC;CACX;AACD;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,WAAW,EAAE,CAAC,mBAAmB,EAAE,GAAG,mBAAmB,EAAE,CAAC,CAAC;IAC7D;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AACD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,kHAAkH;AAClH,YAAY,EAAE,GAAG,EAAE,CAAC;AAEpB,2BAA2B;AAC3B,eAAO,MAAM,QAAQ,EAAG,yEAAkF,CAAC;AAE3G,mEAAmE;AACnE,MAAM,MAAM,OAAO,GAAG,yCAAyC,CAAC;AAEhE,qEAAqE;AACrE,eAAO,MAAM,iBAAiB,EAAG,kFAA2F,CAAC;AAE7H,4EAA4E;AAC5E,MAAM,MAAM,QAAQ,GAAG,iDAAiD,CAAC;AAEzE;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqKjB,CAAC;AAEX,mEAAmE;AACnE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmJ1B,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOP,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOhB,CAAC"}
|
|
@@ -0,0 +1,360 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated by scripts/build-ts-bindings.mjs — DO NOT EDIT BY HAND.
|
|
3
|
+
* Source: specs/vtc/join-requests/wallet-session/status/0.1/payload.schema.json
|
|
4
|
+
*/
|
|
5
|
+
/** Trust Task type URI. */
|
|
6
|
+
export const TYPE_URI = "https://trusttasks.org/spec/vtc/join-requests/wallet-session/status/0.1";
|
|
7
|
+
/** Trust Task response type URI (request type URI + "#response"). */
|
|
8
|
+
export const RESPONSE_TYPE_URI = "https://trusttasks.org/spec/vtc/join-requests/wallet-session/status/0.1#response";
|
|
9
|
+
/**
|
|
10
|
+
* This specification's payload schema, as a value.
|
|
11
|
+
*
|
|
12
|
+
* SPEC.md §7.2 item 2 is performed against this. It is shipped as data
|
|
13
|
+
* rather than only as a `.json` file because TypeScript types are erased
|
|
14
|
+
* at runtime: without a schema a consumer has nothing to validate, and
|
|
15
|
+
* every REQUIRED payload member is optional in practice. Cross-file
|
|
16
|
+
* `$ref`s are already inlined, so it needs no resolver.
|
|
17
|
+
*/
|
|
18
|
+
export const PAYLOAD_SCHEMA = {
|
|
19
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
20
|
+
"$id": "https://trusttasks.org/spec/vtc/join-requests/wallet-session/status/0.1",
|
|
21
|
+
"title": "VTC Join-Requests Wallet Session Status — payload",
|
|
22
|
+
"description": "An applicant reads the state of a wallet presentation session they opened with vtc/join-requests/wallet-session/start, and, once a wallet has answered, what the presentation established. The applicant is the document proof's signer. The outer document members are owned by the framework — SPEC §6.3.",
|
|
23
|
+
"type": "object",
|
|
24
|
+
"additionalProperties": false,
|
|
25
|
+
"required": [
|
|
26
|
+
"sessionId"
|
|
27
|
+
],
|
|
28
|
+
"properties": {
|
|
29
|
+
"sessionId": {
|
|
30
|
+
"type": "string",
|
|
31
|
+
"minLength": 16,
|
|
32
|
+
"maxLength": 128,
|
|
33
|
+
"description": "The session to read, as vtc/join-requests/wallet-session/start returned it."
|
|
34
|
+
},
|
|
35
|
+
"ext": {
|
|
36
|
+
"$ref": "#/$defs/Ext"
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
"$defs": {
|
|
40
|
+
"PresentedCredential": {
|
|
41
|
+
"title": "PresentedCredential",
|
|
42
|
+
"type": "object",
|
|
43
|
+
"additionalProperties": false,
|
|
44
|
+
"required": [
|
|
45
|
+
"credentialQueryId",
|
|
46
|
+
"format",
|
|
47
|
+
"issuer"
|
|
48
|
+
],
|
|
49
|
+
"description": "One credential the wallet presented, described without any of its claim values.",
|
|
50
|
+
"properties": {
|
|
51
|
+
"credentialQueryId": {
|
|
52
|
+
"type": "string",
|
|
53
|
+
"minLength": 1,
|
|
54
|
+
"maxLength": 128,
|
|
55
|
+
"description": "The `id` of the DCQL credential query this credential was presented for — the key it arrived under in the OpenID4VP `vp_token`."
|
|
56
|
+
},
|
|
57
|
+
"format": {
|
|
58
|
+
"type": "string",
|
|
59
|
+
"minLength": 1,
|
|
60
|
+
"maxLength": 64,
|
|
61
|
+
"description": "The credential format identifier, as OpenID4VP names it (`dc+sd-jwt`, `mso_mdoc`). Carried verbatim."
|
|
62
|
+
},
|
|
63
|
+
"issuer": {
|
|
64
|
+
"type": "string",
|
|
65
|
+
"minLength": 1,
|
|
66
|
+
"maxLength": 2048,
|
|
67
|
+
"description": "The identifier of the credential's issuer as the community verified it — a DID, or for an issuer identified by an X.509 certificate, the certificate subject or hash the community's policy names it by."
|
|
68
|
+
},
|
|
69
|
+
"vct": {
|
|
70
|
+
"type": "string",
|
|
71
|
+
"minLength": 1,
|
|
72
|
+
"maxLength": 2048,
|
|
73
|
+
"description": "The SD-JWT VC credential type (`vct`). Present for SD-JWT VC credentials."
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
"Evidence": {
|
|
78
|
+
"title": "Evidence",
|
|
79
|
+
"type": "object",
|
|
80
|
+
"additionalProperties": false,
|
|
81
|
+
"required": [
|
|
82
|
+
"satisfied",
|
|
83
|
+
"holder",
|
|
84
|
+
"credentials"
|
|
85
|
+
],
|
|
86
|
+
"description": "What a verified wallet presentation established. Never claim values.",
|
|
87
|
+
"properties": {
|
|
88
|
+
"satisfied": {
|
|
89
|
+
"type": "boolean",
|
|
90
|
+
"description": "Whether the presentation satisfies the criterion's DCQL query. Satisfying the query is not admission: the community still decides the join under the criterion's `admission`."
|
|
91
|
+
},
|
|
92
|
+
"holder": {
|
|
93
|
+
"type": "string",
|
|
94
|
+
"minLength": 1,
|
|
95
|
+
"maxLength": 2048,
|
|
96
|
+
"description": "The identifier of the key that held the presented credentials — for an SD-JWT VC, the `did:key` of its `cnf` key. Recorded beside the applicant DID, never as it."
|
|
97
|
+
},
|
|
98
|
+
"credentials": {
|
|
99
|
+
"type": "array",
|
|
100
|
+
"minItems": 1,
|
|
101
|
+
"maxItems": 32,
|
|
102
|
+
"items": {
|
|
103
|
+
"$ref": "#/$defs/PresentedCredential"
|
|
104
|
+
},
|
|
105
|
+
"description": "The credentials presented, one entry each."
|
|
106
|
+
},
|
|
107
|
+
"heldUntil": {
|
|
108
|
+
"type": "string",
|
|
109
|
+
"format": "date-time",
|
|
110
|
+
"description": "When evidence not yet recorded on a join request is discarded if the applicant has not submitted under the session's criterion. Absent when the evidence is recorded on a request."
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
},
|
|
114
|
+
"Response": {
|
|
115
|
+
"$anchor": "response",
|
|
116
|
+
"title": "VTC Join-Requests Wallet Session Status — response payload",
|
|
117
|
+
"type": "object",
|
|
118
|
+
"additionalProperties": false,
|
|
119
|
+
"required": [
|
|
120
|
+
"sessionId",
|
|
121
|
+
"state",
|
|
122
|
+
"expiresAt"
|
|
123
|
+
],
|
|
124
|
+
"properties": {
|
|
125
|
+
"sessionId": {
|
|
126
|
+
"type": "string",
|
|
127
|
+
"minLength": 16,
|
|
128
|
+
"maxLength": 128
|
|
129
|
+
},
|
|
130
|
+
"state": {
|
|
131
|
+
"type": "string",
|
|
132
|
+
"enum": [
|
|
133
|
+
"awaitingWallet",
|
|
134
|
+
"requestRetrieved",
|
|
135
|
+
"presented",
|
|
136
|
+
"refused",
|
|
137
|
+
"expired"
|
|
138
|
+
],
|
|
139
|
+
"description": "`awaitingWallet`: no wallet has fetched the request object. `requestRetrieved`: a wallet has fetched it and not yet answered. `presented`: a wallet answered and the presentation verified; see `evidence`. `refused`: a wallet answered and the community did not accept the answer, or the wallet declined; see `reason`. `expired`: the session closed unanswered."
|
|
140
|
+
},
|
|
141
|
+
"expiresAt": {
|
|
142
|
+
"type": "string",
|
|
143
|
+
"format": "date-time",
|
|
144
|
+
"description": "When the session closes, or closed, if unanswered."
|
|
145
|
+
},
|
|
146
|
+
"requestId": {
|
|
147
|
+
"type": "string",
|
|
148
|
+
"minLength": 1,
|
|
149
|
+
"maxLength": 128,
|
|
150
|
+
"description": "The join request the session's evidence is recorded on. Present when the session was bound to one, or its evidence has since been attached to one by a submission."
|
|
151
|
+
},
|
|
152
|
+
"evidence": {
|
|
153
|
+
"$ref": "#/$defs/Evidence",
|
|
154
|
+
"description": "Present only when `state` is `presented`."
|
|
155
|
+
},
|
|
156
|
+
"reason": {
|
|
157
|
+
"type": "string",
|
|
158
|
+
"enum": [
|
|
159
|
+
"presentationInvalid",
|
|
160
|
+
"queryNotSatisfied",
|
|
161
|
+
"issuerNotTrusted",
|
|
162
|
+
"statusNotValid",
|
|
163
|
+
"walletDeclined"
|
|
164
|
+
],
|
|
165
|
+
"description": "Why the session ended `refused`. `presentationInvalid`: the response or a presentation failed verification — decryption, `state`, signature, key binding, nonce or audience. `queryNotSatisfied`: the presentations verified but do not satisfy the query. `issuerNotTrusted`: a credential's issuer is not one the criterion accepts. `statusNotValid`: a credential's status is revoked or suspended, or could not be read. `walletDeclined`: the wallet answered with an OpenID4VP error, such as `access_denied`. Present only when `state` is `refused`."
|
|
166
|
+
},
|
|
167
|
+
"ext": {
|
|
168
|
+
"$ref": "#/$defs/Ext"
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
},
|
|
172
|
+
"Ext": {
|
|
173
|
+
"title": "Ext",
|
|
174
|
+
"description": "Vendor-namespaced extension object per SPEC.md §4.5.1. Each immediate key MUST be a reverse-DNS namespace; structure under each namespace is opaque to the framework.",
|
|
175
|
+
"type": "object",
|
|
176
|
+
"minProperties": 1,
|
|
177
|
+
"additionalProperties": true,
|
|
178
|
+
"propertyNames": {
|
|
179
|
+
"pattern": "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$"
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
};
|
|
184
|
+
/** As {@link PAYLOAD_SCHEMA}, for the success-response variant. */
|
|
185
|
+
export const RESPONSE_PAYLOAD_SCHEMA = {
|
|
186
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
187
|
+
"$ref": "#/$defs/Response",
|
|
188
|
+
"$defs": {
|
|
189
|
+
"PresentedCredential": {
|
|
190
|
+
"title": "PresentedCredential",
|
|
191
|
+
"type": "object",
|
|
192
|
+
"additionalProperties": false,
|
|
193
|
+
"required": [
|
|
194
|
+
"credentialQueryId",
|
|
195
|
+
"format",
|
|
196
|
+
"issuer"
|
|
197
|
+
],
|
|
198
|
+
"description": "One credential the wallet presented, described without any of its claim values.",
|
|
199
|
+
"properties": {
|
|
200
|
+
"credentialQueryId": {
|
|
201
|
+
"type": "string",
|
|
202
|
+
"minLength": 1,
|
|
203
|
+
"maxLength": 128,
|
|
204
|
+
"description": "The `id` of the DCQL credential query this credential was presented for — the key it arrived under in the OpenID4VP `vp_token`."
|
|
205
|
+
},
|
|
206
|
+
"format": {
|
|
207
|
+
"type": "string",
|
|
208
|
+
"minLength": 1,
|
|
209
|
+
"maxLength": 64,
|
|
210
|
+
"description": "The credential format identifier, as OpenID4VP names it (`dc+sd-jwt`, `mso_mdoc`). Carried verbatim."
|
|
211
|
+
},
|
|
212
|
+
"issuer": {
|
|
213
|
+
"type": "string",
|
|
214
|
+
"minLength": 1,
|
|
215
|
+
"maxLength": 2048,
|
|
216
|
+
"description": "The identifier of the credential's issuer as the community verified it — a DID, or for an issuer identified by an X.509 certificate, the certificate subject or hash the community's policy names it by."
|
|
217
|
+
},
|
|
218
|
+
"vct": {
|
|
219
|
+
"type": "string",
|
|
220
|
+
"minLength": 1,
|
|
221
|
+
"maxLength": 2048,
|
|
222
|
+
"description": "The SD-JWT VC credential type (`vct`). Present for SD-JWT VC credentials."
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
},
|
|
226
|
+
"Evidence": {
|
|
227
|
+
"title": "Evidence",
|
|
228
|
+
"type": "object",
|
|
229
|
+
"additionalProperties": false,
|
|
230
|
+
"required": [
|
|
231
|
+
"satisfied",
|
|
232
|
+
"holder",
|
|
233
|
+
"credentials"
|
|
234
|
+
],
|
|
235
|
+
"description": "What a verified wallet presentation established. Never claim values.",
|
|
236
|
+
"properties": {
|
|
237
|
+
"satisfied": {
|
|
238
|
+
"type": "boolean",
|
|
239
|
+
"description": "Whether the presentation satisfies the criterion's DCQL query. Satisfying the query is not admission: the community still decides the join under the criterion's `admission`."
|
|
240
|
+
},
|
|
241
|
+
"holder": {
|
|
242
|
+
"type": "string",
|
|
243
|
+
"minLength": 1,
|
|
244
|
+
"maxLength": 2048,
|
|
245
|
+
"description": "The identifier of the key that held the presented credentials — for an SD-JWT VC, the `did:key` of its `cnf` key. Recorded beside the applicant DID, never as it."
|
|
246
|
+
},
|
|
247
|
+
"credentials": {
|
|
248
|
+
"type": "array",
|
|
249
|
+
"minItems": 1,
|
|
250
|
+
"maxItems": 32,
|
|
251
|
+
"items": {
|
|
252
|
+
"$ref": "#/$defs/PresentedCredential"
|
|
253
|
+
},
|
|
254
|
+
"description": "The credentials presented, one entry each."
|
|
255
|
+
},
|
|
256
|
+
"heldUntil": {
|
|
257
|
+
"type": "string",
|
|
258
|
+
"format": "date-time",
|
|
259
|
+
"description": "When evidence not yet recorded on a join request is discarded if the applicant has not submitted under the session's criterion. Absent when the evidence is recorded on a request."
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
},
|
|
263
|
+
"Response": {
|
|
264
|
+
"$anchor": "response",
|
|
265
|
+
"title": "VTC Join-Requests Wallet Session Status — response payload",
|
|
266
|
+
"type": "object",
|
|
267
|
+
"additionalProperties": false,
|
|
268
|
+
"required": [
|
|
269
|
+
"sessionId",
|
|
270
|
+
"state",
|
|
271
|
+
"expiresAt"
|
|
272
|
+
],
|
|
273
|
+
"properties": {
|
|
274
|
+
"sessionId": {
|
|
275
|
+
"type": "string",
|
|
276
|
+
"minLength": 16,
|
|
277
|
+
"maxLength": 128
|
|
278
|
+
},
|
|
279
|
+
"state": {
|
|
280
|
+
"type": "string",
|
|
281
|
+
"enum": [
|
|
282
|
+
"awaitingWallet",
|
|
283
|
+
"requestRetrieved",
|
|
284
|
+
"presented",
|
|
285
|
+
"refused",
|
|
286
|
+
"expired"
|
|
287
|
+
],
|
|
288
|
+
"description": "`awaitingWallet`: no wallet has fetched the request object. `requestRetrieved`: a wallet has fetched it and not yet answered. `presented`: a wallet answered and the presentation verified; see `evidence`. `refused`: a wallet answered and the community did not accept the answer, or the wallet declined; see `reason`. `expired`: the session closed unanswered."
|
|
289
|
+
},
|
|
290
|
+
"expiresAt": {
|
|
291
|
+
"type": "string",
|
|
292
|
+
"format": "date-time",
|
|
293
|
+
"description": "When the session closes, or closed, if unanswered."
|
|
294
|
+
},
|
|
295
|
+
"requestId": {
|
|
296
|
+
"type": "string",
|
|
297
|
+
"minLength": 1,
|
|
298
|
+
"maxLength": 128,
|
|
299
|
+
"description": "The join request the session's evidence is recorded on. Present when the session was bound to one, or its evidence has since been attached to one by a submission."
|
|
300
|
+
},
|
|
301
|
+
"evidence": {
|
|
302
|
+
"$ref": "#/$defs/Evidence",
|
|
303
|
+
"description": "Present only when `state` is `presented`."
|
|
304
|
+
},
|
|
305
|
+
"reason": {
|
|
306
|
+
"type": "string",
|
|
307
|
+
"enum": [
|
|
308
|
+
"presentationInvalid",
|
|
309
|
+
"queryNotSatisfied",
|
|
310
|
+
"issuerNotTrusted",
|
|
311
|
+
"statusNotValid",
|
|
312
|
+
"walletDeclined"
|
|
313
|
+
],
|
|
314
|
+
"description": "Why the session ended `refused`. `presentationInvalid`: the response or a presentation failed verification — decryption, `state`, signature, key binding, nonce or audience. `queryNotSatisfied`: the presentations verified but do not satisfy the query. `issuerNotTrusted`: a credential's issuer is not one the criterion accepts. `statusNotValid`: a credential's status is revoked or suspended, or could not be read. `walletDeclined`: the wallet answered with an OpenID4VP error, such as `access_denied`. Present only when `state` is `refused`."
|
|
315
|
+
},
|
|
316
|
+
"ext": {
|
|
317
|
+
"$ref": "#/$defs/Ext"
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
},
|
|
321
|
+
"Ext": {
|
|
322
|
+
"title": "Ext",
|
|
323
|
+
"description": "Vendor-namespaced extension object per SPEC.md §4.5.1. Each immediate key MUST be a reverse-DNS namespace; structure under each namespace is opaque to the framework.",
|
|
324
|
+
"type": "object",
|
|
325
|
+
"minProperties": 1,
|
|
326
|
+
"additionalProperties": true,
|
|
327
|
+
"propertyNames": {
|
|
328
|
+
"pattern": "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$"
|
|
329
|
+
}
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
};
|
|
333
|
+
/**
|
|
334
|
+
* SPEC.md §7.2 policy for the request variant, from this specification's
|
|
335
|
+
* front matter. Pass to `consumeInbound` — items 5b, 7 and 8 are
|
|
336
|
+
* per-specification and cannot be derived from the document alone, and
|
|
337
|
+
* item 2 needs the schema this carries.
|
|
338
|
+
*/
|
|
339
|
+
export const SPEC = {
|
|
340
|
+
typeUri: TYPE_URI,
|
|
341
|
+
isBearer: false,
|
|
342
|
+
isProofRequired: true,
|
|
343
|
+
isRecipientRequired: true,
|
|
344
|
+
isIssuedAtRequired: false,
|
|
345
|
+
payloadSchema: PAYLOAD_SCHEMA,
|
|
346
|
+
};
|
|
347
|
+
/**
|
|
348
|
+
* SPEC.md §7.2 policy for the success-response variant. `isRecipientRequired`
|
|
349
|
+
* tracks the *issuer* party's requirement because a response swaps the
|
|
350
|
+
* parties (§7.3 item 5).
|
|
351
|
+
*/
|
|
352
|
+
export const RESPONSE_SPEC = {
|
|
353
|
+
typeUri: RESPONSE_TYPE_URI,
|
|
354
|
+
isBearer: false,
|
|
355
|
+
isProofRequired: true,
|
|
356
|
+
isRecipientRequired: true,
|
|
357
|
+
isIssuedAtRequired: false,
|
|
358
|
+
payloadSchema: RESPONSE_PAYLOAD_SCHEMA,
|
|
359
|
+
};
|
|
360
|
+
//# sourceMappingURL=payload.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"payload.js","sourceRoot":"","sources":["../../../../../../src/vtc/join-requests/wallet-session/status/0.1/payload.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -443,6 +443,8 @@ export type Capability_DeviceV0_1 =
|
|
|
443
443
|
| "room-open"
|
|
444
444
|
| "key-export"
|
|
445
445
|
| "sign-sshsig"
|
|
446
|
+
| "sign-jws"
|
|
447
|
+
| "sign-csr"
|
|
446
448
|
| "external-accounts-manage"
|
|
447
449
|
| "external-auth-use";
|
|
448
450
|
/**
|
|
@@ -465,6 +467,8 @@ export type Capability_DeviceV0_2 =
|
|
|
465
467
|
| "roomOpen"
|
|
466
468
|
| "keyExport"
|
|
467
469
|
| "signSshsig"
|
|
470
|
+
| "signJws"
|
|
471
|
+
| "signCsr"
|
|
468
472
|
| "externalAccountsManage"
|
|
469
473
|
| "externalAuthUse";
|
|
470
474
|
/**
|
|
@@ -5673,6 +5677,59 @@ export interface Field {
|
|
|
5673
5677
|
[k: string]: unknown | undefined;
|
|
5674
5678
|
};
|
|
5675
5679
|
}
|
|
5680
|
+
/**
|
|
5681
|
+
* The `file` member of a sealed record body: everything that describes a file, sealed with the record, signed by the record's author, and never seen by the host. Defined here so that clients interoperate; no host task carries it, because the host receives only ciphertext.
|
|
5682
|
+
*
|
|
5683
|
+
* **Byte encodings.** In every derivation below, `fileId` is its **32 decoded bytes**, never its base64url text; `roomId` is the **UTF-8 bytes** of the room identifier exactly as it appears on the wire; string constants are their ASCII bytes; `u8`, `u32be` and `u64be` are unsigned integers of that width, big-endian. Epochs are unsigned 64-bit on the wire. An implementation that holds epochs in a narrower type **MUST** refuse a value it cannot represent with `malformedRequest` (or, reading a manifest, refuse the file), and **MUST NOT** truncate it.
|
|
5684
|
+
*
|
|
5685
|
+
* **The file key.** `file_key = HKDF-SHA256(ikm = storage_key(epoch), salt = fileId, info = "openvtc/room/file/v1" || roomId || u64be(epoch))`, where `storage_key(epoch)` is the room's per-epoch storage key, the one records are sealed under. It is derived per file and never stored. It is bound to the room and the epoch, so a key released for one room cannot open a blob relocated from another, and releasing it exposes one file and nothing else.
|
|
5686
|
+
*
|
|
5687
|
+
* **Padding.** With `padding: "padme"`, the plaintext of length `L = size` is extended with zero bytes to `padme(L)`: for `L < 2`, `padme(L) = L`; otherwise `E = floor(log2 L)`, `S = floor(log2 E) + 1`, `z = E − S`, `mask = 2^z − 1`, and `padme(L) = (L + mask) & ~mask`. The padded length is `padme(size)`; without padding it is `size`. Padding bytes **MUST** be zero.
|
|
5688
|
+
*
|
|
5689
|
+
* **The STREAM construction.** The padded plaintext is cut into `segmentSize`-byte segments, the last holding the remainder; an empty plaintext is one empty final segment. Segment `i` is sealed with ChaCha20-Poly1305 under `file_key`, with nonce `u32be(0) || u64be(i)` and associated data `"openvtc/room/file/v1" || roomId || fileId || u64be(epoch) || u64be(i) || u8(final)`, where `final` is 1 on the last segment and 0 on every other. A host that truncates, reorders or splices ciphertext produces an authentication failure, never a shorter or rearranged file. The nonces are counters, so a `file_key` MUST NOT seal two different files; a fresh random `fileId` is what guarantees it. Each sealed segment is one transfer chunk of the blob (BlobManifest), so `segmentSize + 16` is the blob's `chunks.chunkSize`, and an empty file is one 16-byte chunk.
|
|
5690
|
+
*
|
|
5691
|
+
* **Reading.** A reader opens the record, derives or obtains the file key, and **MUST**, before trusting a byte:
|
|
5692
|
+
* - check that the blob's `chunks.chunkSize` equals `segmentSize + 16` and that `chunks.chunkCount` equals `max(1, ceil(paddedLength / segmentSize))`, and refuse the file otherwise;
|
|
5693
|
+
* - decrypt every segment in order, refusing the file on any authentication failure or on a final flag anywhere but the last segment;
|
|
5694
|
+
* - check that the decrypted length equals the padded length, that every padding byte is zero, and, after removing the padding, that the plaintext matches `digest`.
|
|
5695
|
+
*
|
|
5696
|
+
* A reader **MUST** refuse a file that fails any check, and **MUST NOT** present it with a warning instead. A reader that streams **MUST NOT** treat the plaintext as received — save it under its final name, render it, or hand it to another component — until the digest has verified; it writes to a temporary destination and discards that destination on a mismatch.
|
|
5697
|
+
*/
|
|
5698
|
+
export interface FileManifest {
|
|
5699
|
+
/**
|
|
5700
|
+
* 32 random bytes, base64url without padding, minted by the uploader for this file and never reused. The salt of the file key.
|
|
5701
|
+
*/
|
|
5702
|
+
fileId: string;
|
|
5703
|
+
/**
|
|
5704
|
+
* The file's name as the uploader gave it. Sealed: the host never sees it. Readers MUST treat it as untrusted text: strip path separators before using it as a local file name, and never interpret it as markup.
|
|
5705
|
+
*/
|
|
5706
|
+
name: string;
|
|
5707
|
+
/**
|
|
5708
|
+
* IANA media type, without parameters. Advisory: a reader decides how to render from the bytes and its own policy, never from this alone.
|
|
5709
|
+
*/
|
|
5710
|
+
mediaType?: string;
|
|
5711
|
+
/**
|
|
5712
|
+
* Plaintext bytes, before padding. The decrypted length is `padme(size)` with `padme` padding and `size` without.
|
|
5713
|
+
*/
|
|
5714
|
+
size: number;
|
|
5715
|
+
/**
|
|
5716
|
+
* Digest of the plaintext bytes. Signed, with the rest of the record body, by the record's author, so a reader that verifies it knows which member put exactly these bytes there.
|
|
5717
|
+
*/
|
|
5718
|
+
digest: DigestMultibase;
|
|
5719
|
+
/**
|
|
5720
|
+
* The epoch whose storage key the file key derives from. Usually the record's own epoch; a record rewritten under a later epoch that keeps the same blob keeps the file's original epoch here. Unsigned 64-bit; see Byte encodings.
|
|
5721
|
+
*/
|
|
5722
|
+
epoch: number;
|
|
5723
|
+
/**
|
|
5724
|
+
* Plaintext bytes per STREAM segment: the transfer chunk size less the 16-byte tag, so that one sealed segment is one chunk.
|
|
5725
|
+
*/
|
|
5726
|
+
segmentSize: number;
|
|
5727
|
+
/**
|
|
5728
|
+
* Whether the plaintext was padded before sealing, so that ciphertext sizes do not fingerprint known documents. `padme`: zero bytes appended to reach `padme(size)`, the formula above. Absent means `none`. The padding is inside the final segments, and a reader checks it is zero and removes it by truncating to `size`.
|
|
5729
|
+
*/
|
|
5730
|
+
padding?: "none" | "padme";
|
|
5731
|
+
blobRef: BlobRef;
|
|
5732
|
+
}
|
|
5676
5733
|
/**
|
|
5677
5734
|
* A person's account on one forge. `id` is authoritative; `login` is for display only, because logins can be renamed and re-registered.
|
|
5678
5735
|
*/
|
|
@@ -250,6 +250,8 @@ export const PAYLOAD_SCHEMA = {
|
|
|
250
250
|
"room-open",
|
|
251
251
|
"key-export",
|
|
252
252
|
"sign-sshsig",
|
|
253
|
+
"sign-jws",
|
|
254
|
+
"sign-csr",
|
|
253
255
|
"external-accounts-manage",
|
|
254
256
|
"external-auth-use"
|
|
255
257
|
],
|
|
@@ -592,6 +594,8 @@ export const RESPONSE_PAYLOAD_SCHEMA = {
|
|
|
592
594
|
"room-open",
|
|
593
595
|
"key-export",
|
|
594
596
|
"sign-sshsig",
|
|
597
|
+
"sign-jws",
|
|
598
|
+
"sign-csr",
|
|
595
599
|
"external-accounts-manage",
|
|
596
600
|
"external-auth-use"
|
|
597
601
|
],
|
|
@@ -250,6 +250,8 @@ export const PAYLOAD_SCHEMA = {
|
|
|
250
250
|
"roomOpen",
|
|
251
251
|
"keyExport",
|
|
252
252
|
"signSshsig",
|
|
253
|
+
"signJws",
|
|
254
|
+
"signCsr",
|
|
253
255
|
"externalAccountsManage",
|
|
254
256
|
"externalAuthUse"
|
|
255
257
|
],
|
|
@@ -592,6 +594,8 @@ export const RESPONSE_PAYLOAD_SCHEMA = {
|
|
|
592
594
|
"roomOpen",
|
|
593
595
|
"keyExport",
|
|
594
596
|
"signSshsig",
|
|
597
|
+
"signJws",
|
|
598
|
+
"signCsr",
|
|
595
599
|
"externalAccountsManage",
|
|
596
600
|
"externalAuthUse"
|
|
597
601
|
],
|
|
@@ -218,6 +218,8 @@ export const PAYLOAD_SCHEMA = {
|
|
|
218
218
|
"room-open",
|
|
219
219
|
"key-export",
|
|
220
220
|
"sign-sshsig",
|
|
221
|
+
"sign-jws",
|
|
222
|
+
"sign-csr",
|
|
221
223
|
"external-accounts-manage",
|
|
222
224
|
"external-auth-use"
|
|
223
225
|
],
|
|
@@ -550,6 +552,8 @@ export const RESPONSE_PAYLOAD_SCHEMA = {
|
|
|
550
552
|
"room-open",
|
|
551
553
|
"key-export",
|
|
552
554
|
"sign-sshsig",
|
|
555
|
+
"sign-jws",
|
|
556
|
+
"sign-csr",
|
|
553
557
|
"external-accounts-manage",
|
|
554
558
|
"external-auth-use"
|
|
555
559
|
],
|
|
@@ -218,6 +218,8 @@ export const PAYLOAD_SCHEMA = {
|
|
|
218
218
|
"roomOpen",
|
|
219
219
|
"keyExport",
|
|
220
220
|
"signSshsig",
|
|
221
|
+
"signJws",
|
|
222
|
+
"signCsr",
|
|
221
223
|
"externalAccountsManage",
|
|
222
224
|
"externalAuthUse"
|
|
223
225
|
],
|
|
@@ -550,6 +552,8 @@ export const RESPONSE_PAYLOAD_SCHEMA = {
|
|
|
550
552
|
"roomOpen",
|
|
551
553
|
"keyExport",
|
|
552
554
|
"signSshsig",
|
|
555
|
+
"signJws",
|
|
556
|
+
"signCsr",
|
|
553
557
|
"externalAccountsManage",
|
|
554
558
|
"externalAuthUse"
|
|
555
559
|
],
|
package/src/index.ts
CHANGED
|
@@ -306,6 +306,8 @@ export * as KeysRename_v0_1 from "./keys/rename/0.1/payload.js";
|
|
|
306
306
|
export * as KeysRevoke_v0_1 from "./keys/revoke/0.1/payload.js";
|
|
307
307
|
export * as KeysSetExportability_v0_1 from "./keys/set-exportability/0.1/payload.js";
|
|
308
308
|
export * as KeysShow_v0_1 from "./keys/show/0.1/payload.js";
|
|
309
|
+
export * as KeysSignCsr_v0_1 from "./keys/sign-csr/0.1/payload.js";
|
|
310
|
+
export * as KeysSignJws_v0_1 from "./keys/sign-jws/0.1/payload.js";
|
|
309
311
|
export * as KeysSignSshsig_v0_1 from "./keys/sign-sshsig/0.1/payload.js";
|
|
310
312
|
export * as KeysSign_v0_1 from "./keys/sign/0.1/payload.js";
|
|
311
313
|
export * as MediatorOpsShared_v0_1 from "./messaging/_shared/0.1/mediator-ops.js";
|
|
@@ -736,6 +738,8 @@ export * as VtcJoinRequestsSubmit_v0_2 from "./vtc/join-requests/submit/0.2/payl
|
|
|
736
738
|
export * as VtcJoinRequestsSubmit_v0_3 from "./vtc/join-requests/submit/0.3/payload.js";
|
|
737
739
|
export * as VtcJoinRequestsSupplement_v0_1 from "./vtc/join-requests/supplement/0.1/payload.js";
|
|
738
740
|
export * as VtcJoinRequestsVettingShow_v0_1 from "./vtc/join-requests/vetting/show/0.1/payload.js";
|
|
741
|
+
export * as VtcJoinRequestsWalletSessionStart_v0_1 from "./vtc/join-requests/wallet-session/start/0.1/payload.js";
|
|
742
|
+
export * as VtcJoinRequestsWalletSessionStatus_v0_1 from "./vtc/join-requests/wallet-session/status/0.1/payload.js";
|
|
739
743
|
export * as VtcJoinRequestsWithdraw_v0_1 from "./vtc/join-requests/withdraw/0.1/payload.js";
|
|
740
744
|
export * as VtcMembersAdminRemove_v0_1 from "./vtc/members/admin-remove/0.1/payload.js";
|
|
741
745
|
export * as VtcMembersAuthorityReducedNotice_v0_1 from "./vtc/members/authority-reduced-notice/0.1/payload.js";
|