1id 0.5.0 → 0.8.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 (71) hide show
  1. package/LICENSE +0 -0
  2. package/README.md +0 -0
  3. package/dist/auth.d.ts +21 -13
  4. package/dist/auth.d.ts.map +1 -1
  5. package/dist/auth.js +128 -20
  6. package/dist/auth.js.map +1 -1
  7. package/dist/cli.d.ts +0 -0
  8. package/dist/cli.d.ts.map +0 -0
  9. package/dist/cli.js +0 -0
  10. package/dist/cli.js.map +0 -0
  11. package/dist/client.d.ts +5 -0
  12. package/dist/client.d.ts.map +1 -1
  13. package/dist/client.js +9 -0
  14. package/dist/client.js.map +1 -1
  15. package/dist/credentialPointers.d.ts +99 -0
  16. package/dist/credentialPointers.d.ts.map +1 -0
  17. package/dist/credentialPointers.js +138 -0
  18. package/dist/credentialPointers.js.map +1 -0
  19. package/dist/credentials.d.ts +2 -4
  20. package/dist/credentials.d.ts.map +1 -1
  21. package/dist/credentials.js +3 -7
  22. package/dist/credentials.js.map +1 -1
  23. package/dist/devices.d.ts +76 -0
  24. package/dist/devices.d.ts.map +1 -0
  25. package/dist/devices.js +103 -0
  26. package/dist/devices.js.map +1 -0
  27. package/dist/enroll.d.ts +0 -0
  28. package/dist/enroll.d.ts.map +0 -0
  29. package/dist/enroll.js +0 -0
  30. package/dist/enroll.js.map +0 -0
  31. package/dist/exceptions.d.ts +15 -1
  32. package/dist/exceptions.d.ts.map +1 -1
  33. package/dist/exceptions.js +20 -1
  34. package/dist/exceptions.js.map +1 -1
  35. package/dist/helper.d.ts +0 -0
  36. package/dist/helper.d.ts.map +0 -0
  37. package/dist/helper.js +0 -0
  38. package/dist/helper.js.map +0 -0
  39. package/dist/identity.d.ts +0 -0
  40. package/dist/identity.d.ts.map +0 -0
  41. package/dist/identity.js +0 -0
  42. package/dist/identity.js.map +0 -0
  43. package/dist/index.d.ts +49 -16
  44. package/dist/index.d.ts.map +1 -1
  45. package/dist/index.js +60 -25
  46. package/dist/index.js.map +1 -1
  47. package/dist/keys.d.ts +0 -0
  48. package/dist/keys.d.ts.map +0 -0
  49. package/dist/keys.js +0 -0
  50. package/dist/keys.js.map +0 -0
  51. package/dist/test/test_declared_enrollment.d.ts +0 -0
  52. package/dist/test/test_declared_enrollment.d.ts.map +0 -0
  53. package/dist/test/test_declared_enrollment.js +0 -0
  54. package/dist/test/test_declared_enrollment.js.map +0 -0
  55. package/dist/test/test_peer_verification.d.ts +15 -0
  56. package/dist/test/test_peer_verification.d.ts.map +1 -0
  57. package/dist/test/test_peer_verification.js +481 -0
  58. package/dist/test/test_peer_verification.js.map +1 -0
  59. package/dist/trustRoots.d.ts +38 -0
  60. package/dist/trustRoots.d.ts.map +1 -0
  61. package/dist/trustRoots.js +145 -0
  62. package/dist/trustRoots.js.map +1 -0
  63. package/dist/verify.d.ts +71 -0
  64. package/dist/verify.d.ts.map +1 -0
  65. package/dist/verify.js +315 -0
  66. package/dist/verify.js.map +1 -0
  67. package/dist/world.d.ts +83 -0
  68. package/dist/world.d.ts.map +1 -0
  69. package/dist/world.js +122 -0
  70. package/dist/world.js.map +1 -0
  71. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -16,17 +16,28 @@
16
16
  * The SDK auto-detects your hardware (TPM, YubiKey, Secure Enclave)
17
17
  * and enrolls at the highest available trust tier.
18
18
  */
19
- import { clear_cached_token, get_token, authenticate_with_tpm } from "./auth.js";
20
- import { credentials_exist, load_credentials, save_credentials } from "./credentials.js";
19
+ import { clear_cached_token, get_token, authenticate_with_tpm, authenticate_with_piv } from "./auth.js";
20
+ import { credentials_exist, load_credentials } from "./credentials.js";
21
21
  import { enroll } from "./enroll.js";
22
22
  import { sign_challenge_with_private_key } from "./keys.js";
23
23
  import { DEFAULT_KEY_ALGORITHM, HSMType, KeyAlgorithm, TrustTier, this_token_has_not_yet_expired, format_authorization_header_value, format_identity_as_display_string, } from "./identity.js";
24
+ import { fetch_world_status_from_server, invalidate_world_cache, } from "./world.js";
25
+ import { listDevices, lockHardware, registerOperatorEmail, } from "./devices.js";
26
+ import { signChallenge, verifyPeerIdentity, PeerVerificationError, CertificateChainValidationError, SignatureVerificationError, MissingIdentityCertificateError, } from "./verify.js";
27
+ import { refresh_trust_roots, get_trust_roots } from "./trustRoots.js";
28
+ import { generateConsentToken, listCredentialPointers, setCredentialPointerVisibility, removeCredentialPointer, } from "./credentialPointers.js";
24
29
  // Re-export all exception classes
25
- export { OneIDError, EnrollmentError, NoHSMError, UACDeniedError, HSMAccessError, TPMSetupRequiredError, AlreadyEnrolledError, HandleTakenError, HandleInvalidError, HandleRetiredError, AuthenticationError, NetworkError, NotEnrolledError, BinaryNotFoundError, RateLimitExceededError, } from "./exceptions.js";
30
+ export { OneIDError, EnrollmentError, NoHSMError, UACDeniedError, HSMAccessError, TPMSetupRequiredError, AlreadyEnrolledError, HandleTakenError, HandleInvalidError, HandleRetiredError, AuthenticationError, HardwareDeviceNotPresentError, NetworkError, NotEnrolledError, BinaryNotFoundError, RateLimitExceededError, } from "./exceptions.js";
26
31
  // Re-export types and enums
27
32
  export { TrustTier, KeyAlgorithm, HSMType, DEFAULT_KEY_ALGORITHM, this_token_has_not_yet_expired, format_authorization_header_value, format_identity_as_display_string, };
33
+ // Re-export world/status types
34
+ export { invalidate_world_cache, };
35
+ // Re-export peer verification types and functions
36
+ export { signChallenge, verifyPeerIdentity, refresh_trust_roots, get_trust_roots, PeerVerificationError, CertificateChainValidationError, SignatureVerificationError, MissingIdentityCertificateError, };
37
+ // Re-export credential pointer functions and types
38
+ export { generateConsentToken, listCredentialPointers, setCredentialPointerVisibility, removeCredentialPointer, };
28
39
  /** SDK version string. */
29
- export const VERSION = "0.5.0";
40
+ export const VERSION = "0.8.0";
30
41
  /**
31
42
  * Check the current enrolled identity.
32
43
  *
@@ -94,11 +105,24 @@ export function whoami() {
94
105
  *
95
106
  * If you've already enrolled, returns your existing identity instantly
96
107
  * (no network call). If not, enrolls at the best available trust tier.
108
+ *
109
+ * Pass get_only: true when you want to recover context without risking
110
+ * a new enrollment. This is useful for agents resuming after a restart:
111
+ * const id = await oneid.getOrCreateIdentity({ get_only: true });
112
+ *
113
+ * @throws NotEnrolledError if get_only is true and no credentials exist.
97
114
  */
98
115
  export async function getOrCreateIdentity(options) {
99
116
  if (credentials_exist()) {
100
117
  return whoami();
101
118
  }
119
+ if (options?.get_only) {
120
+ const { NotEnrolledError: NotEnrolled } = await import("./exceptions.js");
121
+ throw new NotEnrolled("No 1ID identity found on this machine. " +
122
+ "You passed get_only: true, so no new enrollment was attempted. " +
123
+ "Call getOrCreateIdentity() without get_only to enroll, " +
124
+ "or call enroll() directly.");
125
+ }
102
126
  return enroll({
103
127
  display_name: options?.display_name ?? null,
104
128
  operator_email: options?.operator_email ?? null,
@@ -106,6 +130,23 @@ export async function getOrCreateIdentity(options) {
106
130
  api_base_url: options?.api_base_url,
107
131
  });
108
132
  }
133
+ /**
134
+ * Get the full picture of your 1ID identity and connected services.
135
+ *
136
+ * Calls the server's world endpoint with your Bearer token and returns
137
+ * everything: identity, devices, connected services, available services,
138
+ * and operator guidance.
139
+ *
140
+ * Results are cached for 5 minutes. Call invalidate_world_cache() to force a fresh fetch.
141
+ *
142
+ * @returns WorldStatus with complete identity state.
143
+ * @throws NotEnrolledError if no credentials exist.
144
+ * @throws NetworkError if the server cannot be reached.
145
+ * @throws AuthenticationError if the token is invalid or expired.
146
+ */
147
+ export async function status() {
148
+ return fetch_world_status_from_server();
149
+ }
109
150
  /**
110
151
  * Force-refresh the cached OAuth2 token.
111
152
  *
@@ -133,41 +174,35 @@ export async function setup_tbs() {
133
174
  const result = await setup_tbs_for_non_admin_tpm_access();
134
175
  return result.ok ?? false;
135
176
  }
136
- /**
137
- * Record the user's privacy consent choice in the credentials file.
138
- *
139
- * After the calling application shows a privacy warning and the user
140
- * consents, call this to persist their preferred attestation mode.
141
- *
142
- * @param mode The user's chosen attestation mode: 'sd-jwt' or 'direct'.
143
- * @throws NotEnrolledError if no credentials file exists yet.
144
- * @throws Error if mode is not 'sd-jwt' or 'direct'.
145
- */
146
- export function record_privacy_consent(mode = "sd-jwt") {
147
- if (mode !== "sd-jwt" && mode !== "direct") {
148
- throw new Error(`Invalid attestation mode '${mode}'. Must be 'sd-jwt' or 'direct'.`);
149
- }
150
- const creds = load_credentials();
151
- creds.privacy_consent_given_at = new Date().toISOString();
152
- creds.default_attestation_mode = mode;
153
- save_credentials(creds);
154
- }
155
177
  // Re-export core functions
156
- export { enroll, get_token as getToken, get_token, clear_cached_token, authenticate_with_tpm, credentials_exist, sign_challenge_with_private_key, };
178
+ export { enroll, get_token as getToken, get_token, clear_cached_token, authenticate_with_tpm, authenticate_with_piv, credentials_exist, sign_challenge_with_private_key, listDevices, lockHardware, registerOperatorEmail, };
157
179
  const oneid = {
158
180
  enroll,
159
181
  getOrCreateIdentity,
182
+ status,
160
183
  getToken: get_token,
161
184
  get_token,
162
185
  whoami,
163
186
  refresh,
164
187
  setup_tbs,
165
- record_privacy_consent,
166
188
  credentials_exist,
167
189
  authenticate_with_tpm,
190
+ authenticate_with_piv,
168
191
  sign_challenge_with_private_key,
169
192
  clear_cached_token,
170
193
  format_identity_as_display_string,
194
+ invalidate_world_cache,
195
+ listDevices,
196
+ lockHardware,
197
+ registerOperatorEmail,
198
+ signChallenge,
199
+ verifyPeerIdentity,
200
+ refresh_trust_roots,
201
+ get_trust_roots,
202
+ generateConsentToken,
203
+ listCredentialPointers,
204
+ setCredentialPointerVisibility,
205
+ removeCredentialPointer,
171
206
  VERSION,
172
207
  TrustTier,
173
208
  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":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AACxG,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAoB,MAAM,kBAAkB,CAAC;AACzF,OAAO,EAAE,MAAM,EAAsB,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,+BAA+B,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EACL,qBAAqB,EACrB,OAAO,EAEP,YAAY,EAEZ,SAAS,EACT,8BAA8B,EAC9B,iCAAiC,EACjC,iCAAiC,GAClC,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,8BAA8B,EAC9B,sBAAsB,GAOvB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,WAAW,EACX,YAAY,EACZ,qBAAqB,GAItB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,qBAAqB,EACrB,+BAA+B,EAC/B,0BAA0B,EAC1B,+BAA+B,GAGhC,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,8BAA8B,EAC9B,uBAAuB,GAIxB,MAAM,yBAAyB,CAAC;AAEjC,kCAAkC;AAClC,OAAO,EACL,UAAU,EACV,eAAe,EACf,UAAU,EACV,cAAc,EACd,cAAc,EACd,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,6BAA6B,EAC7B,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AAEzB,4BAA4B;AAC5B,OAAO,EACL,SAAS,EACT,YAAY,EACZ,OAAO,EACP,qBAAqB,EAIrB,8BAA8B,EAC9B,iCAAiC,EACjC,iCAAiC,GAClC,CAAC;AAEF,+BAA+B;AAC/B,OAAO,EAOL,sBAAsB,GACvB,CAAC;AASF,kDAAkD;AAClD,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,qBAAqB,EACrB,+BAA+B,EAC/B,0BAA0B,EAC1B,+BAA+B,GAGhC,CAAC;AAEF,mDAAmD;AACnD,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,8BAA8B,EAC9B,uBAAuB,GAIxB,CAAC;AAEF,0BAA0B;AAC1B,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAE/B;;;;;;;GAOG;AACH,MAAM,UAAU,MAAM;IACpB,MAAM,KAAK,GAAG,gBAAgB,EAAE,CAAC;IAEjC,qBAAqB;IACrB,IAAI,UAAqB,CAAC;IAC1B,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAa,CAAC;IACzD,IAAI,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3C,UAAU,GAAG,KAAK,CAAC,UAAuB,CAAC;IAC7C,CAAC;SAAM,CAAC;QACN,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC;IAClC,CAAC;IAED,wBAAwB;IACxB,IAAI,aAA2B,CAAC;IAChC,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAa,CAAC;IACjE,IAAI,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;QACnD,aAAa,GAAG,KAAK,CAAC,aAA6B,CAAC;IACtD,CAAC;SAAM,CAAC;QACN,aAAa,GAAG,qBAAqB,CAAC;IACxC,CAAC;IAED,oBAAoB;IACpB,IAAI,WAAiB,CAAC;IACtB,IAAI,CAAC;QACH,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;IAC7E,CAAC;IAAC,MAAM,CAAC;QACP,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,MAAM,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC;IACpC,MAAM,MAAM,GAAG,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC;IAE7E,sCAAsC;IACtC,IAAI,QAAQ,GAAmB,IAAI,CAAC;IACpC,IAAI,KAAK,CAAC,eAAe,IAAI,IAAI,EAAE,CAAC;QAClC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAC9B,CAAC;SAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,IAAI,EAAE,CAAC;QAC3C,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;IACzB,CAAC;IAED,OAAO;QACL,WAAW;QACX,MAAM;QACN,UAAU;QACV,QAAQ;QACR,gBAAgB,EAAE,IAAI;QACtB,WAAW;QACX,YAAY,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,aAAa;QACb,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,IAAI,IAAI;QACpD,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,IAAI;KACzC,CAAC;AACJ,CAAC;AAUD;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAoC;IAEpC,IAAI,iBAAiB,EAAE,EAAE,CAAC;QACxB,OAAO,MAAM,EAAE,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,EAAE,QAAQ,EAAE,CAAC;QACtB,MAAM,EAAE,gBAAgB,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAC1E,MAAM,IAAI,WAAW,CACnB,yCAAyC;YACzC,iEAAiE;YACjE,yDAAyD;YACzD,4BAA4B,CAC7B,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;QACZ,YAAY,EAAE,OAAO,EAAE,YAAY,IAAI,IAAI;QAC3C,cAAc,EAAE,OAAO,EAAE,cAAc,IAAI,IAAI;QAC/C,gBAAgB,EAAE,OAAO,EAAE,gBAAgB,IAAI,IAAI;QACnD,YAAY,EAAE,OAAO,EAAE,YAAY;KACpC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM;IAC1B,OAAO,8BAA8B,EAAE,CAAC;AAC1C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,OAAO;IACrB,kBAAkB,EAAE,CAAC;AACvB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,MAAM,EAAE,kCAAkC,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;IAC3E,MAAM,MAAM,GAAG,MAAM,kCAAkC,EAAE,CAAC;IAC1D,OAAQ,MAAM,CAAC,EAAc,IAAI,KAAK,CAAC;AACzC,CAAC;AAED,2BAA2B;AAC3B,OAAO,EACL,MAAM,EACN,SAAS,IAAI,QAAQ,EACrB,SAAS,EACT,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,+BAA+B,EAC/B,WAAW,EACX,YAAY,EACZ,qBAAqB,GACtB,CAAC;AAEF,MAAM,KAAK,GAAG;IACZ,MAAM;IACN,mBAAmB;IACnB,MAAM;IACN,QAAQ,EAAE,SAAS;IACnB,SAAS;IACT,MAAM;IACN,OAAO;IACP,SAAS;IACT,iBAAiB;IACjB,qBAAqB;IACrB,qBAAqB;IACrB,+BAA+B;IAC/B,kBAAkB;IAClB,iCAAiC;IACjC,sBAAsB;IACtB,WAAW;IACX,YAAY;IACZ,qBAAqB;IACrB,aAAa;IACb,kBAAkB;IAClB,mBAAmB;IACnB,eAAe;IACf,oBAAoB;IACpB,sBAAsB;IACtB,8BAA8B;IAC9B,uBAAuB;IACvB,OAAO;IACP,SAAS;IACT,YAAY;IACZ,OAAO;IACP,qBAAqB;CACtB,CAAC;AAEF,eAAe,KAAK,CAAC"}
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
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Tests 42-48: Peer Identity Verification (Milestone 9)
3
+ *
4
+ * 42. Proof bundle (sovereign) -- requires TPM hardware, marked TODO
5
+ * 43. Proof bundle (portable) -- requires YubiKey hardware, marked TODO
6
+ * 44. Proof bundle (declared) -- software key, fully testable offline
7
+ * 45. Trust root caching -- GET /api/v1/trust/roots + local cache
8
+ * 46. Replay resistance -- reused nonce with different verifier context
9
+ * 47. Tamper detection -- modified proof bundle fails validation
10
+ * 48. Certificate issuance during enrollment -- requires live server
11
+ *
12
+ * Run with: node --test dist/test/test_peer_verification.js
13
+ */
14
+ export {};
15
+ //# sourceMappingURL=test_peer_verification.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test_peer_verification.d.ts","sourceRoot":"","sources":["../../src/test/test_peer_verification.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG"}