passkey-kit 0.17.0 → 0.17.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -70,7 +70,7 @@ import { PasskeyKit } from "passkey-kit";
70
70
  const kit = new PasskeyKit({
71
71
  rpcUrl: "https://soroban-testnet.stellar.org",
72
72
  networkPassphrase: "Test SDF Network ; September 2015",
73
- // Canonical smart-wallet WASM hash; see docs/deployments-*.md
73
+ // Canonical smart-wallet WASM hash; see docs/deployments-2026-09-01.md
74
74
  walletWasmHash: "97ce047884106b1c6c3bb40b8973cc48db1c4dad95c9e20462bf2c701daa764e",
75
75
  });
76
76
  ```
@@ -158,7 +158,7 @@ Browser-side facade for wallet lifecycle and signing. Holds no secrets.
158
158
  | `walletWasmHash` | `string` (hex) | Yes | Smart-wallet WASM hash used to deploy new wallets. |
159
159
  | `acceptedWasmHashes` | `string[]` (hex) | No | Current wallet code hashes accepted during connection. Defaults to `[walletWasmHash]`. |
160
160
  | `acceptedBirthWasmHashes` | `string[]` (hex) | No | Immutable creation code hashes accepted during connection. Defaults to `[walletWasmHash]`. |
161
- | `horizonUrl` | `string` | No | Full-history Horizon URL for creation transactions outside RPC retention. Public networks use official Horizon endpoints by default. |
161
+ | `horizonUrl` | `string` | No | Full-history Horizon URL for creation transactions outside RPC retention. Public and test networks use official Horizon endpoints by default. |
162
162
  | `rpId` | `string` | No | WebAuthn Relying Party id (domain). Defaults to the current origin. |
163
163
  | `allowedOrigins` | `readonly string[]` | No | Origins accepted for signer proofs. Defaults to the browser origin. Required with `rpId` outside a browser. |
164
164
  | `requireUserVerification` | `boolean` | No | Require the WebAuthn User Verified flag during SDK proof checks. Defaults to `false`; User Presence remains required. |
@@ -277,15 +277,22 @@ import { SignerStore, SignerKey } from "passkey-kit";
277
277
 
278
278
  // Add an unlimited Ed25519 co-signer, stored persistently.
279
279
  const tx = await kit.addEd25519("G…", undefined, SignerStore.Persistent);
280
- await kit.sign(tx); // authorize with the connected passkey
280
+ await kit.signAdmin(tx); // wallet-admin write: declares reentry intent
281
281
  await server.send(tx);
282
282
 
283
283
  // Remove it.
284
284
  const rm = await kit.remove(SignerKey.Ed25519("G…"));
285
- await kit.sign(rm);
285
+ await kit.signAdmin(rm);
286
286
  await server.send(rm);
287
287
  ```
288
288
 
289
+ Generic dApp calls (transfers, swaps, mints) keep using `kit.sign(tx)`: it
290
+ refuses any wallet-admin call (`add_signer`, `add_secp256r1`, `update_signer`,
291
+ `remove_signer`, `upgrade`) at the entry root or nested beneath it. The only
292
+ legit exception is a nested self-`remove_signer` (the contract lets a limited
293
+ signer remove itself); pass `allowWalletReentry: true` — or `kit.signAdmin(tx)`
294
+ for full admin transactions — to declare that intent.
295
+
289
296
  ## `PasskeyServer` (server)
290
297
 
291
298
  Server-only facade (`passkey-kit/server`). Holds the relayer secret — never import it from browser code.
@@ -344,19 +351,24 @@ The SDK abstracts discovery behind a `SignerIndexer` interface (`getSigners` / `
344
351
 
345
352
  | Backend | Config | Wire | Status |
346
353
  |---|---|---|---|
347
- | `MercuryIndexer` | `MercuryIndexerConfig` (`url?`, `rpc?`) | Keyless REST (`GET /api/wallet/*`, `/api/lookup/*`) | **Live on testnet + mainnet** both signer generations, full history. Resolve with `MercuryIndexer.forNetwork(...)`. |
354
+ | `MercuryIndexer` | `MercuryIndexerConfig` (`url?`, `rpc?`) | Keyless REST (`GET /api/wallet/*`, `/api/lookup/*`) | Signer enumeration is live on testnet and mainnet. Schema-2 wallet candidates are pending. |
348
355
 
349
356
  > [!NOTE]
350
- > Mercury's hosted passkey-indexer is public and **keyless**, covering **testnet and mainnet** with full history across both signer generations (legacy `("sw_v1", …)` tuples and the v1 typed `#[contractevent]`s). It returns fully-decoded signers, so the client maps JSON straight onto `WalletSigner`. Resolve the base URL per network with `MercuryIndexer.forNetwork({ rpc? }, networkPassphrase)` (returns `null` off testnet/mainnet); passing an `rpc` lets it flag evicted temporary signers and confirm reverse-lookup candidates on-chain.
357
+ > Mercury's hosted passkey-indexer is public and **keyless** on testnet and mainnet.
358
+ > Its current API supports signer enumeration.
359
+ > As of 2026-09-01, its lookup route does not return the required schema-2 birth claims.
360
+ > The SDK therefore fails closed for fresh-device discovery.
361
+ > Verified local wallet records continue to connect.
362
+ > See the [schema-2 response contract](docs/indexer-signer-provenance-response.md).
351
363
 
352
364
  ```ts
353
365
  const indexer = MercuryIndexer.forNetwork({ rpc }, networkPassphrase);
354
- const lookup = await lookupWithRetry(() =>
355
- indexer!.findWallets(SignerKey.Secp256r1(keyId))
356
- );
366
+ const lookup = await indexer!.findWallets(SignerKey.Secp256r1(keyId));
357
367
  ```
358
368
 
359
- `lookupWithRetry(fn, { attempts?, delayMs?, predicate? })` (browser-safe) polls a lookup until it returns a non-empty result — useful right after a write, while the indexer catches up to the ledger.
369
+ `lookupWithRetry(fn, { attempts?, delayMs?, predicate? })` polls array results.
370
+ Use it with `getSigners()` after a write.
371
+ Do not use it with `findWallets()`, which returns `WalletCandidateLookup`.
360
372
 
361
373
  ## Tokens (`SACClient`)
362
374
 
@@ -426,6 +438,8 @@ The legacy 1–9 range still decodes as `SmartWalletLegacy`.
426
438
  | 100 | `SignerNotFound` | The requested signer does not exist. |
427
439
  | 101 | `SignerAlreadyExists` | `add_signer` on an existing key. |
428
440
  | 102 | `SignerExpired` | Expiration timestamp is in the past. |
441
+ | 103 | `LastAdminSigner` | The change would leave no durable admin signer. |
442
+ | 104 | `LastSigner` | The change would leave no durable signer. |
429
443
  | 110 | `MissingContext` | No signer in the map may authorize a requested context. |
430
444
  | 111 | `SignatureKeyValueMismatch` | A signature's variant doesn't match its stored signer. |
431
445
  | 120 | `ClientDataJsonTooLarge` | `clientDataJSON` exceeds the 1024-byte parse buffer. |
@@ -434,6 +448,10 @@ The legacy 1–9 range still decodes as `SmartWalletLegacy`.
434
448
  | 123 | `InvalidWebAuthnType` | `type` is not `"webauthn.get"`. |
435
449
  | 124 | `InvalidAuthenticatorData` | `authenticatorData` shorter than 37 bytes. |
436
450
  | 125 | `UserPresenceRequired` | Authenticator did not set the User Present (UP) flag. |
451
+ | 126 | `AuthenticatorDataTooLarge` | `authenticatorData` exceeds the 1024-byte limit. |
452
+ | 130 | `BindingProofRequired` | A Secp256r1 signer is missing its required proof. |
453
+ | 131 | `BindingProofUnexpected` | A proof was supplied for a non-Secp256r1 signer. |
454
+ | 133 | `BindingPublicKeyImmutable` | An update tried to change a bound public key. |
437
455
 
438
456
  ## Types
439
457
 
@@ -489,6 +507,7 @@ Signer and signature expiration are **UNIX timestamps in seconds** (inclusive: v
489
507
 
490
508
  - **Limit value and authority.** Limit wallet balances, signer permissions, policy allowances, and relayer permissions. Monitor wallet activity. Keep independent recovery, submission, and authorized upgrade paths.
491
509
  - **Hosted services can fail or return stale data.** Do not treat relayer or indexer responses as authoritative chain state. Confirm security-sensitive state through Stellar RPC.
510
+ - **Fresh-device discovery needs schema 2.** The hosted Mercury lookup does not yet return schema-2 birth claims. The SDK fails closed until deployment.
492
511
  - **Keep at least one durable admin signer.** The contract rejects any change that would remove or demote its last durable (`Persistent`, non-expiring) admin signer (`LastAdminSigner = 103`) or leave it without any durable signer (`LastSigner = 104`), so a wallet always retains one signer that cannot evict or expire. Signers outside that guard — `Temporary` storage or with an expiration — lapse on their own: add a replacement *before* removing or demoting an existing signer.
493
512
  - **The default deployer is a shared, public keypair — its secret is publicly derivable.** It salts deployment and signs only the CreateContractV2 authorization entry; the relayer supplies the envelope source, sequence, and fees. It never controls the wallet. Its determinism is load-bearing for discovery: overriding `deploySource` changes every derived address and breaks keyId → wallet lookup. Use a separate funded `restoreSource` for `restoreFootprint`; never fund the shared deployer. A third-party `bumpSequence` to `INT64_MAX` no longer blocks the current SDK because it never uses the shared deployer as an envelope source. Full analysis: [`docs/security-deterministic-deployer.md`](docs/security-deterministic-deployer.md).
494
513
  - **Current code identity is not signer provenance.** The SDK also verifies immutable birth code and address-bound proofs. See the [signer-provenance design](docs/security-signer-provenance-v2.md).
package/SECURITY.md CHANGED
@@ -12,7 +12,7 @@ Do not store or control assets you cannot afford to lose. Limit balances and per
12
12
 
13
13
  Only the latest npm releases and the canonical smart-wallet WASM receive security fixes.
14
14
 
15
- The current deployment manifest in [`docs/`](./docs/) identifies the canonical WASM. Existing wallet instances do not upgrade automatically.
15
+ The current [`deployment manifest`](./docs/deployments-2026-09-01.md) identifies the canonical WASM. Existing wallet instances do not upgrade automatically.
16
16
 
17
17
  ## Report a vulnerability privately
18
18
 
@@ -268,24 +268,42 @@ function candidateHasBirth(candidate) {
268
268
  parseHex64(candidate.creationTransactionHash) !== undefined &&
269
269
  candidate.creationLedger !== undefined);
270
270
  }
271
+ function sameContractIds(candidates, otherRows) {
272
+ const otherCandidates = otherRows
273
+ .map(parseWalletRef)
274
+ .filter((candidate) => candidate !== undefined);
275
+ if (otherCandidates.length !== otherRows.length)
276
+ return false;
277
+ const candidateIds = new Set(candidates.map(({ contractId }) => contractId));
278
+ const otherIds = new Set(otherCandidates.map(({ contractId }) => contractId));
279
+ return (candidateIds.size === otherIds.size &&
280
+ [...candidateIds].every((contractId) => otherIds.has(contractId)));
281
+ }
271
282
  /** Map a lookup JSON body onto {@link WalletCandidateLookup} without inventing birth data. */
272
283
  function parseLookupResponse(res) {
273
284
  if (!isRecord(res)) {
274
285
  return { complete: false, candidates: [] };
275
286
  }
276
- const rows = Array.isArray(res.wallets)
277
- ? res.wallets
278
- : Array.isArray(res.candidates)
279
- ? res.candidates
280
- : [];
287
+ const rows = res.schema === 2 && Array.isArray(res.candidates)
288
+ ? res.candidates
289
+ : Array.isArray(res.wallets)
290
+ ? res.wallets
291
+ : Array.isArray(res.candidates)
292
+ ? res.candidates
293
+ : [];
281
294
  const candidates = rows
282
295
  .map(parseWalletRef)
283
296
  .filter((candidate) => candidate !== undefined);
284
297
  const indexedThroughLedger = parseLedger(res.indexed_through_ledger ?? res.indexedThroughLedger);
285
298
  const claimedComplete = res.complete === true;
299
+ const dualShapeConsistent = res.schema !== 2 ||
300
+ !Array.isArray(res.candidates) ||
301
+ !Array.isArray(res.wallets) ||
302
+ sameContractIds(candidates, res.wallets);
286
303
  const complete = res.schema === 2 &&
287
304
  claimedComplete &&
288
305
  indexedThroughLedger !== undefined &&
306
+ dualShapeConsistent &&
289
307
  candidates.every(candidateHasBirth);
290
308
  if (complete) {
291
309
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"mercury.js","sourceRoot":"","sources":["../../src/indexer/mercury.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mercury.js","sourceRoot":"","sources":["../../src/indexer/mercury.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAe,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,SAAS,EAAqB,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EACL,0BAA0B,EAC1B,4BAA4B,GAC7B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,SAAS,MAAM,iBAAiB,CAAC;AAUxC,OAAO,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAElE;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CACtC,iBAAyB;IAEzB,IAAI,iBAAiB,KAAK,QAAQ,CAAC,MAAM;QACvC,OAAO,4BAA4B,CAAC,OAAO,CAAC;IAC9C,IAAI,iBAAiB,KAAK,QAAQ,CAAC,OAAO;QACxC,OAAO,4BAA4B,CAAC,OAAO,CAAC;IAC9C,OAAO,SAAS,CAAC;AACnB,CAAC;AA0DD,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,MAA4B;QAA5B,WAAM,GAAN,MAAM,CAAsB;QACvD,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YAChB,MAAM,IAAI,YAAY,CACpB,+BAA+B,EAC/B,mBAAmB,CAAC,sBAAsB,CAC3C,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CACf,MAA4D,EAC5D,iBAAyB;QAEzB,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,wBAAwB,CAAC,iBAAiB,CAAC,CAAC;QACtE,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QACtB,OAAO,IAAI,cAAc,CAAC,EAAE,GAAG,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAChD,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,GAAG,CAAI,IAAY;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC;QAC3C,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,UAAU,CACxB,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EACxB,0BAA0B,CAC3B,CAAC;QACF,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,EAAE,EAAE;gBAC1D,MAAM,EAAE,UAAU,CAAC,MAAM;aAC1B,CAAC,CAAC;YACH,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG;gBAAE,OAAO,IAAI,CAAC;YACzC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;gBACnD,MAAM,IAAI,YAAY,CACpB,+BAA+B,IAAI,YAAY,QAAQ,CAAC,MAAM,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EACxF,mBAAmB,CAAC,sBAAsB,EAC1C,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAClC,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAM,CAAC;QACtC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,YAAY;gBAAE,MAAM,GAAG,CAAC;YAC3C,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,CAAC;YAClE,MAAM,IAAI,YAAY,CACpB,OAAO;gBACL,CAAC,CAAC,+BAA+B,IAAI,YAAY;gBACjD,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EACf,mBAAmB,CAAC,sBAAsB,EAC1C,EAAE,IAAI,EAAE,EACR,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CACvC,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAc;QAC7B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CACxB,eAAe,MAAM,EAAE,CACxB,CAAC;QACF,IAAI,CAAC,GAAG;YAAE,OAAO,EAAE,CAAC,CAAC,yCAAyC;QAE9D,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAEpD,6EAA6E;QAC7E,0EAA0E;QAC1E,8EAA8E;QAC9E,6EAA6E;QAC7E,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YACpB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,IAAI,MAAM,CAAC,OAAO,KAAK,WAAW,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC/D,IAAI,CAAC;wBACH,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;4BAClD,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;wBAC5B,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC;wBACP,oEAAoE;wBACpE,iEAAiE;oBACnE,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,WAAW,CAAC,MAAc,EAAE,GAAc;QACtD,OAAO,kBAAkB,CACvB,IAAI,CAAC,MAAM,CAAC,GAAI,EAChB,MAAM,EACN,wBAAwB,CAAC,GAAG,CAAC,EAC7B,UAAU,CAAC,SAAS,CACrB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,GAAc;QAC9B,4EAA4E;QAC5E,6EAA6E;QAC7E,sDAAsD;QACtD,MAAM,IAAI,GACR,GAAG,CAAC,GAAG,KAAK,WAAW;YACrB,CAAC,CAAC,eAAe,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAChE,CAAC,CAAC,uBAAuB,GAAG,CAAC,KAAK,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAU,IAAI,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IAC/D,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,iBAAiB,CAC7B,MAA6B,EAC7B,GAAc;QAEd,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;QAE5B,IAAI,CAAC,MAAM,CAAC,QAAQ;YAAE,OAAO,MAAM,CAAC;QAEpC,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACzC,MAAM,IAAI,YAAY,CACpB,6DAA6D;gBAC3D,6CAA6C,EAC/C,mBAAmB,CAAC,sBAAsB,EAC1C,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,CACvD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,GAAG,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3C,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,SAAS,GAAsB,EAAE,CAAC;QACxC,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YAC1C,MAAM,MAAM,GAAG,MAAM,SAAS,CAC5B,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAC3B,SAAS,CAAC,UAAU,EACpB,GAAG,CACJ,CAAC;YACF,IAAI,MAAM;gBAAE,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAwC,GAAG,CAAC,CAAC;YACvE,IAAI,GAAG,EAAE,MAAM,KAAK,IAAI;gBAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;YAClE,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE,SAAS;gBAClB,MAAM,EAAE,8BAA8B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;aAC5D,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE,SAAS;gBAClB,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACzD,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AAED,iFAAiF;AACjF,SAAS,WAAW,CAAC,CAAwB;IAC3C,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,WAAW;YACd,0EAA0E;YAC1E,4EAA4E;YAC5E,OAAO,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QACrE,KAAK,SAAS;YACZ,OAAO,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,wBAAwB;QAC7D,KAAK,QAAQ;YACX,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,wBAAwB;IAC9D,CAAC;AACH,CAAC;AAED,yEAAyE;AACzE,SAAS,cAAc,CACrB,MAA0C;IAE1C,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC,CAAC,8BAA8B;IAC1E,8EAA8E;IAC9E,kDAAkD;IAClD,MAAM,GAAG,GAAiB,IAAI,GAAG,EAAE,CAAC;IACpC,KAAK,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACtD,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,MAAM,GAAG,gBAAgB,CAAC;AAEhC,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,UAAU,CACjB,MAA+B,EAC/B,IAAuB;IAEvB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;IAC5E,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,UAAU,CAAC,KAAyB;IAC3C,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACnD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5C,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QACvE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7B,OAAO,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1C,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACvC,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC;IACpE,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAEjE,MAAM,SAAS,GAA8B,EAAE,UAAU,EAAE,CAAC;IAC5D,MAAM,aAAa,GAAG,UAAU,CAC9B,UAAU,CAAC,KAAK,EAAE,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC,CACxD,CAAC;IACF,MAAM,uBAAuB,GAAG,UAAU,CACxC,UAAU,CAAC,KAAK,EAAE;QAChB,2BAA2B;QAC3B,yBAAyB;QACzB,aAAa;KACd,CAAC,CACH,CAAC;IACF,MAAM,cAAc,GAAG,WAAW,CAChC,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,cAAc,CAC9C,CAAC;IACF,IAAI,aAAa;QAAE,SAAS,CAAC,aAAa,GAAG,aAAa,CAAC;IAC3D,IAAI,uBAAuB,EAAE,CAAC;QAC5B,SAAS,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;IAC9D,CAAC;IACD,IAAI,cAAc,KAAK,SAAS;QAAE,SAAS,CAAC,cAAc,GAAG,cAAc,CAAC;IAC5E,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,iBAAiB,CACxB,SAAoC;IAEpC,OAAO,CACL,UAAU,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,SAAS;QACjD,UAAU,CAAC,SAAS,CAAC,uBAAuB,CAAC,KAAK,SAAS;QAC3D,SAAS,CAAC,cAAc,KAAK,SAAS,CACvC,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CACtB,UAAgD,EAChD,SAA6B;IAE7B,MAAM,eAAe,GAAG,SAAS;SAC9B,GAAG,CAAC,cAAc,CAAC;SACnB,MAAM,CACL,CAAC,SAAS,EAA0C,EAAE,CACpD,SAAS,KAAK,SAAS,CAC1B,CAAC;IACJ,IAAI,eAAe,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAE9D,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAC7E,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAC9E,OAAO,CACL,YAAY,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI;QACnC,CAAC,GAAG,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAClE,CAAC;AACJ,CAAC;AAED,8FAA8F;AAC9F,SAAS,mBAAmB,CAAC,GAAY;IACvC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACnB,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;IAC7C,CAAC;IAED,MAAM,IAAI,GACR,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;QAC/C,CAAC,CAAC,GAAG,CAAC,UAAU;QAChB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;YAC1B,CAAC,CAAC,GAAG,CAAC,OAAO;YACb,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;gBAC7B,CAAC,CAAC,GAAG,CAAC,UAAU;gBAChB,CAAC,CAAC,EAAE,CAAC;IACb,MAAM,UAAU,GAAgC,IAAI;SACjD,GAAG,CAAC,cAAc,CAAC;SACnB,MAAM,CACL,CAAC,SAAS,EAA0C,EAAE,CACpD,SAAS,KAAK,SAAS,CAC1B,CAAC;IAEJ,MAAM,oBAAoB,GAAG,WAAW,CACtC,GAAG,CAAC,sBAAsB,IAAI,GAAG,CAAC,oBAAoB,CACvD,CAAC;IACF,MAAM,eAAe,GAAG,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC;IAC9C,MAAM,mBAAmB,GACvB,GAAG,CAAC,MAAM,KAAK,CAAC;QAChB,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;QAC9B,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;QAC3B,eAAe,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IAC3C,MAAM,QAAQ,GACZ,GAAG,CAAC,MAAM,KAAK,CAAC;QAChB,eAAe;QACf,oBAAoB,KAAK,SAAS;QAClC,mBAAmB;QACnB,UAAU,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAEtC,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO;YACL,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,CAAC;YACT,oBAAoB;YACpB,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,iBAAiB,CAAC;SACjD,CAAC;IACJ,CAAC;IACD,OAAO;QACL,QAAQ,EAAE,KAAK;QACf,GAAG,CAAC,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,UAAU;KACX,CAAC;AACJ,CAAC;AAED,kFAAkF;AAClF,SAAS,kBAAkB,CAAC,IAA8B;IACxD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS;QAC9B,CAAC,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACpD,CAAC,CAAC,SAAS,CAAC;IAEd,2EAA2E;IAC3E,4EAA4E;IAC5E,8EAA8E;IAC9E,2EAA2E;IAC3E,MAAM,UAAU,GACd,IAAI,CAAC,UAAU,IAAI,IAAI,IAAI,IAAI,CAAC,eAAe,KAAK,QAAQ;QAC1D,CAAC,CAAC,IAAI,CAAC,UAAU;QACjB,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO;QACL,GAAG,EAAE,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC;QAC1B,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC;QACnC,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,MAAM,EAAE,IAAI,CAAC,MAAM;KACpB,CAAC;AACJ,CAAC"}
@@ -36,12 +36,44 @@ export interface SignAuthEntryDeps {
36
36
  spec: ContractSpec;
37
37
  signerContext: SignerContext;
38
38
  calculateExpiration: () => Promise<number>;
39
+ /** Connected wallet contract id. Required to refuse nested wallet-admin calls. */
40
+ contractId?: string;
39
41
  }
40
42
  /** Per-call signing options. */
41
43
  export interface SignOptions {
42
44
  /** Signature expiration ledger (defaults to the configured window). */
43
45
  expiration?: number;
46
+ /**
47
+ * Allow this entry to authorize nested calls back into the connected wallet
48
+ * (e.g. `add_signer`, `update_signer`, `remove_signer`, `upgrade`,
49
+ * `add_secp256r1`). Default `false`. Wallet-admin writes must use the
50
+ * dedicated builders (`addEd25519`, `addSecp256r1`, `addPolicy`, `remove`,
51
+ * `upgrade`), never a generic dApp `sign()` call.
52
+ */
53
+ allowWalletReentry?: boolean;
44
54
  }
55
+ /**
56
+ * Refuse any wallet-admin use covered by this signature — the entry root
57
+ * itself or any nested sub-invocation. A signature covers the whole
58
+ * authorization tree, so both shapes are the same grant:
59
+ *
60
+ * - Shape A (graft): dApp root (e.g. `evil.claim`) with a nested
61
+ * `wallet.add_signer(attacker)` sub-invocation.
62
+ * - Shape B (hostile root): the transaction's top-level call IS
63
+ * `wallet.add_signer(attacker)` (or `add_secp256r1` / `update_signer` /
64
+ * `remove_signer` / `upgrade`), built by a hostile dApp and handed to
65
+ * generic `sign()`. The auth-entry root is the admin call itself, so a
66
+ * sub-invocation-only check signs it clean.
67
+ *
68
+ * Legit wallet-admin writes build the admin call as the transaction's own
69
+ * host function through the dedicated builders (`addEd25519`,
70
+ * `addSecp256r1`, `addPolicy`, `remove`, `upgrade`). They pass
71
+ * `allowWalletReentry: true` at sign time to declare that intent. A generic
72
+ * dApp `sign()` call must never carry wallet-admin authority, root or nested.
73
+ *
74
+ * @throws {SigningError} If wallet-admin authority is found and not allowed.
75
+ */
76
+ export declare function assertNoWalletAdminReentry(entry: xdr.SorobanAuthorizationEntry, contractId: string | undefined, allowWalletReentry: boolean): void;
45
77
  /**
46
78
  * Sign a single Soroban authorization entry with a {@link Signer}, merging the
47
79
  * resulting `(SignerKey, Signature)` pair into the entry's flat `Signatures`
@@ -54,11 +86,35 @@ export declare function signAuthEntry(deps: SignAuthEntryDeps, entry: xdr.Soroba
54
86
  export interface SignTxDeps extends SignAuthEntryDeps {
55
87
  getContractId: () => string | undefined;
56
88
  }
89
+ /**
90
+ * Pin each wallet-admin entry root to the transaction's own top-level host
91
+ * function. The dedicated builders produce exactly this shape: the transaction
92
+ * invokes `wallet.<admin-fn>` and the single auth entry roots at that same
93
+ * call. A hostile dApp handing over a pre-built admin transaction cannot forge
94
+ * the caller's envelope, so a mismatch is refused even when the caller opted
95
+ * into `allowWalletReentry` (making `signAdmin` self-validating instead of a
96
+ * full bypass on misuse).
97
+ *
98
+ * Non-admin roots (dApp calls such as token transfers) pass through: the
99
+ * per-entry tree check already refused nested wallet-admin authority.
100
+ *
101
+ * @throws {SigningError} If a wallet-admin root does not match the top-level call.
102
+ */
103
+ export declare function assertAdminRootMatchesHostFunction(entry: xdr.SorobanAuthorizationEntry, contractId: string, hostFunc: xdr.HostFunction): void;
57
104
  /**
58
105
  * Sign every auth entry of an {@link AssembledTransaction} that is authorized by
59
106
  * the connected wallet, using `signer`. Returns the same transaction with its
60
107
  * auth entries signed.
61
108
  *
109
+ * Generic dApp `sign()` calls must never carry wallet-admin authority. Standalone
110
+ * `signAuthEntry()` has no transaction context, so a wallet-admin entry root is
111
+ * necessarily hostile there (dedicated builders are the only legit producers of
112
+ * admin roots, and they sign through this path with `allowWalletReentry: true`).
113
+ * This function additionally pins each wallet-admin entry root to the
114
+ * transaction's own top-level host function: the dedicated builders produce
115
+ * exactly that shape, while a hostile dApp handing over a pre-built admin
116
+ * transaction cannot forge the transaction envelope the caller already holds.
117
+ *
62
118
  * @throws {SigningError} If no wallet is connected.
63
119
  */
64
120
  export declare function sign<T>(deps: SignTxDeps, txn: AssembledTransaction<T>, signer: Signer, options?: SignOptions): Promise<AssembledTransaction<T>>;
@@ -1 +1 @@
1
- {"version":3,"file":"tx-ops.d.ts","sourceRoot":"","sources":["../../src/kit/tx-ops.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAiC,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EACV,oBAAoB,EACpB,IAAI,IAAI,YAAY,EACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAa3D,gEAAgE;AAChE,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAG/E;AAED,4CAA4C;AAC5C,MAAM,WAAW,iBAAiB;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,IAAI,EAAE,YAAY,CAAC;IACnB,aAAa,EAAE,aAAa,CAAC;IAC7B,mBAAmB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;CAC5C;AAED,gCAAgC;AAChC,MAAM,WAAW,WAAW;IAC1B,uEAAuE;IACvE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,iBAAiB,EACvB,KAAK,EAAE,GAAG,CAAC,yBAAyB,EACpC,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CA6CxC;AAED,gEAAgE;AAChE,MAAM,WAAW,UAAW,SAAQ,iBAAiB;IACnD,aAAa,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;CACzC;AAED;;;;;;GAMG;AACH,wBAAsB,IAAI,CAAC,CAAC,EAC1B,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,oBAAoB,CAAC,CAAC,CAAC,EAC5B,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAkBlC;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE;QAAE,KAAK,IAAI,GAAG,CAAC,sBAAsB,CAAA;KAAE,CAAC;CAC1D;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE;IACJ,GAAG,EAAE,MAAM,CAAC;IACZ,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,EACD,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,MAAM,CAAC,CAiDjB"}
1
+ {"version":3,"file":"tx-ops.d.ts","sourceRoot":"","sources":["../../src/kit/tx-ops.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAA0C,GAAG,EAAE,MAAM,sBAAsB,CAAC;AACnF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EACV,oBAAoB,EACpB,IAAI,IAAI,YAAY,EACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAa3D,gEAAgE;AAChE,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAG/E;AAED,4CAA4C;AAC5C,MAAM,WAAW,iBAAiB;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,IAAI,EAAE,YAAY,CAAC;IACnB,aAAa,EAAE,aAAa,CAAC;IAC7B,mBAAmB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3C,kFAAkF;IAClF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,gCAAgC;AAChC,MAAM,WAAW,WAAW;IAC1B,uEAAuE;IACvE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAyBD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,GAAG,CAAC,yBAAyB,EACpC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,kBAAkB,EAAE,OAAO,GAC1B,IAAI,CAuDN;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,iBAAiB,EACvB,KAAK,EAAE,GAAG,CAAC,yBAAyB,EACpC,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAoDxC;AAED,gEAAgE;AAChE,MAAM,WAAW,UAAW,SAAQ,iBAAiB;IACnD,aAAa,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;CACzC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,GAAG,CAAC,yBAAyB,EACpC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,GAAG,CAAC,YAAY,GACzB,IAAI,CA+BN;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,IAAI,CAAC,CAAC,EAC1B,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,oBAAoB,CAAC,CAAC,CAAC,EAC5B,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAkClC;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE;QAAE,KAAK,IAAI,GAAG,CAAC,sBAAsB,CAAA;KAAE,CAAC;CAC1D;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE;IACJ,GAAG,EAAE,MAAM,CAAC;IACZ,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,EACD,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,MAAM,CAAC,CAiDjB"}
@@ -15,7 +15,7 @@
15
15
  *
16
16
  * @packageDocumentation
17
17
  */
18
- import { Operation, TransactionBuilder, xdr } from "@stellar/stellar-sdk";
18
+ import { Address, Operation, TransactionBuilder, xdr } from "@stellar/stellar-sdk";
19
19
  import { buildSignaturePayload, getAddressCredentials, signatureToScVal, signerKeyToScVal, toAddressBoundCredentials, upsertSignatureEntry, usesAddressBoundPayload, } from "./auth-payload.js";
20
20
  import { SigningError, PasskeyKitError, PasskeyKitErrorCode } from "../errors.js";
21
21
  import { isDefaultDeployer } from "../utils.js";
@@ -27,6 +27,93 @@ export async function calculateExpiration(deps) {
27
27
  const { sequence } = await deps.rpc.getLatestLedger();
28
28
  return Math.ceil(sequence + deps.timeoutInSeconds / 5);
29
29
  }
30
+ /**
31
+ * Function names that administer the wallet itself. A nested call into the
32
+ * connected wallet carrying one of these names changes who can authorize on
33
+ * behalf of the wallet, so it must never ride inside a generic dApp signature.
34
+ */
35
+ const WALLET_ADMIN_FUNCTIONS = new Set([
36
+ "add_signer",
37
+ "add_secp256r1",
38
+ "update_signer",
39
+ "remove_signer",
40
+ "upgrade",
41
+ ]);
42
+ /** Describe one authorized invocation as `CONTRACT.fn` for error context. */
43
+ function describeWalletInvocation(inv) {
44
+ const fn = inv.function();
45
+ if (fn.switch().name !== "sorobanAuthorizedFunctionTypeContractFn") {
46
+ return fn.switch().name;
47
+ }
48
+ const args = fn.contractFn();
49
+ return `${Address.fromScAddress(args.contractAddress()).toString()}.${args.functionName().toString()}`;
50
+ }
51
+ /**
52
+ * Refuse any wallet-admin use covered by this signature — the entry root
53
+ * itself or any nested sub-invocation. A signature covers the whole
54
+ * authorization tree, so both shapes are the same grant:
55
+ *
56
+ * - Shape A (graft): dApp root (e.g. `evil.claim`) with a nested
57
+ * `wallet.add_signer(attacker)` sub-invocation.
58
+ * - Shape B (hostile root): the transaction's top-level call IS
59
+ * `wallet.add_signer(attacker)` (or `add_secp256r1` / `update_signer` /
60
+ * `remove_signer` / `upgrade`), built by a hostile dApp and handed to
61
+ * generic `sign()`. The auth-entry root is the admin call itself, so a
62
+ * sub-invocation-only check signs it clean.
63
+ *
64
+ * Legit wallet-admin writes build the admin call as the transaction's own
65
+ * host function through the dedicated builders (`addEd25519`,
66
+ * `addSecp256r1`, `addPolicy`, `remove`, `upgrade`). They pass
67
+ * `allowWalletReentry: true` at sign time to declare that intent. A generic
68
+ * dApp `sign()` call must never carry wallet-admin authority, root or nested.
69
+ *
70
+ * @throws {SigningError} If wallet-admin authority is found and not allowed.
71
+ */
72
+ export function assertNoWalletAdminReentry(entry, contractId, allowWalletReentry) {
73
+ if (allowWalletReentry) {
74
+ return;
75
+ }
76
+ // The credential address is authoritative for which wallet this signature
77
+ // speaks for; `contractId` is the connected wallet. Check the entry against
78
+ // both so a multi-wallet signer cannot be confused into signing wallet B's
79
+ // admin call while connected to wallet A (or vice versa).
80
+ const walletIds = new Set();
81
+ try {
82
+ const credAddr = Address.fromScAddress(getAddressCredentials(entry.credentials()).address()).toString();
83
+ walletIds.add(credAddr);
84
+ }
85
+ catch {
86
+ // Non-address credentials are rejected by the caller before this runs.
87
+ }
88
+ if (contractId) {
89
+ walletIds.add(contractId);
90
+ }
91
+ const walk = (inv) => {
92
+ const fn = inv.function();
93
+ const switchName = fn.switch().name;
94
+ // Wallet credentials must never authorize deploys on the generic path:
95
+ // deploys use the dedicated `signDeploy` flow, and an unlimited signer
96
+ // authorizes `CreateContract*` contexts on-chain.
97
+ if (switchName === "sorobanAuthorizedFunctionTypeCreateContractV2HostFn" ||
98
+ switchName === "sorobanAuthorizedFunctionTypeCreateContractHostFn") {
99
+ throw new SigningError(`Refusing to sign contract-deploy authority on the generic sign() path. Deploys must use the dedicated deploy flow.`, PasskeyKitErrorCode.SIGNING_FAILED, { contractId });
100
+ }
101
+ if (switchName === "sorobanAuthorizedFunctionTypeContractFn") {
102
+ const args = fn.contractFn();
103
+ const target = Address.fromScAddress(args.contractAddress()).toString();
104
+ const name = args.functionName().toString();
105
+ if (walletIds.has(target) && WALLET_ADMIN_FUNCTIONS.has(name)) {
106
+ throw new SigningError(`Refusing to sign wallet-admin call on the generic sign() path: ${describeWalletInvocation(inv)}. Wallet-admin writes must use the dedicated builders with allowWalletReentry: true, never a generic dApp sign() call.`, PasskeyKitErrorCode.SIGNING_FAILED, { contractId: target, function: name });
107
+ }
108
+ }
109
+ for (const sub of inv.subInvocations()) {
110
+ walk(sub);
111
+ }
112
+ };
113
+ // Walk the ROOT as well as every sub-invocation: Shape B roots the entry
114
+ // at the admin call itself.
115
+ walk(entry.rootInvocation());
116
+ }
30
117
  /**
31
118
  * Sign a single Soroban authorization entry with a {@link Signer}, merging the
32
119
  * resulting `(SignerKey, Signature)` pair into the entry's flat `Signatures`
@@ -48,6 +135,12 @@ export async function signAuthEntry(deps, entry, signer, options) {
48
135
  throw new SigningError(`Refusing to sign a non-address-bound auth entry: ${entry.credentials().switch().name}`, PasskeyKitErrorCode.UNSUPPORTED_CREDENTIALS);
49
136
  }
50
137
  const credentials = getAddressCredentials(entry.credentials());
138
+ // A signature covers the whole authorization tree, not just the root. Refuse
139
+ // wallet-admin authority on the generic signing path before anything is
140
+ // hashed: a hostile contract grafts `add_signer(attacker)` beneath an honest
141
+ // root (Shape A) or roots the entry at the admin call itself (Shape B), and
142
+ // one tap would otherwise install a permanent attacker signer.
143
+ assertNoWalletAdminReentry(entry, deps.contractId, options?.allowWalletReentry ?? false);
51
144
  // `== null`, not `!expiration`: an explicit `expiration: 0` is a caller-chosen
52
145
  // value, not "unset" — only undefined/null falls through to the entry's
53
146
  // existing ledger or a freshly computed default.
@@ -66,11 +159,56 @@ export async function signAuthEntry(deps, entry, signer, options) {
66
159
  upsertSignatureEntry(credentials, scKey, scVal);
67
160
  return entry;
68
161
  }
162
+ /**
163
+ * Pin each wallet-admin entry root to the transaction's own top-level host
164
+ * function. The dedicated builders produce exactly this shape: the transaction
165
+ * invokes `wallet.<admin-fn>` and the single auth entry roots at that same
166
+ * call. A hostile dApp handing over a pre-built admin transaction cannot forge
167
+ * the caller's envelope, so a mismatch is refused even when the caller opted
168
+ * into `allowWalletReentry` (making `signAdmin` self-validating instead of a
169
+ * full bypass on misuse).
170
+ *
171
+ * Non-admin roots (dApp calls such as token transfers) pass through: the
172
+ * per-entry tree check already refused nested wallet-admin authority.
173
+ *
174
+ * @throws {SigningError} If a wallet-admin root does not match the top-level call.
175
+ */
176
+ export function assertAdminRootMatchesHostFunction(entry, contractId, hostFunc) {
177
+ const rootFn = entry.rootInvocation().function();
178
+ if (rootFn.switch().name !== "sorobanAuthorizedFunctionTypeContractFn") {
179
+ return;
180
+ }
181
+ const args = rootFn.contractFn();
182
+ const target = Address.fromScAddress(args.contractAddress()).toString();
183
+ const name = args.functionName().toString();
184
+ const isWalletAdmin = target === contractId && WALLET_ADMIN_FUNCTIONS.has(name);
185
+ if (!isWalletAdmin) {
186
+ return;
187
+ }
188
+ if (hostFunc.switch().name !== "hostFunctionTypeInvokeContract") {
189
+ throw new SigningError(`Refusing wallet-admin entry whose transaction is not an invokeContract call: ${describeWalletInvocation(entry.rootInvocation())}.`, PasskeyKitErrorCode.SIGNING_FAILED, { contractId, function: name });
190
+ }
191
+ const invoke = hostFunc.invokeContract();
192
+ if (Address.fromScAddress(invoke.contractAddress()).toString() !== target ||
193
+ invoke.functionName().toString() !== name ||
194
+ !Buffer.from(args.toXDR()).equals(Buffer.from(invoke.toXDR()))) {
195
+ throw new SigningError(`Refusing wallet-admin entry that does not match the transaction's top-level call: ${describeWalletInvocation(entry.rootInvocation())}. Sign wallet-admin transactions only through the dedicated builders.`, PasskeyKitErrorCode.SIGNING_FAILED, { contractId, function: name });
196
+ }
197
+ }
69
198
  /**
70
199
  * Sign every auth entry of an {@link AssembledTransaction} that is authorized by
71
200
  * the connected wallet, using `signer`. Returns the same transaction with its
72
201
  * auth entries signed.
73
202
  *
203
+ * Generic dApp `sign()` calls must never carry wallet-admin authority. Standalone
204
+ * `signAuthEntry()` has no transaction context, so a wallet-admin entry root is
205
+ * necessarily hostile there (dedicated builders are the only legit producers of
206
+ * admin roots, and they sign through this path with `allowWalletReentry: true`).
207
+ * This function additionally pins each wallet-admin entry root to the
208
+ * transaction's own top-level host function: the dedicated builders produce
209
+ * exactly that shape, while a hostile dApp handing over a pre-built admin
210
+ * transaction cannot forge the transaction envelope the caller already holds.
211
+ *
74
212
  * @throws {SigningError} If no wallet is connected.
75
213
  */
76
214
  export async function sign(deps, txn, signer, options) {
@@ -78,10 +216,24 @@ export async function sign(deps, txn, signer, options) {
78
216
  if (!contractId) {
79
217
  throw new SigningError("A wallet must be connected to sign a transaction", PasskeyKitErrorCode.SIGNING_FAILED);
80
218
  }
219
+ const allowWalletReentry = options?.allowWalletReentry ?? false;
220
+ // The wallet-admin pin needs the transaction's own top-level host function.
221
+ // `signAuthEntries` only hands each entry to the callback, so read the
222
+ // envelope here where the full transaction is in hand; entries are matched
223
+ // back to it per-entry below. A missing envelope is left for the SDK's own
224
+ // "not simulated" error inside `signAuthEntries`.
225
+ const built = txn.built;
226
+ const topOp = built?.operations[0];
227
+ const topFunc = topOp?.type === "invokeHostFunction"
228
+ ? topOp.func
229
+ : undefined;
81
230
  await txn.signAuthEntries({
82
231
  address: contractId,
83
232
  authorizeEntry: async (entry) => {
84
233
  const clone = xdr.SorobanAuthorizationEntry.fromXDR(entry.toXDR());
234
+ if (allowWalletReentry && topFunc) {
235
+ assertAdminRootMatchesHostFunction(clone, contractId, topFunc);
236
+ }
85
237
  return signAuthEntry(deps, clone, signer, options);
86
238
  },
87
239
  });
@@ -1 +1 @@
1
- {"version":3,"file":"tx-ops.js","sourceRoot":"","sources":["../../src/kit/tx-ops.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tx-ops.js","sourceRoot":"","sources":["../../src/kit/tx-ops.ts"],"names":[],"mappings":"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"}
package/dist/kit.d.ts CHANGED
@@ -158,6 +158,13 @@ export declare class PasskeyKit {
158
158
  signAuthEntry(entry: xdr.SorobanAuthorizationEntry, signer?: Signer, options?: SignOptions): Promise<xdr.SorobanAuthorizationEntry>;
159
159
  /** Sign an assembled transaction's wallet auth entries. */
160
160
  sign<T>(txn: AssembledTransaction<T>, signer?: Signer, options?: SignOptions): Promise<AssembledTransaction<T>>;
161
+ /**
162
+ * Sign a wallet-admin transaction produced by the dedicated builders
163
+ * (`addSecp256r1`, `addEd25519`, `addPolicy`, `update*`, `remove`,
164
+ * `upgrade`). Declares the wallet-reentry intent the generic `sign()` path
165
+ * refuses by default.
166
+ */
167
+ signAdmin<T>(txn: AssembledTransaction<T>, signer?: Signer, options?: Omit<SignOptions, "allowWalletReentry">): Promise<AssembledTransaction<T>>;
161
168
  addSecp256r1(keyId: string | Uint8Array, publicKey: string | Uint8Array, limits: SignerLimits, store: SignerStore, expiration?: number): Promise<WalletTx>;
162
169
  /**
163
170
  * Update a passkey signer's limits/storage/expiration. The public key is
package/dist/kit.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"kit.d.ts","sourceRoot":"","sources":["../src/kit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kit.d.ts","sourceRoot":"","sources":["../src/kit.ts"],"names":[],"mappings":"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"}
package/dist/kit.js CHANGED
@@ -499,6 +499,15 @@ export class PasskeyKit {
499
499
  sign(txn, signer, options) {
500
500
  return this.signerManager.sign(txn, signer, options);
501
501
  }
502
+ /**
503
+ * Sign a wallet-admin transaction produced by the dedicated builders
504
+ * (`addSecp256r1`, `addEd25519`, `addPolicy`, `update*`, `remove`,
505
+ * `upgrade`). Declares the wallet-reentry intent the generic `sign()` path
506
+ * refuses by default.
507
+ */
508
+ signAdmin(txn, signer, options) {
509
+ return this.signerManager.signAdmin(txn, signer, options);
510
+ }
502
511
  // -- Signer management -------------------------------------------------------
503
512
  async addSecp256r1(keyId, publicKey, limits, store, expiration) {
504
513
  const contractId = this.contractId;
package/dist/kit.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"kit.js","sourceRoot":"","sources":["../src/kit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kit.js","sourceRoot":"","sources":["../src/kit.ts"],"names":[],"mappings":"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"}
@@ -34,8 +34,23 @@ export declare class SignerManager {
34
34
  private signAuthEntryDeps;
35
35
  /** Sign a single auth entry with `signer` (defaults to the connected passkey). */
36
36
  signAuthEntry(entry: xdr.SorobanAuthorizationEntry, signer?: Signer, options?: SignOptions): Promise<xdr.SorobanAuthorizationEntry>;
37
- /** Sign an assembled transaction's wallet auth entries. */
37
+ /**
38
+ * Sign an assembled transaction's wallet auth entries.
39
+ *
40
+ * Wallet-admin entries (the transaction's own `add_signer` /
41
+ * `add_secp256r1` / `update_signer` / `remove_signer` / `upgrade` produced
42
+ * by the dedicated builders below) must explicitly opt in with
43
+ * `options.allowWalletReentry: true`. Generic dApp `sign()` calls leave the
44
+ * default `false`, so a hostile transaction rooting an entry at a
45
+ * wallet-admin call is refused.
46
+ */
38
47
  sign<T>(txn: AssembledTransaction<T>, signer?: Signer, options?: SignOptions): Promise<AssembledTransaction<T>>;
48
+ /**
49
+ * Sign a wallet-admin transaction built by one of the dedicated builders
50
+ * below. Declares the wallet-reentry intent the generic `sign()` path
51
+ * refuses by default.
52
+ */
53
+ signAdmin<T>(txn: AssembledTransaction<T>, signer?: Signer, options?: Omit<SignOptions, "allowWalletReentry">): Promise<AssembledTransaction<T>>;
39
54
  addSecp256r1(keyId: string | Uint8Array, publicKey: string | Uint8Array, limits: SignerLimits, store: SignerStore, proof: Secp256r1Signature, expiration?: number): Promise<WalletTx>;
40
55
  /**
41
56
  * Update a passkey signer's limits/storage/expiration.
@@ -1 +1 @@
1
- {"version":3,"file":"signer-manager.d.ts","sourceRoot":"","sources":["../../src/managers/signer-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signer-manager.d.ts","sourceRoot":"","sources":["../../src/managers/signer-manager.ts"],"names":[],"mappings":"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"}
@@ -44,16 +44,34 @@ export class SignerManager {
44
44
  spec: this.requireWallet().spec,
45
45
  signerContext: this.deps.getSignerContext(),
46
46
  calculateExpiration: this.deps.calculateExpiration,
47
+ contractId: this.deps.getContractId(),
47
48
  };
48
49
  }
49
50
  /** Sign a single auth entry with `signer` (defaults to the connected passkey). */
50
51
  signAuthEntry(entry, signer = new PasskeySigner(), options) {
51
52
  return signAuthEntryOp(this.signAuthEntryDeps(), entry, signer, options);
52
53
  }
53
- /** Sign an assembled transaction's wallet auth entries. */
54
+ /**
55
+ * Sign an assembled transaction's wallet auth entries.
56
+ *
57
+ * Wallet-admin entries (the transaction's own `add_signer` /
58
+ * `add_secp256r1` / `update_signer` / `remove_signer` / `upgrade` produced
59
+ * by the dedicated builders below) must explicitly opt in with
60
+ * `options.allowWalletReentry: true`. Generic dApp `sign()` calls leave the
61
+ * default `false`, so a hostile transaction rooting an entry at a
62
+ * wallet-admin call is refused.
63
+ */
54
64
  sign(txn, signer = new PasskeySigner(), options) {
55
65
  return signOp({ ...this.signAuthEntryDeps(), getContractId: this.deps.getContractId }, txn, signer, options);
56
66
  }
67
+ /**
68
+ * Sign a wallet-admin transaction built by one of the dedicated builders
69
+ * below. Declares the wallet-reentry intent the generic `sign()` path
70
+ * refuses by default.
71
+ */
72
+ signAdmin(txn, signer = new PasskeySigner(), options) {
73
+ return this.sign(txn, signer, { ...options, allowWalletReentry: true });
74
+ }
57
75
  // -- Signer writes -----------------------------------------------------------
58
76
  addSecp256r1(keyId, publicKey, limits, store, proof, expiration) {
59
77
  return buildAddSecp256r1SignerTx(this.writeDeps(), keyId, publicKey, limits, store, proof, expiration);
@@ -1 +1 @@
1
- {"version":3,"file":"signer-manager.js","sourceRoot":"","sources":["../../src/managers/signer-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signer-manager.js","sourceRoot":"","sources":["../../src/managers/signer-manager.ts"],"names":[],"mappings":"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"}
package/dist/version.d.ts CHANGED
@@ -2,6 +2,6 @@
2
2
  * Package version — auto-generated from package.json.
3
3
  * @packageDocumentation
4
4
  */
5
- export declare const VERSION = "0.17.0";
5
+ export declare const VERSION = "0.17.2";
6
6
  export declare const NAME = "passkey-kit";
7
7
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -4,6 +4,6 @@
4
4
  */
5
5
  // This file is auto-generated. Do not edit manually.
6
6
  // Run `pnpm run sync-version` (or `pnpm build`) to update.
7
- export const VERSION = "0.17.0";
7
+ export const VERSION = "0.17.2";
8
8
  export const NAME = "passkey-kit";
9
9
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "passkey-kit",
3
- "version": "0.17.0",
3
+ "version": "0.17.2",
4
4
  "description": "A helper library for creating and using smart wallet accounts on the Stellar blockchain.",
5
5
  "author": "Tyler van der Hoeven <tyler@stellar.org>",
6
6
  "license": "MIT",
@@ -35,8 +35,8 @@
35
35
  "@stellar/stellar-sdk": ">=16.0.0",
36
36
  "base64url": "^3.0.1",
37
37
  "buffer": "^6.0.3",
38
- "sac-sdk": "0.4.4",
39
- "passkey-kit-sdk": "0.9.0"
38
+ "passkey-kit-sdk": "0.9.0",
39
+ "sac-sdk": "0.4.4"
40
40
  },
41
41
  "devDependencies": {
42
42
  "@types/node": "^24.6.0",