Skip to content

feat(passkey-crypto): add @bitgo/passkey-crypto package#8593

Closed
derranW26 wants to merge 6 commits into
masterfrom
passkey/ticket-1-passkey-crypto-package
Closed

feat(passkey-crypto): add @bitgo/passkey-crypto package#8593
derranW26 wants to merge 6 commits into
masterfrom
passkey/ticket-1-passkey-crypto-package

Conversation

@derranW26
Copy link
Copy Markdown
Contributor

Summary

  • Adds new modules/passkey-crypto/ package (@bitgo/passkey-crypto) as the cryptographic foundation for the passkey feature (Ticket 1 of 9)
  • derivePassword(prfResult: ArrayBuffer): string — converts WebAuthn PRF output to a hex walletPassphrase for SJCL encryption
  • deriveEnterpriseSalt(baseSalt: string, enterpriseId: string): string — HMAC-SHA256 enterprise-scoped salt to prevent cross-enterprise key reuse

Test plan

  • yarn unit-test in modules/passkey-crypto/ — 11 tests passing (known vectors for both functions)
  • No any types
  • Package builds via yarn build in the module

Pure cryptographic primitives for WebAuthn PRF-based key derivation:
- derivePassword: converts ArrayBuffer PRF result to hex walletPassphrase
- deriveEnterpriseSalt: HMAC-SHA256(baseSalt, enterpriseId) for cross-enterprise isolation
@derranW26 derranW26 requested a deployment to breaking-changes-override April 21, 2026 20:33 — with GitHub Actions Waiting
@derranW26 derranW26 closed this Apr 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant