diff options
| author | Adam Soltys <[email protected]> | 2026-06-25 20:41:20 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-06-25 20:41:20 -0700 |
| commit | aa044138337c947b26eea910db57f2d5b743b5b8 (patch) | |
| tree | 0a0497e3cf6fc8198041d53913cc326ce86112c6 /src/i18n.js | |
| parent | 1edb9ac5723f2d5fda5093437b2e375f98af3777 (diff) | |
| download | coinosv3-aa044138337c947b26eea910db57f2d5b743b5b8.tar.gz coinosv3-aa044138337c947b26eea910db57f2d5b743b5b8.zip | |
Add Silent Payments (BIP-352) sending
Pay sp1… addresses: the wallet derives the one-time taproot output from the
recipient's address + the transaction's own input keys (ECDH), so payments are
unlinkable on-chain with no interaction. New src/silentpay.js implements the
sender derivation + bech32m address decode, validated against the official
BIP-352 test vectors (all P2WPKH-input / single-recipient cases pass; the rest
exercise input types Hal never spends).
buildTx detects sp1… recipients, selects coins against a same-size placeholder
taproot output, then swaps in the script derived from the final input set
(updateOutput). Works for normal sends, multi-recipient, and send-max. The
review screen shows the sp1… address with a 'Silent payment' label (the on-chain
output is a derived one-time taproot address). End-to-end signing verified.
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
Diffstat (limited to 'src/i18n.js')
| -rw-r--r-- | src/i18n.js | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/i18n.js b/src/i18n.js index 0004b83..8ed57f3 100644 --- a/src/i18n.js +++ b/src/i18n.js @@ -259,6 +259,7 @@ const STR = { explorerDesc: 'The server this wallet queries for balances and history. Point it at your own node for maximum privacy.', explorerUrl: 'Server URL', explorerUrlHint: 'Esplora / electrs REST base, e.g. https://mempool.space/api', + silentPaymentNote: 'Silent payment', instantNotif: 'Instant notifications', instantNotifDesc: 'Uses coinos to push payments the instant they arrive. Turn off to poll the explorer above instead — a bit slower, but your addresses are never sent to coinos.', deviceSync: 'Device sync', |
