1id 0.8.0 → 0.10.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.
Files changed (79) hide show
  1. package/LICENSE +0 -0
  2. package/README.md +1 -1
  3. package/dist/attestation.d.ts +59 -0
  4. package/dist/attestation.d.ts.map +1 -0
  5. package/dist/attestation.js +489 -0
  6. package/dist/attestation.js.map +1 -0
  7. package/dist/auth.d.ts +0 -0
  8. package/dist/auth.d.ts.map +0 -0
  9. package/dist/auth.js +0 -0
  10. package/dist/auth.js.map +0 -0
  11. package/dist/cli.d.ts +0 -0
  12. package/dist/cli.d.ts.map +0 -0
  13. package/dist/cli.js +0 -0
  14. package/dist/cli.js.map +0 -0
  15. package/dist/client.d.ts +8 -0
  16. package/dist/client.d.ts.map +1 -1
  17. package/dist/client.js +22 -0
  18. package/dist/client.js.map +1 -1
  19. package/dist/credentialPointers.d.ts +0 -0
  20. package/dist/credentialPointers.d.ts.map +0 -0
  21. package/dist/credentialPointers.js +0 -0
  22. package/dist/credentialPointers.js.map +0 -0
  23. package/dist/credentials.d.ts +4 -0
  24. package/dist/credentials.d.ts.map +1 -1
  25. package/dist/credentials.js +4 -0
  26. package/dist/credentials.js.map +1 -1
  27. package/dist/devices.d.ts +0 -0
  28. package/dist/devices.d.ts.map +0 -0
  29. package/dist/devices.js +0 -0
  30. package/dist/devices.js.map +0 -0
  31. package/dist/enroll.d.ts +22 -0
  32. package/dist/enroll.d.ts.map +1 -1
  33. package/dist/enroll.js +142 -0
  34. package/dist/enroll.js.map +1 -1
  35. package/dist/exceptions.d.ts +0 -0
  36. package/dist/exceptions.d.ts.map +0 -0
  37. package/dist/exceptions.js +0 -0
  38. package/dist/exceptions.js.map +0 -0
  39. package/dist/helper.d.ts +7 -0
  40. package/dist/helper.d.ts.map +1 -1
  41. package/dist/helper.js +12 -0
  42. package/dist/helper.js.map +1 -1
  43. package/dist/identity.d.ts +2 -0
  44. package/dist/identity.d.ts.map +1 -1
  45. package/dist/identity.js +2 -0
  46. package/dist/identity.js.map +1 -1
  47. package/dist/index.d.ts +12 -0
  48. package/dist/index.d.ts.map +1 -1
  49. package/dist/index.js +13 -0
  50. package/dist/index.js.map +1 -1
  51. package/dist/keys.d.ts +0 -0
  52. package/dist/keys.d.ts.map +0 -0
  53. package/dist/keys.js +0 -0
  54. package/dist/keys.js.map +0 -0
  55. package/dist/test/test_attestation.d.ts +8 -0
  56. package/dist/test/test_attestation.d.ts.map +1 -0
  57. package/dist/test/test_attestation.js +200 -0
  58. package/dist/test/test_attestation.js.map +1 -0
  59. package/dist/test/test_declared_enrollment.d.ts +0 -0
  60. package/dist/test/test_declared_enrollment.d.ts.map +0 -0
  61. package/dist/test/test_declared_enrollment.js +0 -0
  62. package/dist/test/test_declared_enrollment.js.map +0 -0
  63. package/dist/test/test_peer_verification.d.ts +0 -0
  64. package/dist/test/test_peer_verification.d.ts.map +0 -0
  65. package/dist/test/test_peer_verification.js +0 -0
  66. package/dist/test/test_peer_verification.js.map +0 -0
  67. package/dist/trustRoots.d.ts +0 -0
  68. package/dist/trustRoots.d.ts.map +0 -0
  69. package/dist/trustRoots.js +0 -0
  70. package/dist/trustRoots.js.map +0 -0
  71. package/dist/verify.d.ts +2 -0
  72. package/dist/verify.d.ts.map +1 -1
  73. package/dist/verify.js +18 -2
  74. package/dist/verify.js.map +1 -1
  75. package/dist/world.d.ts +0 -0
  76. package/dist/world.d.ts.map +0 -0
  77. package/dist/world.js +0 -0
  78. package/dist/world.js.map +0 -0
  79. package/package.json +3 -3
package/dist/index.d.ts CHANGED
@@ -24,6 +24,7 @@ import { DEFAULT_KEY_ALGORITHM, HSMType, type Identity, KeyAlgorithm, type Token
24
24
  import { invalidate_world_cache, type WorldStatus, type WorldIdentitySection, type WorldDeviceEntry, type WorldServiceEntry, type WorldGuidanceItem, type WorldOperatorGuidance } from "./world.js";
25
25
  import { listDevices, lockHardware, registerOperatorEmail, type DeviceInfo, type DeviceListResult, type HardwareLockResult } from "./devices.js";
26
26
  import { signChallenge, verifyPeerIdentity, PeerVerificationError, CertificateChainValidationError, SignatureVerificationError, MissingIdentityCertificateError, type IdentityProofBundle, type VerifiedPeerIdentity } from "./verify.js";
27
+ import { prepareAttestation, prepare_direct_hardware_attestation, compute_rfc_message_binding_nonce, canonicalise_headers_for_message_binding, canonicalise_headers_for_direct_attestation, canonicalise_body_using_dkim_simple, canonicalise_header_value_using_dkim_relaxed, canonicalise_header_name_using_dkim_relaxed, compute_attestation_digest_for_direct_mode, build_cms_signed_data_for_direct_attestation, type AttestationProof, type PrepareAttestationOptions, type DirectAttestationProof } from "./attestation.js";
27
28
  import { refresh_trust_roots, get_trust_roots } from "./trustRoots.js";
28
29
  import { generateConsentToken, listCredentialPointers, setCredentialPointerVisibility, removeCredentialPointer, type ConsentTokenResult, type CredentialPointerInfo, type CredentialPointerListResult } from "./credentialPointers.js";
29
30
  export { OneIDError, EnrollmentError, NoHSMError, UACDeniedError, HSMAccessError, TPMSetupRequiredError, AlreadyEnrolledError, HandleTakenError, HandleInvalidError, HandleRetiredError, AuthenticationError, HardwareDeviceNotPresentError, NetworkError, NotEnrolledError, BinaryNotFoundError, RateLimitExceededError, } from "./exceptions.js";
@@ -32,6 +33,7 @@ export { type WorldStatus, type WorldIdentitySection, type WorldDeviceEntry, typ
32
33
  export { type DeviceInfo, type DeviceListResult, type HardwareLockResult, };
33
34
  export { signChallenge, verifyPeerIdentity, refresh_trust_roots, get_trust_roots, PeerVerificationError, CertificateChainValidationError, SignatureVerificationError, MissingIdentityCertificateError, type IdentityProofBundle, type VerifiedPeerIdentity, };
34
35
  export { generateConsentToken, listCredentialPointers, setCredentialPointerVisibility, removeCredentialPointer, type ConsentTokenResult, type CredentialPointerInfo, type CredentialPointerListResult, };
36
+ export { prepareAttestation, prepare_direct_hardware_attestation, compute_rfc_message_binding_nonce, canonicalise_headers_for_message_binding, canonicalise_headers_for_direct_attestation, canonicalise_body_using_dkim_simple, canonicalise_header_value_using_dkim_relaxed, canonicalise_header_name_using_dkim_relaxed, compute_attestation_digest_for_direct_mode, build_cms_signed_data_for_direct_attestation, type AttestationProof, type PrepareAttestationOptions, type DirectAttestationProof, };
35
37
  /** SDK version string. */
36
38
  export declare const VERSION = "0.8.0";
37
39
  /**
@@ -130,6 +132,16 @@ declare const oneid: {
130
132
  listCredentialPointers: typeof listCredentialPointers;
131
133
  setCredentialPointerVisibility: typeof setCredentialPointerVisibility;
132
134
  removeCredentialPointer: typeof removeCredentialPointer;
135
+ prepareAttestation: typeof prepareAttestation;
136
+ prepare_direct_hardware_attestation: typeof prepare_direct_hardware_attestation;
137
+ compute_rfc_message_binding_nonce: typeof compute_rfc_message_binding_nonce;
138
+ canonicalise_headers_for_message_binding: typeof canonicalise_headers_for_message_binding;
139
+ canonicalise_headers_for_direct_attestation: typeof canonicalise_headers_for_direct_attestation;
140
+ canonicalise_body_using_dkim_simple: typeof canonicalise_body_using_dkim_simple;
141
+ canonicalise_header_value_using_dkim_relaxed: typeof canonicalise_header_value_using_dkim_relaxed;
142
+ canonicalise_header_name_using_dkim_relaxed: typeof canonicalise_header_name_using_dkim_relaxed;
143
+ compute_attestation_digest_for_direct_mode: typeof compute_attestation_digest_for_direct_mode;
144
+ build_cms_signed_data_for_direct_attestation: typeof build_cms_signed_data_for_direct_attestation;
133
145
  VERSION: string;
134
146
  TrustTier: typeof TrustTier;
135
147
  KeyAlgorithm: typeof KeyAlgorithm;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -24,6 +24,7 @@ import { DEFAULT_KEY_ALGORITHM, HSMType, KeyAlgorithm, TrustTier, this_token_has
24
24
  import { fetch_world_status_from_server, invalidate_world_cache, } from "./world.js";
25
25
  import { listDevices, lockHardware, registerOperatorEmail, } from "./devices.js";
26
26
  import { signChallenge, verifyPeerIdentity, PeerVerificationError, CertificateChainValidationError, SignatureVerificationError, MissingIdentityCertificateError, } from "./verify.js";
27
+ import { prepareAttestation, prepare_direct_hardware_attestation, compute_rfc_message_binding_nonce, canonicalise_headers_for_message_binding, canonicalise_headers_for_direct_attestation, canonicalise_body_using_dkim_simple, canonicalise_header_value_using_dkim_relaxed, canonicalise_header_name_using_dkim_relaxed, compute_attestation_digest_for_direct_mode, build_cms_signed_data_for_direct_attestation, } from "./attestation.js";
27
28
  import { refresh_trust_roots, get_trust_roots } from "./trustRoots.js";
28
29
  import { generateConsentToken, listCredentialPointers, setCredentialPointerVisibility, removeCredentialPointer, } from "./credentialPointers.js";
29
30
  // Re-export all exception classes
@@ -36,6 +37,8 @@ export { invalidate_world_cache, };
36
37
  export { signChallenge, verifyPeerIdentity, refresh_trust_roots, get_trust_roots, PeerVerificationError, CertificateChainValidationError, SignatureVerificationError, MissingIdentityCertificateError, };
37
38
  // Re-export credential pointer functions and types
38
39
  export { generateConsentToken, listCredentialPointers, setCredentialPointerVisibility, removeCredentialPointer, };
40
+ // Re-export attestation functions and types
41
+ export { prepareAttestation, prepare_direct_hardware_attestation, compute_rfc_message_binding_nonce, canonicalise_headers_for_message_binding, canonicalise_headers_for_direct_attestation, canonicalise_body_using_dkim_simple, canonicalise_header_value_using_dkim_relaxed, canonicalise_header_name_using_dkim_relaxed, compute_attestation_digest_for_direct_mode, build_cms_signed_data_for_direct_attestation, };
39
42
  /** SDK version string. */
40
43
  export const VERSION = "0.8.0";
41
44
  /**
@@ -203,6 +206,16 @@ const oneid = {
203
206
  listCredentialPointers,
204
207
  setCredentialPointerVisibility,
205
208
  removeCredentialPointer,
209
+ prepareAttestation,
210
+ prepare_direct_hardware_attestation,
211
+ compute_rfc_message_binding_nonce,
212
+ canonicalise_headers_for_message_binding,
213
+ canonicalise_headers_for_direct_attestation,
214
+ canonicalise_body_using_dkim_simple,
215
+ canonicalise_header_value_using_dkim_relaxed,
216
+ canonicalise_header_name_using_dkim_relaxed,
217
+ compute_attestation_digest_for_direct_mode,
218
+ build_cms_signed_data_for_direct_attestation,
206
219
  VERSION,
207
220
  TrustTier,
208
221
  KeyAlgorithm,
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/keys.d.ts CHANGED
File without changes
File without changes
package/dist/keys.js CHANGED
File without changes
package/dist/keys.js.map CHANGED
File without changes
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Unit tests for the attestation module (DKIM canonicalization + RFC nonce).
3
+ *
4
+ * Pure function tests -- no network calls, no credential files.
5
+ * Uses Node.js built-in test runner (node --test).
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=test_attestation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test_attestation.d.ts","sourceRoot":"","sources":["../../src/test/test_attestation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,200 @@
1
+ /**
2
+ * Unit tests for the attestation module (DKIM canonicalization + RFC nonce).
3
+ *
4
+ * Pure function tests -- no network calls, no credential files.
5
+ * Uses Node.js built-in test runner (node --test).
6
+ */
7
+ import { describe, it } from "node:test";
8
+ import { strict as assert } from "node:assert";
9
+ import { createHash } from "node:crypto";
10
+ import { canonicalise_header_value_using_dkim_relaxed, canonicalise_header_name_using_dkim_relaxed, canonicalise_headers_for_message_binding, canonicalise_body_using_dkim_simple, compute_rfc_message_binding_nonce, } from "../attestation.js";
11
+ const _SAMPLE_EMAIL_HEADERS = {
12
+ "From": "agent@mailpal.com",
13
+ "To": "bob@example.com",
14
+ "Subject": "Test Subject",
15
+ "Date": "Thu, 19 Mar 2026 12:00:00 +0000",
16
+ "Message-ID": "<test-001@mailpal.com>",
17
+ };
18
+ describe("DKIM relaxed header name canonicalization (RFC 6376 Section 3.4.2)", () => {
19
+ it("lowercases header names", () => {
20
+ assert.equal(canonicalise_header_name_using_dkim_relaxed("From"), "from");
21
+ assert.equal(canonicalise_header_name_using_dkim_relaxed("MESSAGE-ID"), "message-id");
22
+ assert.equal(canonicalise_header_name_using_dkim_relaxed("Content-Type"), "content-type");
23
+ });
24
+ it("strips leading and trailing whitespace from names", () => {
25
+ assert.equal(canonicalise_header_name_using_dkim_relaxed(" Subject "), "subject");
26
+ assert.equal(canonicalise_header_name_using_dkim_relaxed("\tDate\t"), "date");
27
+ });
28
+ });
29
+ describe("DKIM relaxed header value canonicalization (RFC 6376 Section 3.4.2)", () => {
30
+ it("compresses interior whitespace runs to single space", () => {
31
+ assert.equal(canonicalise_header_value_using_dkim_relaxed("hello world"), "hello world");
32
+ assert.equal(canonicalise_header_value_using_dkim_relaxed("a\t\tb"), "a b");
33
+ assert.equal(canonicalise_header_value_using_dkim_relaxed("x \t y"), "x y");
34
+ });
35
+ it("strips trailing whitespace", () => {
36
+ assert.equal(canonicalise_header_value_using_dkim_relaxed("value "), "value");
37
+ assert.equal(canonicalise_header_value_using_dkim_relaxed("value\t"), "value");
38
+ });
39
+ it("strips leading whitespace", () => {
40
+ assert.equal(canonicalise_header_value_using_dkim_relaxed(" value"), "value");
41
+ });
42
+ it("unfolds CRLF-continuation lines", () => {
43
+ assert.equal(canonicalise_header_value_using_dkim_relaxed("line1\r\n continuation"), "line1 continuation");
44
+ });
45
+ it("unfolds LF-only continuation lines", () => {
46
+ assert.equal(canonicalise_header_value_using_dkim_relaxed("line1\n continuation"), "line1 continuation");
47
+ });
48
+ it("unfolds tab-continuation lines", () => {
49
+ assert.equal(canonicalise_header_value_using_dkim_relaxed("line1\r\n\tcontinuation"), "line1 continuation");
50
+ });
51
+ it("passes through simple values unchanged", () => {
52
+ assert.equal(canonicalise_header_value_using_dkim_relaxed("simple"), "simple");
53
+ assert.equal(canonicalise_header_value_using_dkim_relaxed("agent@mailpal.com"), "agent@mailpal.com");
54
+ });
55
+ });
56
+ describe("DKIM simple body canonicalization (RFC 6376 Section 3.4.3)", () => {
57
+ it("returns single CRLF for empty body", () => {
58
+ assert.deepEqual(canonicalise_body_using_dkim_simple(Buffer.alloc(0)), Buffer.from("\r\n"));
59
+ });
60
+ it("strips trailing empty lines (multiple CRLF)", () => {
61
+ assert.deepEqual(canonicalise_body_using_dkim_simple(Buffer.from("text\r\n\r\n\r\n")), Buffer.from("text\r\n"));
62
+ });
63
+ it("appends CRLF if missing from non-empty body", () => {
64
+ assert.deepEqual(canonicalise_body_using_dkim_simple(Buffer.from("text")), Buffer.from("text\r\n"));
65
+ });
66
+ it("preserves body already ending with single CRLF", () => {
67
+ assert.deepEqual(canonicalise_body_using_dkim_simple(Buffer.from("body text\r\n")), Buffer.from("body text\r\n"));
68
+ });
69
+ it("preserves interior empty lines while stripping only trailing ones", () => {
70
+ const input = Buffer.from("line1\r\n\r\nline3\r\n\r\n\r\n");
71
+ const expected = Buffer.from("line1\r\n\r\nline3\r\n");
72
+ assert.deepEqual(canonicalise_body_using_dkim_simple(input), expected);
73
+ });
74
+ });
75
+ describe("canonicalise_headers_for_message_binding", () => {
76
+ it("throws when required headers are missing", () => {
77
+ assert.throws(() => canonicalise_headers_for_message_binding({ "From": "a@b.com" }), { message: /Missing required email header/ });
78
+ });
79
+ it("produces a Buffer with all required headers", () => {
80
+ const result = canonicalise_headers_for_message_binding(_SAMPLE_EMAIL_HEADERS);
81
+ assert.ok(Buffer.isBuffer(result));
82
+ const decoded = result.toString("utf-8");
83
+ assert.ok(decoded.includes("from:agent@mailpal.com\r\n"));
84
+ assert.ok(decoded.includes("to:bob@example.com\r\n"));
85
+ assert.ok(decoded.includes("subject:Test Subject\r\n"));
86
+ assert.ok(decoded.includes("date:Thu, 19 Mar 2026 12:00:00 +0000\r\n"));
87
+ assert.ok(decoded.includes("message-id:<test-001@mailpal.com>\r\n"));
88
+ });
89
+ it("appends Hardware-Trust-Proof as last header without trailing CRLF", () => {
90
+ const result = canonicalise_headers_for_message_binding(_SAMPLE_EMAIL_HEADERS);
91
+ const decoded = result.toString("utf-8");
92
+ assert.ok(decoded.endsWith("hardware-trust-proof:"));
93
+ assert.ok(!decoded.endsWith("hardware-trust-proof:\r\n"));
94
+ });
95
+ it("includes a placeholder value for Hardware-Trust-Proof when provided", () => {
96
+ const result = canonicalise_headers_for_message_binding(_SAMPLE_EMAIL_HEADERS, "placeholder-jwt-value");
97
+ const decoded = result.toString("utf-8");
98
+ assert.ok(decoded.endsWith("hardware-trust-proof:placeholder-jwt-value"));
99
+ });
100
+ it("excludes Hardware-Trust-Proof from input headers (it is always appended last)", () => {
101
+ const headers_with_htp = {
102
+ ..._SAMPLE_EMAIL_HEADERS,
103
+ "Hardware-Trust-Proof": "should-be-excluded-from-sorted-section",
104
+ };
105
+ const result = canonicalise_headers_for_message_binding(headers_with_htp);
106
+ const decoded = result.toString("utf-8");
107
+ const htp_occurrences = decoded.split("hardware-trust-proof:").length - 1;
108
+ assert.equal(htp_occurrences, 1, "Hardware-Trust-Proof should appear exactly once (appended)");
109
+ });
110
+ it("sorts extra headers alphabetically after the required five", () => {
111
+ const headers_with_extras = {
112
+ ..._SAMPLE_EMAIL_HEADERS,
113
+ "X-Zebra": "last-extra",
114
+ "X-Alpha": "first-extra",
115
+ };
116
+ const result = canonicalise_headers_for_message_binding(headers_with_extras);
117
+ const decoded = result.toString("utf-8");
118
+ const alpha_position = decoded.indexOf("x-alpha:");
119
+ const zebra_position = decoded.indexOf("x-zebra:");
120
+ assert.ok(alpha_position < zebra_position, "x-alpha should come before x-zebra");
121
+ const htp_position = decoded.indexOf("hardware-trust-proof:");
122
+ assert.ok(zebra_position < htp_position, "extras should come before hardware-trust-proof");
123
+ });
124
+ it("is case-insensitive for input header keys", () => {
125
+ const mixed_case_headers = {
126
+ "FROM": "agent@mailpal.com",
127
+ "to": "bob@example.com",
128
+ "Subject": "Test Subject",
129
+ "DATE": "Thu, 19 Mar 2026 12:00:00 +0000",
130
+ "message-id": "<test-001@mailpal.com>",
131
+ };
132
+ const result_mixed = canonicalise_headers_for_message_binding(mixed_case_headers);
133
+ const result_original = canonicalise_headers_for_message_binding(_SAMPLE_EMAIL_HEADERS);
134
+ assert.deepEqual(result_mixed, result_original);
135
+ });
136
+ });
137
+ describe("compute_rfc_message_binding_nonce (RFC Section 5.3)", () => {
138
+ it("produces a base64url string without padding", () => {
139
+ const nonce = compute_rfc_message_binding_nonce(_SAMPLE_EMAIL_HEADERS, Buffer.from("Hello, world!\r\n"), 1711022400);
140
+ assert.equal(typeof nonce, "string");
141
+ assert.ok(!nonce.includes("="), "no padding");
142
+ assert.ok(!nonce.includes("+"), "no + (base64url uses - instead)");
143
+ assert.ok(!nonce.includes("/"), "no / (base64url uses _ instead)");
144
+ });
145
+ it("produces exactly 43 characters (base64url of SHA-256)", () => {
146
+ const nonce = compute_rfc_message_binding_nonce(_SAMPLE_EMAIL_HEADERS, Buffer.from("test body"), 1711022400);
147
+ assert.equal(nonce.length, 43);
148
+ });
149
+ it("is deterministic for identical inputs", () => {
150
+ const nonce_first = compute_rfc_message_binding_nonce(_SAMPLE_EMAIL_HEADERS, Buffer.from("Same body"), 1711022400);
151
+ const nonce_second = compute_rfc_message_binding_nonce(_SAMPLE_EMAIL_HEADERS, Buffer.from("Same body"), 1711022400);
152
+ assert.equal(nonce_first, nonce_second);
153
+ });
154
+ it("differs when body changes", () => {
155
+ const nonce_a = compute_rfc_message_binding_nonce(_SAMPLE_EMAIL_HEADERS, Buffer.from("Body A"), 1711022400);
156
+ const nonce_b = compute_rfc_message_binding_nonce(_SAMPLE_EMAIL_HEADERS, Buffer.from("Body B"), 1711022400);
157
+ assert.notEqual(nonce_a, nonce_b);
158
+ });
159
+ it("differs when headers change", () => {
160
+ const headers_a = { ..._SAMPLE_EMAIL_HEADERS, Subject: "Subject A" };
161
+ const headers_b = { ..._SAMPLE_EMAIL_HEADERS, Subject: "Subject B" };
162
+ const nonce_a = compute_rfc_message_binding_nonce(headers_a, Buffer.from("Same body"), 1711022400);
163
+ const nonce_b = compute_rfc_message_binding_nonce(headers_b, Buffer.from("Same body"), 1711022400);
164
+ assert.notEqual(nonce_a, nonce_b);
165
+ });
166
+ it("differs when timestamp changes", () => {
167
+ const nonce_a = compute_rfc_message_binding_nonce(_SAMPLE_EMAIL_HEADERS, Buffer.from("Same body"), 1711022400);
168
+ const nonce_b = compute_rfc_message_binding_nonce(_SAMPLE_EMAIL_HEADERS, Buffer.from("Same body"), 1711022401);
169
+ assert.notEqual(nonce_a, nonce_b);
170
+ });
171
+ it("matches manual RFC Section 5.3 computation", () => {
172
+ const body_bytes = Buffer.from("Hello, world!\r\n");
173
+ const iat = 1711022400;
174
+ const canonicalised_header_bytes = canonicalise_headers_for_message_binding(_SAMPLE_EMAIL_HEADERS);
175
+ const h_hash = createHash("sha256").update(canonicalised_header_bytes).digest();
176
+ const canonicalised_body = canonicalise_body_using_dkim_simple(body_bytes);
177
+ const bh_raw = createHash("sha256").update(canonicalised_body).digest();
178
+ const ts_bytes = Buffer.alloc(8);
179
+ ts_bytes.writeBigUInt64BE(BigInt(iat));
180
+ const message_binding = Buffer.concat([h_hash, bh_raw, ts_bytes]);
181
+ const expected_nonce = createHash("sha256").update(message_binding).digest().toString("base64url");
182
+ const actual_nonce = compute_rfc_message_binding_nonce(_SAMPLE_EMAIL_HEADERS, body_bytes, iat);
183
+ assert.equal(actual_nonce, expected_nonce);
184
+ });
185
+ it("handles large timestamps (year 2100+)", () => {
186
+ const far_future_iat = 4102444800;
187
+ const nonce = compute_rfc_message_binding_nonce(_SAMPLE_EMAIL_HEADERS, Buffer.from("future body"), far_future_iat);
188
+ assert.equal(nonce.length, 43);
189
+ assert.equal(typeof nonce, "string");
190
+ });
191
+ it("handles zero timestamp", () => {
192
+ const nonce = compute_rfc_message_binding_nonce(_SAMPLE_EMAIL_HEADERS, Buffer.from("epoch body"), 0);
193
+ assert.equal(nonce.length, 43);
194
+ });
195
+ it("handles unicode body content", () => {
196
+ const nonce = compute_rfc_message_binding_nonce(_SAMPLE_EMAIL_HEADERS, Buffer.from("Hello \u{1F600} world \u00E9\u00E8\u00EA"), 1711022400);
197
+ assert.equal(nonce.length, 43);
198
+ });
199
+ });
200
+ //# sourceMappingURL=test_attestation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test_attestation.js","sourceRoot":"","sources":["../../src/test/test_attestation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EACL,4CAA4C,EAC5C,2CAA2C,EAC3C,wCAAwC,EACxC,mCAAmC,EACnC,iCAAiC,GAClC,MAAM,mBAAmB,CAAC;AAE3B,MAAM,qBAAqB,GAA2B;IACpD,MAAM,EAAE,mBAAmB;IAC3B,IAAI,EAAE,iBAAiB;IACvB,SAAS,EAAE,cAAc;IACzB,MAAM,EAAE,iCAAiC;IACzC,YAAY,EAAE,wBAAwB;CACvC,CAAC;AAEF,QAAQ,CAAC,oEAAoE,EAAE,GAAG,EAAE;IAClF,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACjC,MAAM,CAAC,KAAK,CAAC,2CAA2C,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;QAC1E,MAAM,CAAC,KAAK,CAAC,2CAA2C,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC,CAAC;QACtF,MAAM,CAAC,KAAK,CAAC,2CAA2C,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC,CAAC;IAC5F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,CAAC,KAAK,CAAC,2CAA2C,CAAC,aAAa,CAAC,EAAE,SAAS,CAAC,CAAC;QACpF,MAAM,CAAC,KAAK,CAAC,2CAA2C,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,qEAAqE,EAAE,GAAG,EAAE;IACnF,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,CAAC,KAAK,CAAC,4CAA4C,CAAC,eAAe,CAAC,EAAE,aAAa,CAAC,CAAC;QAC3F,MAAM,CAAC,KAAK,CAAC,4CAA4C,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5E,MAAM,CAAC,KAAK,CAAC,4CAA4C,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,CAAC,KAAK,CAAC,4CAA4C,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;QAChF,MAAM,CAAC,KAAK,CAAC,4CAA4C,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC;IACjF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,MAAM,CAAC,KAAK,CAAC,4CAA4C,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,CAAC,KAAK,CACV,4CAA4C,CAAC,wBAAwB,CAAC,EACtE,oBAAoB,CACrB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,CAAC,KAAK,CACV,4CAA4C,CAAC,sBAAsB,CAAC,EACpE,oBAAoB,CACrB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,CAAC,KAAK,CACV,4CAA4C,CAAC,yBAAyB,CAAC,EACvE,oBAAoB,CACrB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,CAAC,KAAK,CAAC,4CAA4C,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC/E,MAAM,CAAC,KAAK,CAAC,4CAA4C,CAAC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC,CAAC;IACvG,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,4DAA4D,EAAE,GAAG,EAAE;IAC1E,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,CAAC,SAAS,CAAC,mCAAmC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,CAAC,SAAS,CACd,mCAAmC,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EACpE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CACxB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,CAAC,SAAS,CACd,mCAAmC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EACxD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CACxB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;QACxD,MAAM,CAAC,SAAS,CACd,mCAAmC,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,EACjE,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAC7B,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC3E,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAC5D,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACvD,MAAM,CAAC,SAAS,CAAC,mCAAmC,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,0CAA0C,EAAE,GAAG,EAAE;IACxD,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,CAAC,MAAM,CACX,GAAG,EAAE,CAAC,wCAAwC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EACrE,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAC7C,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,MAAM,GAAG,wCAAwC,CAAC,qBAAqB,CAAC,CAAC;QAC/E,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC,CAAC;QAC1D,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAC;QACtD,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACxD,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,0CAA0C,CAAC,CAAC,CAAC;QACxE,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,uCAAuC,CAAC,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC3E,MAAM,MAAM,GAAG,wCAAwC,CAAC,qBAAqB,CAAC,CAAC;QAC/E,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;QAC7E,MAAM,MAAM,GAAG,wCAAwC,CACrD,qBAAqB,EACrB,uBAAuB,CACxB,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,4CAA4C,CAAC,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+EAA+E,EAAE,GAAG,EAAE;QACvF,MAAM,gBAAgB,GAAG;YACvB,GAAG,qBAAqB;YACxB,sBAAsB,EAAE,wCAAwC;SACjE,CAAC;QACF,MAAM,MAAM,GAAG,wCAAwC,CAAC,gBAAgB,CAAC,CAAC;QAC1E,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1E,MAAM,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,EAAE,4DAA4D,CAAC,CAAC;IACjG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,MAAM,mBAAmB,GAAG;YAC1B,GAAG,qBAAqB;YACxB,SAAS,EAAE,YAAY;YACvB,SAAS,EAAE,aAAa;SACzB,CAAC;QACF,MAAM,MAAM,GAAG,wCAAwC,CAAC,mBAAmB,CAAC,CAAC;QAC7E,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACnD,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACnD,MAAM,CAAC,EAAE,CAAC,cAAc,GAAG,cAAc,EAAE,oCAAoC,CAAC,CAAC;QACjF,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAC9D,MAAM,CAAC,EAAE,CAAC,cAAc,GAAG,YAAY,EAAE,gDAAgD,CAAC,CAAC;IAC7F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACnD,MAAM,kBAAkB,GAA2B;YACjD,MAAM,EAAE,mBAAmB;YAC3B,IAAI,EAAE,iBAAiB;YACvB,SAAS,EAAE,cAAc;YACzB,MAAM,EAAE,iCAAiC;YACzC,YAAY,EAAE,wBAAwB;SACvC,CAAC;QACF,MAAM,YAAY,GAAG,wCAAwC,CAAC,kBAAkB,CAAC,CAAC;QAClF,MAAM,eAAe,GAAG,wCAAwC,CAAC,qBAAqB,CAAC,CAAC;QACxF,MAAM,CAAC,SAAS,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,qDAAqD,EAAE,GAAG,EAAE;IACnE,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,KAAK,GAAG,iCAAiC,CAC7C,qBAAqB,EACrB,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAChC,UAAU,CACX,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC;QACrC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,YAAY,CAAC,CAAC;QAC9C,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,iCAAiC,CAAC,CAAC;QACnE,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,iCAAiC,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,KAAK,GAAG,iCAAiC,CAC7C,qBAAqB,EACrB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EACxB,UAAU,CACX,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,WAAW,GAAG,iCAAiC,CACnD,qBAAqB,EACrB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EACxB,UAAU,CACX,CAAC;QACF,MAAM,YAAY,GAAG,iCAAiC,CACpD,qBAAqB,EACrB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EACxB,UAAU,CACX,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,MAAM,OAAO,GAAG,iCAAiC,CAC/C,qBAAqB,EACrB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EACrB,UAAU,CACX,CAAC;QACF,MAAM,OAAO,GAAG,iCAAiC,CAC/C,qBAAqB,EACrB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EACrB,UAAU,CACX,CAAC;QACF,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,MAAM,SAAS,GAAG,EAAE,GAAG,qBAAqB,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;QACrE,MAAM,SAAS,GAAG,EAAE,GAAG,qBAAqB,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;QACrE,MAAM,OAAO,GAAG,iCAAiC,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC,CAAC;QACnG,MAAM,OAAO,GAAG,iCAAiC,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC,CAAC;QACnG,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,OAAO,GAAG,iCAAiC,CAC/C,qBAAqB,EACrB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EACxB,UAAU,CACX,CAAC;QACF,MAAM,OAAO,GAAG,iCAAiC,CAC/C,qBAAqB,EACrB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EACxB,UAAU,CACX,CAAC;QACF,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACpD,MAAM,GAAG,GAAG,UAAU,CAAC;QAEvB,MAAM,0BAA0B,GAAG,wCAAwC,CAAC,qBAAqB,CAAC,CAAC;QACnG,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC,MAAM,EAAE,CAAC;QAEhF,MAAM,kBAAkB,GAAG,mCAAmC,CAAC,UAAU,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,MAAM,EAAE,CAAC;QAExE,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAEvC,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QAClE,MAAM,cAAc,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAEnG,MAAM,YAAY,GAAG,iCAAiC,CACpD,qBAAqB,EACrB,UAAU,EACV,GAAG,CACJ,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,cAAc,GAAG,UAAU,CAAC;QAClC,MAAM,KAAK,GAAG,iCAAiC,CAC7C,qBAAqB,EACrB,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAC1B,cAAc,CACf,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC/B,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;QAChC,MAAM,KAAK,GAAG,iCAAiC,CAC7C,qBAAqB,EACrB,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EACzB,CAAC,CACF,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACtC,MAAM,KAAK,GAAG,iCAAiC,CAC7C,qBAAqB,EACrB,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,EACvD,UAAU,CACX,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/dist/verify.d.ts CHANGED
@@ -13,6 +13,7 @@
13
13
  * No secrets are exchanged. The verifier never contacts 1ID. Once the
14
14
  * trust root is cached locally, verification is entirely offline.
15
15
  */
16
+ import { type StoredCredentials } from "./credentials.js";
16
17
  import { OneIDError } from "./exceptions.js";
17
18
  export declare class PeerVerificationError extends OneIDError {
18
19
  constructor(message: string, error_code?: string);
@@ -40,6 +41,7 @@ export interface VerifiedPeerIdentity {
40
41
  hardware_locked: boolean;
41
42
  chain_valid: boolean;
42
43
  }
44
+ export declare function determine_signing_algorithm_name(creds: StoredCredentials): string;
43
45
  /**
44
46
  * Sign a verifier-provided nonce and assemble a proof bundle.
45
47
  *
@@ -1 +1 @@
1
- {"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EAAoB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAQ/D,qBAAa,qBAAsB,SAAQ,UAAU;gBACvC,OAAO,EAAE,MAAM,EAAE,UAAU,GAAE,MAAkC;CAI5E;AAED,qBAAa,+BAAgC,SAAQ,qBAAqB;gBAC5D,OAAO,EAAE,MAAM;CAI5B;AAED,qBAAa,0BAA2B,SAAQ,qBAAqB;gBACvD,OAAO,EAAE,MAAM;CAI5B;AAED,qBAAa,+BAAgC,SAAQ,qBAAqB;gBAC5D,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,EAAE,OAAO,CAAC;CACtB;AA+BD;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CA0CrF;AAwJD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,mBAAmB,EACjC,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,oBAAoB,CAAC,CAsD/B"}
1
+ {"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC5E,OAAO,EAAoB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAQ/D,qBAAa,qBAAsB,SAAQ,UAAU;gBACvC,OAAO,EAAE,MAAM,EAAE,UAAU,GAAE,MAAkC;CAI5E;AAED,qBAAa,+BAAgC,SAAQ,qBAAqB;gBAC5D,OAAO,EAAE,MAAM;CAI5B;AAED,qBAAa,0BAA2B,SAAQ,qBAAqB;gBACvD,OAAO,EAAE,MAAM;CAI5B;AAED,qBAAa,+BAAgC,SAAQ,qBAAqB;gBAC5D,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAOjF;AAuCD;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAiDrF;AAwJD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,mBAAmB,EACjC,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,oBAAoB,CAAC,CAsD/B"}
package/dist/verify.js CHANGED
@@ -45,7 +45,7 @@ export class MissingIdentityCertificateError extends PeerVerificationError {
45
45
  this.name = "MissingIdentityCertificateError";
46
46
  }
47
47
  }
48
- function determine_signing_algorithm_name(creds) {
48
+ export function determine_signing_algorithm_name(creds) {
49
49
  const algo = (creds.key_algorithm ?? "").toLowerCase();
50
50
  if (algo.includes("ed25519")) {
51
51
  return "EdDSA";
@@ -79,6 +79,17 @@ async function sign_with_piv(nonce_bytes) {
79
79
  const algorithm = algorithm_raw.toUpperCase().includes("ECDSA") ? "ES256" : algorithm_raw;
80
80
  return { signature_bytes: Buffer.from(signature_b64, "base64"), algorithm };
81
81
  }
82
+ async function sign_with_enclave(nonce_bytes, enclave_key_data_representation_b64) {
83
+ const { sign_challenge_with_enclave } = await import("./helper.js");
84
+ const { restore_enclave_key_file_from_credentials_if_missing } = await import("./enroll.js");
85
+ if (enclave_key_data_representation_b64) {
86
+ restore_enclave_key_file_from_credentials_if_missing(enclave_key_data_representation_b64);
87
+ }
88
+ const nonce_b64 = nonce_bytes.toString("base64");
89
+ const result = await sign_challenge_with_enclave(nonce_b64);
90
+ const signature_b64 = result["signature_b64"] ?? "";
91
+ return { signature_bytes: Buffer.from(signature_b64, "base64"), algorithm: "ES256" };
92
+ }
82
93
  /**
83
94
  * Sign a verifier-provided nonce and assemble a proof bundle.
84
95
  *
@@ -112,6 +123,11 @@ export async function signChallenge(nonce_bytes) {
112
123
  signature_bytes = result.signature_bytes;
113
124
  algorithm = result.algorithm;
114
125
  }
126
+ else if (trust_tier === "enclave") {
127
+ const result = await sign_with_enclave(nonce_bytes, creds.enclave_key_data_representation_b64);
128
+ signature_bytes = result.signature_bytes;
129
+ algorithm = result.algorithm;
130
+ }
115
131
  else if (creds.private_key_pem) {
116
132
  signature_bytes = sign_challenge_with_private_key(creds.private_key_pem, nonce_bytes);
117
133
  algorithm = determine_signing_algorithm_name(creds);
@@ -300,7 +316,7 @@ export async function verifyPeerIdentity(nonce_bytes, proof_bundle, api_base_url
300
316
  // Try to extract agent_id from SAN URI
301
317
  let verified_agent_id = proof_bundle.agent_id;
302
318
  const san_string = leaf_cert.subjectAltName ?? "";
303
- const uri_match = san_string.match(/URI:urn:oneid:agent:([^\s,]+)/);
319
+ const uri_match = san_string.match(/URI:urn:aid:[^:]+:([^\s,]+)/);
304
320
  if (uri_match) {
305
321
  verified_agent_id = uri_match[1];
306
322
  }
@@ -1 +1 @@
1
- {"version":3,"file":"verify.js","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAA0B,MAAM,kBAAkB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,+BAA+B,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,kCAAkC,EAAE,MAAM,iBAAiB,CAAC;AAEtF,MAAM,oBAAoB,GAAG,uBAAuB,CAAC;AACrD,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AACtD,MAAM,yBAAyB,GAAG,uBAAuB,CAAC;AAE1D,MAAM,OAAO,qBAAsB,SAAQ,UAAU;IACnD,YAAY,OAAe,EAAE,aAAqB,yBAAyB;QACzE,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AAED,MAAM,OAAO,+BAAgC,SAAQ,qBAAqB;IACxE,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,oCAAoC,CAAC,CAAC;QACrD,IAAI,CAAC,IAAI,GAAG,iCAAiC,CAAC;IAChD,CAAC;CACF;AAED,MAAM,OAAO,0BAA2B,SAAQ,qBAAqB;IACnE,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,8BAA8B,CAAC,CAAC;QAC/C,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;IAC3C,CAAC;CACF;AAED,MAAM,OAAO,+BAAgC,SAAQ,qBAAqB;IACxE,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,8BAA8B,CAAC,CAAC;QAC/C,IAAI,CAAC,IAAI,GAAG,iCAAiC,CAAC;IAChD,CAAC;CACF;AAkBD,SAAS,gCAAgC,CAAC,KAAwB;IAChE,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACvD,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAAC,OAAO,OAAO,CAAC;IAAC,CAAC;IACjD,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QAAC,OAAO,OAAO,CAAC;IAAC,CAAC;IACvG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAAC,OAAO,OAAO,CAAC;IAAC,CAAC;IAC1H,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAAC,OAAO,OAAO,CAAC;IAAC,CAAC;IACxE,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,WAAmB,EAAE,SAAiB;IACjE,MAAM,EAAE,uBAAuB,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACnE,MAAM,aAAa,GAAI,MAAM,CAAC,eAAe,CAAY,IAAI,EAAE,CAAC;IAChE,MAAM,aAAa,GAAI,MAAM,CAAC,WAAW,CAAY,IAAI,eAAe,CAAC;IACzE,MAAM,SAAS,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC;IACxF,OAAO,EAAE,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAC;AAC9E,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,WAAmB;IAC9C,MAAM,EAAE,uBAAuB,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,SAAS,CAAC,CAAC;IACxD,MAAM,aAAa,GAAI,MAAM,CAAC,eAAe,CAAY,IAAI,EAAE,CAAC;IAChE,MAAM,aAAa,GAAI,MAAM,CAAC,WAAW,CAAY,IAAI,cAAc,CAAC;IACxE,MAAM,SAAS,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC;IAC1F,OAAO,EAAE,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAC;AAC9E,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,WAAmB;IACrD,MAAM,KAAK,GAAG,gBAAgB,EAAE,CAAC;IAEjC,IAAI,CAAC,KAAK,CAAC,8BAA8B,EAAE,CAAC;QAC1C,MAAM,IAAI,+BAA+B,CACvC,sDAAsD;YACtD,qEAAqE;YACrE,6DAA6D,CAC9D,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,UAAU,CAAC;IAClD,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC;IACjC,IAAI,eAAuB,CAAC;IAC5B,IAAI,SAAiB,CAAC;IAEtB,IAAI,UAAU,KAAK,WAAW,IAAI,UAAU,KAAK,SAAS,IAAI,KAAK,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;QAC/F,MAAM,SAAS,GAAG,KAAK,CAAC,iBAAiB,IAAI,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAC3D,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;QACzC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IAC/B,CAAC;SAAM,IAAI,UAAU,KAAK,UAAU,IAAI,KAAK,CAAC,iBAAiB,KAAK,aAAa,EAAE,CAAC;QAClF,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,WAAW,CAAC,CAAC;QAChD,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;QACzC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IAC/B,CAAC;SAAM,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QACjC,eAAe,GAAG,+BAA+B,CAAC,KAAK,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;QACtF,SAAS,GAAG,gCAAgC,CAAC,KAAK,CAAC,CAAC;IACtD,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,gBAAgB,CACxB,mDAAmD;YACnD,2EAA2E,CAC5E,CAAC;IACJ,CAAC;IAED,OAAO;QACL,aAAa,EAAE,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACjD,qBAAqB,EAAE,KAAK,CAAC,8BAA8B;QAC3D,QAAQ;QACR,UAAU;QACV,SAAS;KACV,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,2CAA2C,CAAC,IAA4B,EAAE,UAAkB;IACnG,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC;IACpC,sEAAsE;IACtE,yDAAyD;IACzD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAEpD,6CAA6C;IAC7C,MAAM,iBAAiB,GAAa,EAAE,CAAC;IACvC,iBAAiB,CAAC,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC,CAAE,GAAG,SAAS,CAAC,CAAC,CAAE,CAAC,CAAC;IAC3D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,IAAI,KAAK,GAAG,SAAS,CAAC,CAAC,CAAE,CAAC;QAC1B,IAAI,KAAK,GAAG,GAAG,EAAE,CAAC;YAChB,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAa,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;YACxB,KAAK,KAAK,CAAC,CAAC;YACZ,OAAO,KAAK,GAAG,CAAC,EAAE,CAAC;gBACjB,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;gBACjC,KAAK,KAAK,CAAC,CAAC;YACd,CAAC;YACD,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,iBAAiB,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAElD,oCAAoC;IACpC,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,OAAO,aAAa,GAAG,GAAG,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;QACtD,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;QACxD,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;YAAC,MAAM;QAAC,CAAC;QAE/B,uFAAuF;QACvF,6EAA6E;QAC7E,IAAI,GAAG,GAAG,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC;QACvC,oEAAoE;QACpE,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,OAAO,GAAG,GAAG,GAAG,CAAC,MAAM,IAAI,KAAK,GAAG,EAAE,EAAE,CAAC;YACtC,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAE,CAAC;YACtB,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC,CAAC,eAAe;gBACjC,GAAG,EAAE,CAAC;gBACN,IAAI,YAAY,GAAG,GAAG,CAAC,GAAG,CAAE,CAAC;gBAC7B,GAAG,EAAE,CAAC;gBACN,IAAI,YAAY,GAAG,GAAG,EAAE,CAAC;oBACvB,MAAM,gBAAgB,GAAG,YAAY,GAAG,IAAI,CAAC;oBAC7C,YAAY,GAAG,CAAC,CAAC;oBACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC;wBAC1C,YAAY,GAAG,CAAC,YAAY,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAE,CAAC;wBAC/C,GAAG,EAAE,CAAC;oBACR,CAAC;gBACH,CAAC;gBACD,OAAO,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,YAAY,CAAC,CAAC;YAC/C,CAAC;YACD,gBAAgB;YAChB,GAAG,EAAE,CAAC;YACN,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBAAC,MAAM;YAAC,CAAC;YACjC,IAAI,WAAW,GAAG,GAAG,CAAC,GAAG,CAAE,CAAC;YAC5B,GAAG,EAAE,CAAC;YACN,IAAI,WAAW,GAAG,GAAG,EAAE,CAAC;gBACtB,MAAM,SAAS,GAAG,WAAW,GAAG,IAAI,CAAC;gBACrC,WAAW,GAAG,CAAC,CAAC;gBAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;oBACnC,WAAW,GAAG,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAE,CAAC;oBAC7C,GAAG,EAAE,CAAC;gBACR,CAAC;YACH,CAAC;YACD,GAAG,IAAI,WAAW,CAAC;YACnB,KAAK,EAAE,CAAC;QACV,CAAC;QAED,aAAa,GAAG,QAAQ,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,mCAAmC,CAAC,KAA+B;IAC1E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;QACxB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,+BAA+B,CACvC,2BAA2B,CAAC,6CAA6C,CAAC,GAAG,CAAC,EAAE,CACjF,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,uCAAuC,CAC9C,KAA+B,EAC/B,aAAuC;IAEvC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,+BAA+B,CAAC,4BAA4B,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;IAC5C,MAAM,sBAAsB,GAAG,UAAU,CAAC,cAAc,CAAC;IAEzD,MAAM,eAAe,GAAG,aAAa,CAAC,IAAI,CACxC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,KAAK,sBAAsB,CACzD,CAAC;IAEF,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,IAAI,+BAA+B,CACvC,eAAe,UAAU,CAAC,OAAO,0CAA0C,CAC5E,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,WAAmB,EACnB,eAAuB,EACvB,SAAiC;IAEjC,MAAM,UAAU,GAAG,SAAS,CAAC,SAAS,CAAC;IACvC,MAAM,QAAQ,GAAG,UAAU,CAAC,iBAAiB,CAAC;IAE9C,IAAI,kBAAkB,GAAG,KAAK,CAAC;IAE/B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC;IACrF,CAAC;SAAM,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,UAAU,CAAC,oBAAoB,EAAE,UAAU,CAAC;QAC/D,MAAM,cAAc,GAAG,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;QACpE,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC;IAC/F,CAAC;SAAM,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;QAC9B,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,WAAW,EAAE;YACxD,GAAG,EAAE,UAAU;YACf,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,iBAAiB;SAC5C,EAAE,eAAe,CAAC,CAAC;IACtB,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,0BAA0B,CAAC,gCAAgC,QAAQ,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,MAAM,IAAI,0BAA0B,CAClC,kEAAkE,CACnE,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,WAAmB,EACnB,YAAiC,EACjC,YAAqB;IAErB,MAAM,KAAK,GAAG,kCAAkC,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;IACrF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,+BAA+B,CAAC,iDAAiD,CAAC,CAAC;IAC/F,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC,YAAY,CAAC,CAAC;IAE1D,mCAAmC,CAAC,KAAK,CAAC,CAAC;IAC3C,uCAAuC,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAE9D,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;IAE5B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9C,IAAI,UAAU,GAAG,GAAG,EAAE,CAAC;QACrB,MAAM,IAAI,+BAA+B,CACvC,kDAAkD,SAAS,CAAC,SAAS,GAAG,CACzE,CAAC;IACJ,CAAC;IACD,IAAI,SAAS,GAAG,GAAG,EAAE,CAAC;QACpB,MAAM,IAAI,+BAA+B,CACvC,4CAA4C,SAAS,CAAC,OAAO,GAAG,CACjE,CAAC;IACJ,CAAC;IAED,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IAC1E,sBAAsB,CAAC,WAAW,EAAE,eAAe,EAAE,SAAS,CAAC,CAAC;IAEhE,sDAAsD;IACtD,MAAM,cAAc,GAAG,2CAA2C,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;IACpG,MAAM,eAAe,GAAG,2CAA2C,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;IACtG,MAAM,mBAAmB,GAAG,2CAA2C,CAAC,SAAS,EAAE,yBAAyB,CAAC,CAAC;IAE9G,MAAM,mBAAmB,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC;IACxG,MAAM,oBAAoB,GAAG,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtF,MAAM,wBAAwB,GAAG,mBAAmB,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAE/F,uCAAuC;IACvC,IAAI,iBAAiB,GAAG,YAAY,CAAC,QAAQ,CAAC;IAC9C,MAAM,UAAU,GAAG,SAAS,CAAC,cAAc,IAAI,EAAE,CAAC;IAClD,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACpE,IAAI,SAAS,EAAE,CAAC;QACd,iBAAiB,GAAG,SAAS,CAAC,CAAC,CAAE,CAAC;IACpC,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,iBAAiB;QAC3B,UAAU,EAAE,mBAAmB;QAC/B,WAAW,EAAE,oBAAoB;QACjC,eAAe,EAAE,wBAAwB;QACzC,WAAW,EAAE,IAAI;KAClB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"verify.js","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"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"}
package/dist/world.d.ts CHANGED
File without changes
File without changes
package/dist/world.js CHANGED
File without changes
package/dist/world.js.map CHANGED
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "1id",
3
- "version": "0.8.0",
3
+ "version": "0.10.0",
4
4
  "description": "Hardware-anchored identity SDK for AI agents -- 1id.com",
5
5
  "keywords": [
6
6
  "identity",
@@ -46,8 +46,8 @@
46
46
  "build": "tsc",
47
47
  "clean": "node -e \"const fs=require('fs'); fs.rmSync('dist',{recursive:true,force:true})\"",
48
48
  "prepublishOnly": "npm run clean && npm run build",
49
- "test": "node --test dist/test/test_declared_enrollment.js",
50
- "test:src": "npx tsc && node --test dist/test/test_declared_enrollment.js"
49
+ "test": "node --test dist/test/test_attestation.js",
50
+ "test:src": "npx tsc && node --test dist/test/test_attestation.js"
51
51
  },
52
52
  "devDependencies": {
53
53
  "@types/node": "^25.3.0",