1id 0.5.0 → 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/dist/auth.d.ts CHANGED
@@ -1,31 +1,32 @@
1
1
  /**
2
2
  * OAuth2 token management for the 1id.com Node.js SDK.
3
3
  *
4
- * After enrollment, agents authenticate using standard OAuth2
5
- * client_credentials grant. No TPM operations needed for daily use.
6
- *
7
- * This module handles:
8
- * - Token acquisition (client_credentials grant)
9
- * - Token caching (in-memory, with expiry awareness)
10
- * - Token refresh
11
- * - Authorization header formatting
4
+ * After enrollment, agents authenticate via hardware challenge-response
5
+ * (TPM for sovereign/virtual, PIV for portable) or OAuth2 client_credentials
6
+ * grant (declared tier only).
7
+ *
8
+ * SECURITY RULE: Hardware-tier identities NEVER fall back to bare
9
+ * client_credentials. If the hardware device is absent, get_token() throws
10
+ * HardwareDeviceNotPresentError. This is intentional: a stolen
11
+ * credentials.json is useless without the physical device.
12
12
  */
13
13
  import { type StoredCredentials } from "./credentials.js";
14
14
  import type { Token } from "./identity.js";
15
15
  /**
16
16
  * Get a valid OAuth2 access token, refreshing if needed.
17
17
  *
18
- * This is the primary authentication method for daily use. It uses
19
- * the OAuth2 client_credentials grant with the credentials stored
20
- * during enrollment.
18
+ * For hardware-backed tiers (sovereign, portable, virtual), this invokes
19
+ * the hardware challenge-response flow via the Go binary. The physical
20
+ * device must be present. If it is absent, HardwareDeviceNotPresentError
21
+ * is thrown -- there is NO fallback to bare client_credentials.
21
22
  *
22
- * Tokens are cached in memory and automatically refreshed when they
23
- * are within 60s of expiry.
23
+ * For declared tier, the standard OAuth2 client_credentials grant is used.
24
24
  *
25
25
  * @param force_refresh If true, always fetch a new token even if cached.
26
26
  * @param credentials Optional pre-loaded credentials.
27
27
  * @returns A valid Token object.
28
28
  * @throws NotEnrolledError if no credentials file exists.
29
+ * @throws HardwareDeviceNotPresentError if hardware tier and device is absent.
29
30
  * @throws AuthenticationError if the token request fails.
30
31
  * @throws NetworkError if the token endpoint cannot be reached.
31
32
  */
@@ -52,4 +53,11 @@ export declare function clear_cached_token(): void;
52
53
  * @returns A valid Token object.
53
54
  */
54
55
  export declare function authenticate_with_tpm(identity_id?: string | null, ak_handle?: string | null, api_base_url?: string | null, credentials?: StoredCredentials | null): Promise<Token>;
56
+ /**
57
+ * Authenticate using a PIV device (YubiKey) -- passwordless sign-in.
58
+ *
59
+ * Same challenge-response flow as TPM but uses PIV slot 9a ECDSA signing.
60
+ * No PIN, no elevation, no human interaction required.
61
+ */
62
+ export declare function authenticate_with_piv(identity_id?: string | null, api_base_url?: string | null, credentials?: StoredCredentials | null): Promise<Token>;
55
63
  //# sourceMappingURL=auth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,KAAK,iBAAiB,EAAoB,MAAM,kBAAkB,CAAC;AAE5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAU3C;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,SAAS,CAC7B,aAAa,GAAE,OAAe,EAC9B,WAAW,CAAC,EAAE,iBAAiB,GAAG,IAAI,GACrC,OAAO,CAAC,KAAK,CAAC,CAmBhB;AA0CD;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAMD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,qBAAqB,CACzC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,EAC3B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,EACzB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,EAC5B,WAAW,CAAC,EAAE,iBAAiB,GAAG,IAAI,GACrC,OAAO,CAAC,KAAK,CAAC,CA2FhB"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,KAAK,iBAAiB,EAAoB,MAAM,kBAAkB,CAAC;AAE5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAY3C;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,SAAS,CAC7B,aAAa,GAAE,OAAe,EAC9B,WAAW,CAAC,EAAE,iBAAiB,GAAG,IAAI,GACrC,OAAO,CAAC,KAAK,CAAC,CAqBhB;AA2ED;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAMD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,qBAAqB,CACzC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,EAC3B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,EACzB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,EAC5B,WAAW,CAAC,EAAE,iBAAiB,GAAG,IAAI,GACrC,OAAO,CAAC,KAAK,CAAC,CA2FhB;AAGD;;;;;GAKG;AACH,wBAAsB,qBAAqB,CACzC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,EAC3B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,EAC5B,WAAW,CAAC,EAAE,iBAAiB,GAAG,IAAI,GACrC,OAAO,CAAC,KAAK,CAAC,CA4EhB"}
package/dist/auth.js CHANGED
@@ -1,57 +1,91 @@
1
1
  /**
2
2
  * OAuth2 token management for the 1id.com Node.js SDK.
3
3
  *
4
- * After enrollment, agents authenticate using standard OAuth2
5
- * client_credentials grant. No TPM operations needed for daily use.
4
+ * After enrollment, agents authenticate via hardware challenge-response
5
+ * (TPM for sovereign/virtual, PIV for portable) or OAuth2 client_credentials
6
+ * grant (declared tier only).
6
7
  *
7
- * This module handles:
8
- * - Token acquisition (client_credentials grant)
9
- * - Token caching (in-memory, with expiry awareness)
10
- * - Token refresh
11
- * - Authorization header formatting
8
+ * SECURITY RULE: Hardware-tier identities NEVER fall back to bare
9
+ * client_credentials. If the hardware device is absent, get_token() throws
10
+ * HardwareDeviceNotPresentError. This is intentional: a stolen
11
+ * credentials.json is useless without the physical device.
12
12
  */
13
13
  import { load_credentials } from "./credentials.js";
14
- import { AuthenticationError, NetworkError } from "./exceptions.js";
14
+ import { AuthenticationError, HardwareDeviceNotPresentError, NetworkError } from "./exceptions.js";
15
15
  import { OneIDAPIClient } from "./client.js";
16
- // -- Configuration --
17
- const TOKEN_REFRESH_MARGIN_MILLISECONDS = 60_000; // Refresh tokens 60s before expiry
16
+ const TOKEN_REFRESH_MARGIN_MILLISECONDS = 60_000;
18
17
  const TOKEN_REQUEST_TIMEOUT_MILLISECONDS = 15_000;
19
- // -- Module-level token cache --
18
+ const TIERS_REQUIRING_HARDWARE_AUTH = new Set(["sovereign", "portable", "virtual"]);
19
+ const TIERS_USING_TPM = new Set(["sovereign", "virtual"]);
20
+ const TIERS_USING_PIV = new Set(["portable"]);
20
21
  let cached_token = null;
21
22
  /**
22
23
  * Get a valid OAuth2 access token, refreshing if needed.
23
24
  *
24
- * This is the primary authentication method for daily use. It uses
25
- * the OAuth2 client_credentials grant with the credentials stored
26
- * during enrollment.
25
+ * For hardware-backed tiers (sovereign, portable, virtual), this invokes
26
+ * the hardware challenge-response flow via the Go binary. The physical
27
+ * device must be present. If it is absent, HardwareDeviceNotPresentError
28
+ * is thrown -- there is NO fallback to bare client_credentials.
27
29
  *
28
- * Tokens are cached in memory and automatically refreshed when they
29
- * are within 60s of expiry.
30
+ * For declared tier, the standard OAuth2 client_credentials grant is used.
30
31
  *
31
32
  * @param force_refresh If true, always fetch a new token even if cached.
32
33
  * @param credentials Optional pre-loaded credentials.
33
34
  * @returns A valid Token object.
34
35
  * @throws NotEnrolledError if no credentials file exists.
36
+ * @throws HardwareDeviceNotPresentError if hardware tier and device is absent.
35
37
  * @throws AuthenticationError if the token request fails.
36
38
  * @throws NetworkError if the token endpoint cannot be reached.
37
39
  */
38
40
  export async function get_token(force_refresh = false, credentials) {
39
- // Check if cached token is still valid (with margin)
40
41
  if (!force_refresh && cached_token != null) {
41
42
  const margin_adjusted_expiry = new Date(cached_token.expires_at.getTime() - TOKEN_REFRESH_MARGIN_MILLISECONDS);
42
43
  if (new Date() < margin_adjusted_expiry) {
43
44
  return cached_token;
44
45
  }
45
46
  }
46
- // Load credentials
47
47
  if (credentials == null) {
48
48
  credentials = load_credentials();
49
49
  }
50
- // Request a new token
50
+ if (TIERS_REQUIRING_HARDWARE_AUTH.has(credentials.trust_tier)) {
51
+ const token = await authenticate_with_hardware_challenge_response(credentials);
52
+ cached_token = token;
53
+ return token;
54
+ }
51
55
  const token = await request_token_from_keycloak(credentials);
52
56
  cached_token = token;
53
57
  return token;
54
58
  }
59
+ async function authenticate_with_hardware_challenge_response(credentials) {
60
+ if (TIERS_USING_TPM.has(credentials.trust_tier)) {
61
+ try {
62
+ return await authenticate_with_tpm(null, null, null, credentials);
63
+ }
64
+ catch (error) {
65
+ if (error instanceof HardwareDeviceNotPresentError) {
66
+ throw error;
67
+ }
68
+ throw new HardwareDeviceNotPresentError(`TPM authentication failed and hardware is required for ` +
69
+ `${credentials.trust_tier} tier. Device may be absent or ` +
70
+ `inaccessible: ${error instanceof Error ? error.message : String(error)}`);
71
+ }
72
+ }
73
+ if (TIERS_USING_PIV.has(credentials.trust_tier)) {
74
+ try {
75
+ return await authenticate_with_piv(null, null, credentials);
76
+ }
77
+ catch (error) {
78
+ if (error instanceof HardwareDeviceNotPresentError) {
79
+ throw error;
80
+ }
81
+ throw new HardwareDeviceNotPresentError(`PIV authentication failed and hardware is required for ` +
82
+ `${credentials.trust_tier} tier. YubiKey may be absent or ` +
83
+ `inaccessible: ${error instanceof Error ? error.message : String(error)}`);
84
+ }
85
+ }
86
+ throw new HardwareDeviceNotPresentError(`Trust tier '${credentials.trust_tier}' requires hardware but no ` +
87
+ `supported authentication method is available.`);
88
+ }
55
89
  /**
56
90
  * Request a new access token from Keycloak using client_credentials grant.
57
91
  */
@@ -185,4 +219,77 @@ export async function authenticate_with_tpm(identity_id, ak_handle, api_base_url
185
219
  "The Keycloak token endpoint may be unavailable.");
186
220
  }
187
221
  }
222
+ /**
223
+ * Authenticate using a PIV device (YubiKey) -- passwordless sign-in.
224
+ *
225
+ * Same challenge-response flow as TPM but uses PIV slot 9a ECDSA signing.
226
+ * No PIN, no elevation, no human interaction required.
227
+ */
228
+ export async function authenticate_with_piv(identity_id, api_base_url, credentials) {
229
+ if (credentials == null) {
230
+ credentials = load_credentials();
231
+ }
232
+ if (identity_id == null) {
233
+ identity_id = credentials.client_id;
234
+ }
235
+ if (api_base_url == null) {
236
+ api_base_url = credentials.api_base_url;
237
+ }
238
+ const api_client = new OneIDAPIClient(api_base_url, TOKEN_REQUEST_TIMEOUT_MILLISECONDS);
239
+ let challenge_data;
240
+ try {
241
+ challenge_data = await api_client["_make_request"]("POST", "/api/v1/auth/challenge", {
242
+ identity_id,
243
+ });
244
+ }
245
+ catch (error) {
246
+ if (error instanceof NetworkError) {
247
+ throw error;
248
+ }
249
+ throw new AuthenticationError(`Challenge request failed: ${error instanceof Error ? error.message : String(error)}`);
250
+ }
251
+ const challenge_id = challenge_data.challenge_id;
252
+ const nonce_b64 = challenge_data.nonce_b64;
253
+ if (!challenge_id || !nonce_b64) {
254
+ throw new AuthenticationError("Server returned incomplete challenge response");
255
+ }
256
+ const { sign_challenge_with_piv } = await import("./helper.js");
257
+ const sign_result = await sign_challenge_with_piv(nonce_b64);
258
+ const signature_b64 = sign_result.signature_b64 ?? "";
259
+ if (!signature_b64) {
260
+ throw new AuthenticationError("PIV signing returned empty signature");
261
+ }
262
+ let verify_data;
263
+ try {
264
+ verify_data = await api_client["_make_request"]("POST", "/api/v1/auth/verify", {
265
+ challenge_id,
266
+ signature_b64,
267
+ });
268
+ }
269
+ catch (error) {
270
+ if (error instanceof NetworkError) {
271
+ throw error;
272
+ }
273
+ throw new AuthenticationError(`PIV authentication failed: ${error instanceof Error ? error.message : String(error)}`);
274
+ }
275
+ if (!verify_data.authenticated) {
276
+ throw new AuthenticationError("Server did not confirm PIV authentication");
277
+ }
278
+ const tokens = verify_data.tokens;
279
+ if (tokens?.access_token) {
280
+ const expires_in_seconds = tokens.expires_in ?? 3600;
281
+ const token = {
282
+ access_token: tokens.access_token,
283
+ token_type: tokens.token_type ?? "Bearer",
284
+ expires_at: new Date(Date.now() + expires_in_seconds * 1000),
285
+ refresh_token: tokens.refresh_token ?? null,
286
+ };
287
+ cached_token = token;
288
+ return token;
289
+ }
290
+ else {
291
+ throw new AuthenticationError("PIV signature verified but no tokens were issued. " +
292
+ "The Keycloak token endpoint may be unavailable.");
293
+ }
294
+ }
188
295
  //# sourceMappingURL=auth.js.map
package/dist/auth.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
package/dist/client.d.ts CHANGED
@@ -62,5 +62,10 @@ export declare class OneIDAPIClient {
62
62
  * Check whether a vanity handle is available.
63
63
  */
64
64
  check_handle_availability(handle_name: string): Promise<Record<string, unknown>>;
65
+ /**
66
+ * Make an authenticated API request with a Bearer token.
67
+ * Used by world/status, devices, lock-hardware, and operator-email endpoints.
68
+ */
69
+ make_authenticated_request(method: string, api_path: string, access_token: string, json_body?: Record<string, unknown> | null): Promise<Record<string, unknown>>;
65
70
  }
66
71
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA6FH;;;;;GAKG;AACH,qBAAa,cAAc;IACzB,SAAgB,YAAY,EAAE,MAAM,CAAC;IACrC,SAAgB,oBAAoB,EAAE,MAAM,CAAC;gBAG3C,YAAY,GAAE,MAA6B,EAC3C,oBAAoB,GAAE,MAA0C;IAMlE;;OAEG;YACW,aAAa;IAyB3B;;OAEG;IACG,eAAe,CACnB,gBAAgB,EAAE,MAAM,EACxB,aAAa,EAAE,MAAM,EACrB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,EAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAWnC;;OAEG;IACG,YAAY,CAChB,kBAAkB,EAAE,MAAM,EAC1B,iBAAiB,EAAE,MAAM,EACzB,kBAAkB,GAAE,MAAW,EAC/B,iBAAiB,GAAE,MAAW,EAC9B,wBAAwB,CAAC,EAAE,MAAM,EAAE,EACnC,QAAQ,GAAE,MAAc,EACxB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,EAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAenC;;;;;;;OAOG;IACG,gBAAgB,CACpB,oBAAoB,EAAE,MAAM,EAC5B,qBAAqB,EAAE,MAAM,EAAE,EAC/B,sBAAsB,EAAE,MAAM,EAC9B,QAAQ,GAAE,MAAkB,EAC5B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,EAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAanC;;OAEG;IACG,eAAe,CACnB,qBAAqB,EAAE,MAAM,EAC7B,oBAAoB,EAAE,MAAM,GAC3B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAOnC;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAItE;;;;OAIG;IACG,iCAAiC,CACrC,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAuEnC;;OAEG;IACG,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAGvF"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA6FH;;;;;GAKG;AACH,qBAAa,cAAc;IACzB,SAAgB,YAAY,EAAE,MAAM,CAAC;IACrC,SAAgB,oBAAoB,EAAE,MAAM,CAAC;gBAG3C,YAAY,GAAE,MAA6B,EAC3C,oBAAoB,GAAE,MAA0C;IAMlE;;OAEG;YACW,aAAa;IAyB3B;;OAEG;IACG,eAAe,CACnB,gBAAgB,EAAE,MAAM,EACxB,aAAa,EAAE,MAAM,EACrB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,EAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAWnC;;OAEG;IACG,YAAY,CAChB,kBAAkB,EAAE,MAAM,EAC1B,iBAAiB,EAAE,MAAM,EACzB,kBAAkB,GAAE,MAAW,EAC/B,iBAAiB,GAAE,MAAW,EAC9B,wBAAwB,CAAC,EAAE,MAAM,EAAE,EACnC,QAAQ,GAAE,MAAc,EACxB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,EAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAenC;;;;;;;OAOG;IACG,gBAAgB,CACpB,oBAAoB,EAAE,MAAM,EAC5B,qBAAqB,EAAE,MAAM,EAAE,EAC/B,sBAAsB,EAAE,MAAM,EAC9B,QAAQ,GAAE,MAAkB,EAC5B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,EAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAanC;;OAEG;IACG,eAAe,CACnB,qBAAqB,EAAE,MAAM,EAC7B,oBAAoB,EAAE,MAAM,GAC3B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAOnC;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAItE;;;;OAIG;IACG,iCAAiC,CACrC,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAuEnC;;OAEG;IACG,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAItF;;;OAGG;IACG,0BAA0B,CAC9B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GACzC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAKpC"}
package/dist/client.js CHANGED
@@ -243,5 +243,14 @@ export class OneIDAPIClient {
243
243
  async check_handle_availability(handle_name) {
244
244
  return this._make_request("GET", `/api/v1/handle/${handle_name}`);
245
245
  }
246
+ /**
247
+ * Make an authenticated API request with a Bearer token.
248
+ * Used by world/status, devices, lock-hardware, and operator-email endpoints.
249
+ */
250
+ async make_authenticated_request(method, api_path, access_token, json_body) {
251
+ return this._make_request(method, api_path, json_body, {
252
+ "Authorization": `Bearer ${access_token}`,
253
+ });
254
+ }
246
255
  }
247
256
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EACL,eAAe,EACf,YAAY,EACZ,gCAAgC,GACjC,MAAM,iBAAiB,CAAC;AAEzB,kCAAkC;AAClC,MAAM,iCAAiC,GAAG,MAAM,CAAC;AACjD,MAAM,UAAU,GAAG,sBAAsB,CAAC;AAS1C;;;GAGG;AACH,SAAS,iBAAiB,CACxB,QAAgB,EAChB,OAAuB,EACvB,oBAA4B;IAE5B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC;QAC3C,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QAE1C,MAAM,eAAe,GAA2B;YAC9C,YAAY,EAAE,UAAU;YACxB,QAAQ,EAAE,kBAAkB;YAC5B,GAAG,OAAO,CAAC,OAAO;SACnB,CAAC;QAEF,IAAI,mBAAuC,CAAC;QAC5C,IAAI,OAAO,CAAC,SAAS,IAAI,IAAI,EAAE,CAAC;YAC9B,mBAAmB,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACxD,eAAe,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;YACrD,eAAe,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,QAAQ,EAAE,CAAC;QACxF,CAAC;QAED,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAC3B;YACE,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,IAAI,EAAE,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM;YAC/B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,OAAO,EAAE,eAAe;YACxB,OAAO,EAAE,oBAAoB;SAC9B,EACD,CAAC,GAAG,EAAE,EAAE;YACN,MAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3D,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;gBACjB,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACzD,IAAI,CAAC;oBACH,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBACzC,OAAO,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,UAAU,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;gBACnE,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,CAAC,IAAI,YAAY,CACrB,8BAA8B,GAAG,CAAC,IAAI,UAAU,GAAG,CAAC,UAAU,MAAM,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAC7F,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CACF,CAAC;QAEF,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE;YAC/B,MAAM,CAAC,IAAI,YAAY,CAAC,wBAAwB,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACjF,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;YACrB,GAAG,CAAC,OAAO,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,YAAY,CACrB,cAAc,GAAG,CAAC,IAAI,oBAAoB,oBAAoB,IAAI,CACnE,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,mBAAmB,IAAI,IAAI,EAAE,CAAC;YAChC,GAAG,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACjC,CAAC;QACD,GAAG,CAAC,GAAG,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,OAAO,cAAc;IACT,YAAY,CAAS;IACrB,oBAAoB,CAAS;IAE7C,YACE,eAAuB,oBAAoB,EAC3C,uBAA+B,iCAAiC;QAEhE,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;IACnD,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,aAAa,CACzB,MAAc,EACd,QAAgB,EAChB,SAA0C,EAC1C,OAAgC;QAEhC,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CACtC,IAAI,CAAC,YAAY,EACjB,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,EAC9C,IAAI,CAAC,oBAAoB,CAC1B,CAAC;QAEF,MAAM,aAAa,GAAG,QAAQ,CAAC,IAA+B,CAAC;QAE/D,4CAA4C;QAC5C,IAAI,CAAC,aAAa,EAAE,EAAE,EAAE,CAAC;YACvB,MAAM,UAAU,GAAG,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE,CAA2B,CAAC;YAC1E,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,IAAI,eAAe,CAAC;YACtD,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,IAAI,wBAAwB,QAAQ,CAAC,WAAW,EAAE,CAAC;YAC3F,gCAAgC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,CAAC,aAAa,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CACnB,gBAAwB,EACxB,aAAqB,EACrB,cAA8B,EAC9B,gBAAgC;QAEhC,MAAM,YAAY,GAA4B;YAC5C,gBAAgB;YAChB,aAAa;SACd,CAAC;QACF,IAAI,cAAc,IAAI,IAAI,EAAE,CAAC;YAAC,YAAY,CAAC,gBAAgB,CAAC,GAAG,cAAc,CAAC;QAAC,CAAC;QAChF,IAAI,gBAAgB,IAAI,IAAI,EAAE,CAAC;YAAC,YAAY,CAAC,kBAAkB,CAAC,GAAG,gBAAgB,CAAC;QAAC,CAAC;QAEtF,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,yBAAyB,EAAE,YAAY,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAChB,kBAA0B,EAC1B,iBAAyB,EACzB,qBAA6B,EAAE,EAC/B,oBAA4B,EAAE,EAC9B,wBAAmC,EACnC,WAAmB,KAAK,EACxB,cAA8B,EAC9B,gBAAgC;QAEhC,MAAM,YAAY,GAA4B;YAC5C,kBAAkB;YAClB,iBAAiB;YACjB,iBAAiB;YACjB,kBAAkB;YAClB,QAAQ;SACT,CAAC;QACF,IAAI,wBAAwB,EAAE,CAAC;YAAC,YAAY,CAAC,0BAA0B,CAAC,GAAG,wBAAwB,CAAC;QAAC,CAAC;QACtG,IAAI,cAAc,IAAI,IAAI,EAAE,CAAC;YAAC,YAAY,CAAC,gBAAgB,CAAC,GAAG,cAAc,CAAC;QAAC,CAAC;QAChF,IAAI,gBAAgB,IAAI,IAAI,EAAE,CAAC;YAAC,YAAY,CAAC,kBAAkB,CAAC,GAAG,gBAAgB,CAAC;QAAC,CAAC;QAEtF,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,sBAAsB,EAAE,YAAY,CAAC,CAAC;IAC1E,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,gBAAgB,CACpB,oBAA4B,EAC5B,qBAA+B,EAC/B,sBAA8B,EAC9B,WAAmB,SAAS,EAC5B,cAA8B,EAC9B,gBAAgC;QAEhC,MAAM,YAAY,GAA4B;YAC5C,oBAAoB;YACpB,qBAAqB;YACrB,sBAAsB;YACtB,QAAQ;SACT,CAAC;QACF,IAAI,cAAc,IAAI,IAAI,EAAE,CAAC;YAAC,YAAY,CAAC,gBAAgB,CAAC,GAAG,cAAc,CAAC;QAAC,CAAC;QAChF,IAAI,gBAAgB,IAAI,IAAI,EAAE,CAAC;YAAC,YAAY,CAAC,kBAAkB,CAAC,GAAG,gBAAgB,CAAC;QAAC,CAAC;QAEtF,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,0BAA0B,EAAE,YAAY,CAAC,CAAC;IAC9E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CACnB,qBAA6B,EAC7B,oBAA4B;QAE5B,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,yBAAyB,EAAE;YAC3D,qBAAqB;YACrB,oBAAoB;SACrB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,QAAgB;QACjC,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,oBAAoB,QAAQ,EAAE,CAAC,CAAC;IACnE,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,iCAAiC,CACrC,SAAiB,EACjB,aAAqB;QAErB,MAAM,UAAU,GAAG,8CAA8C,CAAC;QAClE,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC;YACpC,UAAU,EAAE,oBAAoB;YAChC,SAAS;YACT,aAAa;SACd,CAAC,CAAC,QAAQ,EAAE,CAAC;QAEd,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YACnD,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC;YAC3C,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;YAE1C,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAC3B;gBACE,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvC,IAAI,EAAE,GAAG,CAAC,QAAQ;gBAClB,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,mCAAmC;oBACnD,gBAAgB,EAAE,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE;oBACzD,YAAY,EAAE,UAAU;iBACzB;gBACD,OAAO,EAAE,IAAI,CAAC,oBAAoB;aACnC,EACD,CAAC,GAAG,EAAE,EAAE;gBACN,MAAM,MAAM,GAAa,EAAE,CAAC;gBAC5B,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3D,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;oBACjB,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;oBACzD,IAAI,CAAC;wBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAA4B,CAAC;wBAC/D,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;4BAC3B,MAAM,iBAAiB,GACpB,MAAM,CAAC,iBAA4B;gCACnC,MAAM,CAAC,KAAgB;gCACxB,QAAQ,GAAG,CAAC,UAAU,EAAE,CAAC;4BAC3B,MAAM,CAAC,IAAI,eAAe,CACxB,8BAA8B,GAAG,CAAC,UAAU,MAAM,iBAAiB,EAAE,CACtE,CAAC,CAAC;4BACH,OAAO;wBACT,CAAC;wBACD,OAAO,CAAC,MAAM,CAAC,CAAC;oBAClB,CAAC;oBAAC,MAAM,CAAC;wBACP,MAAM,CAAC,IAAI,YAAY,CACrB,0CAA0C,GAAG,CAAC,UAAU,MAAM,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CACvF,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CACF,CAAC;YAEF,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE;gBAC/B,MAAM,CAAC,IAAI,YAAY,CACrB,uCAAuC,GAAG,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CACpE,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;gBACrB,GAAG,CAAC,OAAO,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,YAAY,CACrB,oBAAoB,GAAG,CAAC,IAAI,oBAAoB,IAAI,CAAC,oBAAoB,IAAI,CAC9E,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACrB,GAAG,CAAC,GAAG,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,yBAAyB,CAAC,WAAmB;QACjD,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,kBAAkB,WAAW,EAAE,CAAC,CAAC;IACpE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,0BAA0B,CAC9B,MAAc,EACd,QAAgB,EAChB,YAAoB,EACpB,SAA0C;QAE1C,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE;YACrD,eAAe,EAAE,UAAU,YAAY,EAAE;SAC1C,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -50,6 +50,8 @@ export interface StoredCredentials {
50
50
  privacy_consent_given_at?: string | null;
51
51
  /** The user's chosen default attestation mode: 'sd-jwt' or 'direct'. */
52
52
  default_attestation_mode?: string | null;
53
+ /** Full PEM-encoded certificate chain (leaf -> intermediate -> root) issued during enrollment. */
54
+ identity_certificate_chain_pem?: string | null;
53
55
  }
54
56
  /**
55
57
  * Return the platform-appropriate directory for storing credentials.
@@ -1 +1 @@
1
- {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../src/credentials.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAQH,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AACtD,eAAO,MAAM,sBAAsB,gEAAgE,CAAC;AAKpG;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,4EAA4E;IAC5E,SAAS,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,aAAa,EAAE,MAAM,CAAC;IACtB,+CAA+C;IAC/C,cAAc,EAAE,MAAM,CAAC;IACvB,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,6CAA6C;IAC7C,UAAU,EAAE,MAAM,CAAC;IACnB,kDAAkD;IAClD,aAAa,EAAE,MAAM,CAAC;IACtB,mEAAmE;IACnE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,qFAAqF;IACrF,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,qEAAqE;IACrE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,8FAA8F;IAC9F,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,6EAA6E;IAC7E,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,wEAAwE;IACxE,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1C;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAelD;AAED;;GAEG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAElD;AAgBD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,iBAAiB,GAAG,MAAM,CAwCvE;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,iBAAiB,CAsCpD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAO5C"}
1
+ {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../src/credentials.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAQH,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AACtD,eAAO,MAAM,sBAAsB,gEAAgE,CAAC;AAKpG;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,4EAA4E;IAC5E,SAAS,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,aAAa,EAAE,MAAM,CAAC;IACtB,+CAA+C;IAC/C,cAAc,EAAE,MAAM,CAAC;IACvB,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,6CAA6C;IAC7C,UAAU,EAAE,MAAM,CAAC;IACnB,kDAAkD;IAClD,aAAa,EAAE,MAAM,CAAC;IACtB,mEAAmE;IACnE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,qFAAqF;IACrF,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,qEAAqE;IACrE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,8FAA8F;IAC9F,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,6EAA6E;IAC7E,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,wEAAwE;IACxE,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,kGAAkG;IAClG,8BAA8B,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAChD;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAelD;AAED;;GAEG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAElD;AAgBD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,iBAAiB,GAAG,MAAM,CA2CvE;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,iBAAiB,CAuCpD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAO5C"}
@@ -108,6 +108,9 @@ export function save_credentials(credentials) {
108
108
  if (credentials.default_attestation_mode != null) {
109
109
  credentials_dict["default_attestation_mode"] = credentials.default_attestation_mode;
110
110
  }
111
+ if (credentials.identity_certificate_chain_pem != null) {
112
+ credentials_dict["identity_certificate_chain_pem"] = credentials.identity_certificate_chain_pem;
113
+ }
111
114
  fs.writeFileSync(credentials_file_path, JSON.stringify(credentials_dict, null, 2) + "\n", "utf-8");
112
115
  set_owner_only_permissions(credentials_file_path);
113
116
  return credentials_file_path;
@@ -147,6 +150,7 @@ export function load_credentials() {
147
150
  agent_identity_urn: credentials_dict["agent_identity_urn"] ?? null,
148
151
  privacy_consent_given_at: credentials_dict["privacy_consent_given_at"] ?? null,
149
152
  default_attestation_mode: credentials_dict["default_attestation_mode"] ?? null,
153
+ identity_certificate_chain_pem: credentials_dict["identity_certificate_chain_pem"] ?? null,
150
154
  };
151
155
  }
152
156
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"credentials.js","sourceRoot":"","sources":["../src/credentials.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE/D,iCAAiC;AACjC,MAAM,CAAC,MAAM,oBAAoB,GAAG,iBAAiB,CAAC;AACtD,MAAM,CAAC,MAAM,sBAAsB,GAAG,6DAA6D,CAAC;AAEpG,6BAA6B;AAC7B,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;AAqChD;;;;;;GAMG;AACH,MAAM,UAAU,yBAAyB;IACvC,MAAM,eAAe,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;IACtC,IAAI,eAAe,KAAK,OAAO,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;SAAM,CAAC;QACN,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QACvD,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB;IACvC,OAAO,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,oBAAoB,CAAC,CAAC;AACtE,CAAC;AAED;;;GAGG;AACH,SAAS,0BAA0B,CAAC,SAAiB;IACnD,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACjC,CAAC;QAAC,MAAM,CAAC;YACP,+CAA+C;QACjD,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,WAA8B;IAC7D,MAAM,qBAAqB,GAAG,yBAAyB,EAAE,CAAC;IAC1D,EAAE,CAAC,SAAS,CAAC,qBAAqB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEzD,MAAM,qBAAqB,GAAG,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,oBAAoB,CAAC,CAAC;IAErF,gEAAgE;IAChE,MAAM,gBAAgB,GAA4B;QAChD,SAAS,EAAE,WAAW,CAAC,SAAS;QAChC,aAAa,EAAE,WAAW,CAAC,aAAa;QACxC,cAAc,EAAE,WAAW,CAAC,cAAc;QAC1C,YAAY,EAAE,WAAW,CAAC,YAAY;QACtC,UAAU,EAAE,WAAW,CAAC,UAAU;QAClC,aAAa,EAAE,WAAW,CAAC,aAAa;QACxC,WAAW,EAAE,WAAW,CAAC,WAAW,IAAI,IAAI;KAC7C,CAAC;IAEF,IAAI,WAAW,CAAC,eAAe,IAAI,IAAI,EAAE,CAAC;QACxC,gBAAgB,CAAC,iBAAiB,CAAC,GAAG,WAAW,CAAC,eAAe,CAAC;IACpE,CAAC;IACD,IAAI,WAAW,CAAC,iBAAiB,IAAI,IAAI,EAAE,CAAC;QAC1C,gBAAgB,CAAC,mBAAmB,CAAC,GAAG,WAAW,CAAC,iBAAiB,CAAC;IACxE,CAAC;IACD,IAAI,WAAW,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;QACrC,gBAAgB,CAAC,cAAc,CAAC,GAAG,WAAW,CAAC,YAAY,CAAC;IAC9D,CAAC;IACD,IAAI,WAAW,CAAC,kBAAkB,IAAI,IAAI,EAAE,CAAC;QAC3C,gBAAgB,CAAC,oBAAoB,CAAC,GAAG,WAAW,CAAC,kBAAkB,CAAC;IAC1E,CAAC;IACD,IAAI,WAAW,CAAC,wBAAwB,IAAI,IAAI,EAAE,CAAC;QACjD,gBAAgB,CAAC,0BAA0B,CAAC,GAAG,WAAW,CAAC,wBAAwB,CAAC;IACtF,CAAC;IACD,IAAI,WAAW,CAAC,wBAAwB,IAAI,IAAI,EAAE,CAAC;QACjD,gBAAgB,CAAC,0BAA0B,CAAC,GAAG,WAAW,CAAC,wBAAwB,CAAC;IACtF,CAAC;IAED,EAAE,CAAC,aAAa,CAAC,qBAAqB,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;IACnG,0BAA0B,CAAC,qBAAqB,CAAC,CAAC;IAElD,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,qBAAqB,GAAG,yBAAyB,EAAE,CAAC;IAE1D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,gBAAgB,CACxB,gCAAgC,qBAAqB,IAAI;YACzD,kDAAkD,CACnD,CAAC;IACJ,CAAC;IAED,IAAI,aAAqB,CAAC;IAC1B,IAAI,gBAAyC,CAAC;IAE9C,IAAI,CAAC;QACH,aAAa,GAAG,EAAE,CAAC,YAAY,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;QAChE,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,UAAU,EAAE,CAAC;QACpB,MAAM,IAAI,UAAU,CAClB,uBAAuB,qBAAqB,gCAAgC,UAAU,EAAE,EACxF,uBAAuB,CACxB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAW;QAClD,aAAa,EAAE,gBAAgB,CAAC,eAAe,CAAW;QAC1D,cAAc,EAAE,gBAAgB,CAAC,gBAAgB,CAAW;QAC5D,YAAY,EAAE,gBAAgB,CAAC,cAAc,CAAW;QACxD,UAAU,EAAG,gBAAgB,CAAC,YAAY,CAAY,IAAI,UAAU;QACpE,aAAa,EAAG,gBAAgB,CAAC,eAAe,CAAY,IAAI,SAAS;QACzE,eAAe,EAAG,gBAAgB,CAAC,iBAAiB,CAAY,IAAI,IAAI;QACxE,iBAAiB,EAAG,gBAAgB,CAAC,mBAAmB,CAAY,IAAI,IAAI;QAC5E,WAAW,EAAG,gBAAgB,CAAC,aAAa,CAAY,IAAI,IAAI;QAChE,YAAY,EAAG,gBAAgB,CAAC,cAAc,CAAY,IAAI,IAAI;QAClE,kBAAkB,EAAG,gBAAgB,CAAC,oBAAoB,CAAY,IAAI,IAAI;QAC9E,wBAAwB,EAAG,gBAAgB,CAAC,0BAA0B,CAAY,IAAI,IAAI;QAC1F,wBAAwB,EAAG,gBAAgB,CAAC,0BAA0B,CAAY,IAAI,IAAI;KAC3F,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO,EAAE,CAAC,UAAU,CAAC,yBAAyB,EAAE,CAAC,CAAC;AACpD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB;IAChC,MAAM,qBAAqB,GAAG,yBAAyB,EAAE,CAAC;IAC1D,IAAI,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACzC,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"credentials.js","sourceRoot":"","sources":["../src/credentials.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Device management and hardware lock for the 1id.com Node.js SDK.
3
+ *
4
+ * Provides:
5
+ * listDevices() -- List all devices (active and burned) bound to this identity
6
+ * lockHardware() -- Permanently lock identity to its single hardware device (irreversible)
7
+ *
8
+ * Usage:
9
+ * import { listDevices, lockHardware } from "1id/devices";
10
+ *
11
+ * const result = await listDevices();
12
+ * for (const d of result.devices) { console.log(`${d.device_type} [${d.device_status}]`); }
13
+ *
14
+ * const lock = await lockHardware();
15
+ * console.log(`Locked: ${lock.hardware_locked}`);
16
+ */
17
+ import { type StoredCredentials } from "./credentials.js";
18
+ export interface DeviceInfo {
19
+ device_type: string;
20
+ device_fingerprint: string;
21
+ device_status: string;
22
+ trust_tier: string | null;
23
+ tpm_manufacturer: string | null;
24
+ piv_serial: string | null;
25
+ bound_at: string | null;
26
+ burned_at: string | null;
27
+ burn_reason: string | null;
28
+ }
29
+ export interface DeviceListResult {
30
+ identity_internal_id: string;
31
+ total_device_count: number;
32
+ active_device_count: number;
33
+ burned_device_count: number;
34
+ devices: DeviceInfo[];
35
+ }
36
+ export interface HardwareLockResult {
37
+ identity_internal_id: string;
38
+ hardware_locked: boolean;
39
+ trust_tier: string;
40
+ active_device_count: number;
41
+ }
42
+ /**
43
+ * List all devices (active and burned) bound to this identity.
44
+ *
45
+ * @param credentials Optional pre-loaded credentials.
46
+ * @returns DeviceListResult with all device details.
47
+ */
48
+ export declare function listDevices(credentials?: StoredCredentials | null): Promise<DeviceListResult>;
49
+ /**
50
+ * Permanently lock this identity to its single active hardware device.
51
+ *
52
+ * This is an IRREVERSIBLE operation. Once locked:
53
+ * - No new devices can be added
54
+ * - The existing device cannot be burned
55
+ * - The identity is permanently bound to one physical chip
56
+ *
57
+ * Preconditions enforced server-side:
58
+ * - Identity must be hardware-tier (sovereign, portable, or virtual)
59
+ * - Identity must have exactly 1 active device
60
+ *
61
+ * @param credentials Optional pre-loaded credentials.
62
+ * @returns HardwareLockResult with confirmation details.
63
+ * @throws Error with code DECLARED_TIER_CANNOT_LOCK if identity is declared-tier.
64
+ * @throws Error with code ALREADY_LOCKED if already locked (idempotent-safe).
65
+ * @throws Error with code TOO_MANY_ACTIVE_DEVICES if identity has != 1 active device.
66
+ */
67
+ export declare function lockHardware(credentials?: StoredCredentials | null): Promise<HardwareLockResult>;
68
+ /**
69
+ * Register or update the human operator email for this identity.
70
+ *
71
+ * @param operator_email_address The email address to register.
72
+ * @param credentials Optional pre-loaded credentials.
73
+ * @returns True if the email was registered successfully.
74
+ */
75
+ export declare function registerOperatorEmail(operator_email_address: string, credentials?: StoredCredentials | null): Promise<boolean>;
76
+ //# sourceMappingURL=devices.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devices.d.ts","sourceRoot":"","sources":["../src/devices.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAK5E,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,gBAAgB;IAC/B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,UAAU,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IACjC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,eAAe,EAAE,OAAO,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAC/B,WAAW,CAAC,EAAE,iBAAiB,GAAG,IAAI,GACrC,OAAO,CAAC,gBAAgB,CAAC,CAiC3B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,YAAY,CAChC,WAAW,CAAC,EAAE,iBAAiB,GAAG,IAAI,GACrC,OAAO,CAAC,kBAAkB,CAAC,CAuB7B;AAED;;;;;;GAMG;AACH,wBAAsB,qBAAqB,CACzC,sBAAsB,EAAE,MAAM,EAC9B,WAAW,CAAC,EAAE,iBAAiB,GAAG,IAAI,GACrC,OAAO,CAAC,OAAO,CAAC,CAkBlB"}
@@ -0,0 +1,103 @@
1
+ /**
2
+ * Device management and hardware lock for the 1id.com Node.js SDK.
3
+ *
4
+ * Provides:
5
+ * listDevices() -- List all devices (active and burned) bound to this identity
6
+ * lockHardware() -- Permanently lock identity to its single hardware device (irreversible)
7
+ *
8
+ * Usage:
9
+ * import { listDevices, lockHardware } from "1id/devices";
10
+ *
11
+ * const result = await listDevices();
12
+ * for (const d of result.devices) { console.log(`${d.device_type} [${d.device_status}]`); }
13
+ *
14
+ * const lock = await lockHardware();
15
+ * console.log(`Locked: ${lock.hardware_locked}`);
16
+ */
17
+ import { load_credentials } from "./credentials.js";
18
+ import { get_token } from "./auth.js";
19
+ import { OneIDAPIClient } from "./client.js";
20
+ import { invalidate_world_cache } from "./world.js";
21
+ /**
22
+ * List all devices (active and burned) bound to this identity.
23
+ *
24
+ * @param credentials Optional pre-loaded credentials.
25
+ * @returns DeviceListResult with all device details.
26
+ */
27
+ export async function listDevices(credentials) {
28
+ if (credentials == null) {
29
+ credentials = load_credentials();
30
+ }
31
+ const token = await get_token(false, credentials);
32
+ const api_client = new OneIDAPIClient(credentials.api_base_url);
33
+ const response_data = await api_client.make_authenticated_request("GET", "/api/v1/identity/devices", token.access_token);
34
+ const raw_devices = (response_data.devices ?? []);
35
+ return {
36
+ identity_internal_id: (response_data.identity_internal_id ?? ""),
37
+ total_device_count: (response_data.total_devices ?? 0),
38
+ active_device_count: (response_data.active_devices ?? 0),
39
+ burned_device_count: (response_data.burned_devices ?? 0),
40
+ devices: raw_devices.map((device_data) => ({
41
+ device_type: (device_data.device_type ?? ""),
42
+ device_fingerprint: (device_data.device_fingerprint ?? ""),
43
+ device_status: (device_data.device_status ?? "active"),
44
+ trust_tier: (device_data.trust_tier ?? null),
45
+ tpm_manufacturer: (device_data.tpm_manufacturer ?? null),
46
+ piv_serial: (device_data.piv_serial ?? null),
47
+ bound_at: (device_data.bound_at ?? null),
48
+ burned_at: (device_data.burned_at ?? null),
49
+ burn_reason: (device_data.burn_reason ?? null),
50
+ })),
51
+ };
52
+ }
53
+ /**
54
+ * Permanently lock this identity to its single active hardware device.
55
+ *
56
+ * This is an IRREVERSIBLE operation. Once locked:
57
+ * - No new devices can be added
58
+ * - The existing device cannot be burned
59
+ * - The identity is permanently bound to one physical chip
60
+ *
61
+ * Preconditions enforced server-side:
62
+ * - Identity must be hardware-tier (sovereign, portable, or virtual)
63
+ * - Identity must have exactly 1 active device
64
+ *
65
+ * @param credentials Optional pre-loaded credentials.
66
+ * @returns HardwareLockResult with confirmation details.
67
+ * @throws Error with code DECLARED_TIER_CANNOT_LOCK if identity is declared-tier.
68
+ * @throws Error with code ALREADY_LOCKED if already locked (idempotent-safe).
69
+ * @throws Error with code TOO_MANY_ACTIVE_DEVICES if identity has != 1 active device.
70
+ */
71
+ export async function lockHardware(credentials) {
72
+ if (credentials == null) {
73
+ credentials = load_credentials();
74
+ }
75
+ const token = await get_token(false, credentials);
76
+ const api_client = new OneIDAPIClient(credentials.api_base_url);
77
+ const lock_data = await api_client.make_authenticated_request("POST", "/api/v1/identity/lock-hardware", token.access_token, {});
78
+ invalidate_world_cache();
79
+ return {
80
+ identity_internal_id: (lock_data.identity_internal_id ?? ""),
81
+ hardware_locked: Boolean(lock_data.hardware_locked),
82
+ trust_tier: (lock_data.trust_tier ?? ""),
83
+ active_device_count: (lock_data.active_device_count ?? 1),
84
+ };
85
+ }
86
+ /**
87
+ * Register or update the human operator email for this identity.
88
+ *
89
+ * @param operator_email_address The email address to register.
90
+ * @param credentials Optional pre-loaded credentials.
91
+ * @returns True if the email was registered successfully.
92
+ */
93
+ export async function registerOperatorEmail(operator_email_address, credentials) {
94
+ if (credentials == null) {
95
+ credentials = load_credentials();
96
+ }
97
+ const token = await get_token(false, credentials);
98
+ const api_client = new OneIDAPIClient(credentials.api_base_url);
99
+ const response_data = await api_client.make_authenticated_request("PUT", "/api/v1/identity/operator-email", token.access_token, { operator_email: operator_email_address });
100
+ invalidate_world_cache();
101
+ return Boolean(response_data.operator_email_registered);
102
+ }
103
+ //# sourceMappingURL=devices.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devices.js","sourceRoot":"","sources":["../src/devices.ts"],"names":[],"mappings":"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"}
@@ -91,6 +91,20 @@ export declare class HandleRetiredError extends EnrollmentError {
91
91
  export declare class AuthenticationError extends OneIDError {
92
92
  constructor(message?: string);
93
93
  }
94
+ /**
95
+ * Hardware device required for authentication but not detected or not responding.
96
+ *
97
+ * Raised by get_token() when the identity's trust_tier is hardware-backed
98
+ * (sovereign, portable, virtual) but the physical TPM or PIV device is
99
+ * absent, inaccessible, or the challenge-response signing failed.
100
+ *
101
+ * This is an intentional security property: credentials.json for a
102
+ * hardware-tier identity is useless without the physical device.
103
+ * get_token() never falls back to bare client_credentials for hardware tiers.
104
+ */
105
+ export declare class HardwareDeviceNotPresentError extends AuthenticationError {
106
+ constructor(message?: string);
107
+ }
94
108
  /**
95
109
  * Could not reach the 1id.com API server.
96
110
  */