feat: implement and harden LNURL-auth (LUD-04/LUD-05) flow#3749
feat: implement and harden LNURL-auth (LUD-04/LUD-05) flow#3749juanchi wants to merge 15 commits intoblinkbitcoin:mainfrom
Conversation
Align key derivation and signing behavior with audited LNURL-auth expectations while requiring explicit user confirmation and safer callback validation.
Ensure signature encoding and key derivation paths are mobile-safe, support callback subdomains, and fall back to a persisted LNURL-auth seed when mnemonic credentials are unavailable.
|
Posting latest verification update:\n\n- Android emulator LNURL-auth flow is now verified end-to-end (including satsai.tools success path).\n- Final hardening commit also addresses mobile signature serialization and mnemonic-unavailable fallback seed handling.\n- Test checks run locally and pass: utils spec, payment-destination spec, and tsc --noEmit.\n- iOS runtime verification is still pending due to no local Mac/Xcode environment.\n\nWould appreciate reviewer attention on the crypto/signature and callback-domain validation portions in . |
|
(Clarification) Please focus review on app/utils/lnurl-auth/lnurl-auth.ts for key derivation, signature formatting, and callback-domain validation logic. |
|
Contribution compliance check against CONTRIBUTING.MD:
Reviewer focus remains app/utils/lnurl-auth/lnurl-auth.ts for derivation/signature/callback-domain rules and app/screens/lnurl-auth-screen/lnurl-auth-screen.tsx for confirmation flow. |
Summary
Implements LNURL-auth support in Blink wallet and hardens the full auth path after manual end-to-end validation.
What Changed
Tests
All passing locally.
Manual Verification
Android emulator end-to-end validated:
iOS runtime verification is pending due to no local Mac/Xcode environment.
Related
Fixes #3215