From 7234a3de9e200f36accb754f62163f0bd5360832 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Wed, 24 Jun 2026 13:38:08 -0700 Subject: Replace seed gift links with presigned PSBT claim links MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Gifting no longer shares a seed. "Gift some Bitcoin" (Settings) presigns a chosen amount as a #gift= link: one SIGHASH_SINGLE input (the sender's change output is cryptographically fixed, so a front-runner can only take the gift portion, never the change) plus the rest left open. The coin is reserved per-wallet so normal sends skip it; reclaim it anytime. Opening the link generates a brand-new wallet the sender never sees, shows the amount, and on Claim adds the claimer's address as the output, finalizes, and broadcasts — then prompts backup of the fresh seed. This gives forward secrecy (sender locked out once confirmed), one-shot semantics (claiming spends the input), and keeps funds in the sender's wallet until claimed. Crypto verified end-to-end (sign NONE/SINGLE -> add output -> finalize -> valid tx; deterministic-signature equality proves the presigned sig is valid for any output the claimer picks). Strings retranslated across all 19 locales. Co-Authored-By: Claude Opus 4.8 (1M context) --- src/locales/ko.json | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'src/locales/ko.json') diff --git a/src/locales/ko.json b/src/locales/ko.json index c131955..3d0face 100644 --- a/src/locales/ko.json +++ b/src/locales/ko.json @@ -151,9 +151,19 @@ "giftBackup": "이 지갑 백업하기", "giftSkip": "나중에 하기", "giftBackedUp": "적어 두었습니다", - "giftLink": "이 지갑 선물하기", - "giftLinkDesc": "자금이 들어 있는 이 지갑을 여는 링크를 만들어 빠르게 다른 사람을 시작하게 하세요.", - "giftLinkWarn": "⚠ 이 링크를 여는 사람은 누구나 이 지갑의 모든 자금을 통제합니다. 지갑을 넘겨줄 때만 공유하고, 금액은 적게 유지하세요.", + "giftLink": "Bitcoin 선물하기", + "giftLinkDesc": "금액을 링크로 미리 서명하세요. 링크를 여는 사람은 그 Bitcoin을 자신만 통제하는 완전히 새로운 지갑으로 받게 됩니다.", + "giftLinkWarn": "⚠ 이 링크를 여는 사람은 누구나 금액을 받을 수 있으니, 선물할 상대에게만 공유하세요. 금액은 적게 유지하세요.", + "giftAmountLabel": "선물할 금액", + "giftAmountInvalid": "올바른 금액을 입력하세요.", + "giftAnother": "또 만들기", + "giftReserved": "받지 않은 선물을 위해 따로 둔 코인 {n}개", + "giftReclaim": "되찾기", + "claimBody": "자신만 통제하는 완전히 새로운 지갑으로 받으세요.", + "claimBtn": "받기", + "claimFailed": "이 선물은 이미 수령되었거나 더 이상 이용할 수 없습니다.", + "claimedTitle": "수령 완료!", + "claimedBody": "Bitcoin이 전송되고 있습니다. 안전하게 보관하려면 복구 문구를 백업하세요.", "giftLinkReveal": "선물 링크 만들기", "copyLink": "링크 복사" } \ No newline at end of file -- cgit v1.2.3