34 / 736WATCH

Watch-only Wallet

Peněženka pouze pro sledování

Watch-only Wallet vám ukáže příchozí platby a zůstatek a může připravit nepodepsanou transakci. Nemá však soukromé klíče potřebné k utrácení. Aby zobrazovala správný výsledek, musí znát úplná pravidla vaší peněženky a čerpat spolehlivá data o blockchainu.

Watch-only Wallet je peněženka pouze pro sledování: umí ukázat platby a zůstatek, ale nemá soukromé klíče k jejich utracení. Může také připravit návrh platby, který musí podepsat jiné zařízení či program. Hodí se, když chcete mít přehled na telefonu nebo počítači a klíče ponechat odděleně. Samotný nápis watch-only však neříká, kdo klíče drží ani zda je zobrazený přehled správný.

Alice má klíče v hardwarové peněžence a chce z telefonu zjistit, zda jí přišla platba. Do telefonu proto přenese veřejnou konfiguraci peněženky, nikoli záložní slova. Aplikace díky ní rozpozná příslušné adresy a vyhledá jejich platby v síti. Alice uvidí příjem 20 000 sat, tedy nejmenších jednotek bitcoinu, i jeho potvrzení, přestože podpisové zařízení leží vypnuté doma. Telefon tím nezískal právo peníze poslat dál. Podobně může obchodník zpřístupnit účetní přehled plateb, aniž by jí svěřil klíče. Rozhodující je, co bylo skutečně importováno: zadání Seed Phrase, tedy záložních slov obnovujících klíče, by tuto hranici zrušilo. [12]

Do sledovací aplikace lze přidat i cizí veřejnou adresu. Částka na obrazovce proto nedokazuje, že ji její uživatel smí utratit, natož že má dost peněz na všechny své závazky. Aplikace sčítá nalezené UTXO, tedy dosud neutracené výstupy minulých plateb. Najde ale jen to, co odpovídá importovaným údajům a dostupné historii. Chybějící adresy, nedokončené hledání nebo nespolehlivý server mohou ukázat neúplný výsledek. Nula na obrazovce sama o sobě neznamená ztracené bitcoiny; nejdřív je potřeba ověřit rozsah sledování a zdroj dat. [8] [9]

Když chce Alice zaplatit, sledovací aplikace vybere dostupné UTXO a připraví příjemce, částku i poplatek. Zbytek použitého vstupu může vrátit do vlastní peněženky; tomu se říká change. Podklady lze přenést jako PSBT, formát částečně podepsané bitcoinové transakce podle BIP174. Oddělené zařízení tak dostane údaje potřebné k podpisu bez vlastní databáze UTXO. Alice musí na jeho důvěryhodném displeji zkontrolovat skutečného příjemce, částku, poplatek a vrácený zbytek. Napadená aplikace totiž může připravit jinou platbu, než Alice zamýšlela. Pozornost zaslouží také sighash, pravidlo určující části transakce kryté podpisem. Až po kontrole a podpisu se finální transakce, odpovídající schválenému návrhu a pravidlům peněženky, odešle do sítě. [2] [10]

Rozšířený veřejný klíč xpub umožňuje odvodit řadu dalších veřejných klíčů v určité větvi peněženky; sám platbu nepodepíše. Kdo jej získá spolu s pravidly peněženky, může ale propojit dosažitelné adresy, minulé i budoucí platby a zůstatky. Sdílíte tak mnohem více než jednu adresu pro jeden příjem. Podobný přehled může získat cizí server i z opakovaných dotazů aplikace. Vlastní Full Node, který sám ověřuje blockchain, omezuje toto sdílení; šifrované či jinak soukromé spojení před cílovým serverem dotazy neskryje. Exportujte jen potřebný účet, omezte kopie a chraňte i popisky, které adresám přiřazují jména nebo účel plateb. [1] [13] [14]

Následující část je technická reference k nastavení a obnově. Skript určuje podmínky utracení; Output Descriptor je zápis těchto pravidel a údajů pro odvozování adres. HD Wallet vytváří strom klíčů z jednoho seedu, tedy tajných výchozích dat pro jejich odvození. Odvození non-hardened dovoluje vytvářet další veřejné klíče z xpubu, zatímco hardened vyžaduje soukromý klíč. Multisig přidává předem stanovený počet potřebných podpisů. Import adresy sleduje právě její skript, nikoli budoucí adresy pro příjem a vrácení zbytku. Veřejný klíč pokryje různé typy skriptů jen tehdy, když je software výslovně odvodí. Účtový xpub umožňuje odvozovat potomky metodou non-hardened, sám však neurčuje P2PKH, SegWit, Taproot, vnitřní větev ani počet podpisů u Multisig. Tyto informace doplní deskriptor. Exportujte jej ze správného účtu podepisovacího zařízení se správnou sítí a typem skriptu; derivační cestu, tedy posloupnost kroků od výchozího klíče, nehádejte. [1] [4] [7]

HD peněženky obvykle oddělují přijímací větev /0/* a vnitřní větev /1/* pro change, tedy vrácený zbytek. Bez vnitřní větve může částka po útratě zdánlivě zmizet. Malý range, tedy rozsah odvozovaných adres, může skrýt nové příjmy. next_index určuje další vydanou adresu; jeho nesoulad mezi dvěma programy může vést k opětovnému použití adresy. Udržujte aktivní deskriptory, rozsahy a indexy ve shodě. Přijímací adresu ověřte na displeji podepisovacího zařízení: malware ji může vyměnit i při věrohodném zůstatku. [6] [9]

Příkaz importdescriptors v Bitcoin Core používá timestamp pro začátek prohledávání. Hodnota now přeskočí starou historii, 0 žádá hledání od Genesis Blocku. Záleží také na rozsahu range a dostupnosti starých bloků. Nastavení active určuje, zda se deskriptor používá k vydávání nových adres; internal označuje výstupy uvnitř peněženky, například vrácený zbytek. Prořezaný uzel, který kvůli úspoře místa odstranil staré bloky, nemusí mít potřebnou historii k dispozici. Rescan pouze hledá existující transakce. Uchovejte datum či výšku prvního použití a obnovu porovnávejte se známými adresami a transakcemi, ne jen s nulou na obrazovce. [9] [10]

BIP380 popisuje jazyk pro množiny výstupních skriptů. Ilustrační zápis wpkh([d34db33f/84h/0h/0h]xpub…/0/*)#checksum zachycuje typ skriptu, otisk hlavního klíče, původní cestu odvození, veřejný klíč účtu, větev a proměnný index i kontrolní součet. Není to platný údaj k importu. Pro Taproot slouží tr() podle BIP386; BIP389 umožňuje více cest v jednom zápisu. Kontrolní součet odhaluje chyby přepisu, neověřuje autora. Deskriptor obsahující xprv už nese tajný klíč a do sledovacího koordinátoru nepatří. [4] [5] [6] [7]

BIP32 popisuje důležitou výjimku: nadřazený xpub spolu se soukromým klíčem potomka odvozeného pouze kroky non-hardened umožní vypočítat nadřazený soukromý klíč. Samotný xpub nestačí; nebezpečná je tato kombinace. Krok hardened nad exportovaným účtem brání rozšíření útoku přes tuto hranici. Do sledovací peněženky nikdy nevkládejte xprv, seed ani soukromé klíče a neukládejte je do její databáze či doprovodných souborů PSBT. [1]

Sledování Multisig vyžaduje počet potřebných podpisů, typ skriptu, xpub každého spolupodepisujícího, původ klíčů, jejich pořadí a obě adresní větve. Jediný xpub nestačí. Ztráta deskriptoru může ztížit obnovu i s neporušenými seedy; jiné pořadí či obalení skriptu může vést k jiným adresám. Ověřte pravidla a vzorovou adresu na všech podepisovacích zařízeních. Zálohujte deskriptor s kontrolním součtem nebo standardní konfiguraci a počítejte s tím, že odhaluje vazby mezi spolupodepisujícími. [4] [11]

Odděleně od soukromých klíčů uchovejte deskriptory obou větví, původ klíčů, síť, datum či výšku vzniku, rozsahy, indexy, popisky a pravidla Multisig. BIP329 přenáší popisky, nikoli náhradu deskriptoru nebo historie. Obnovu vyzkoušejte v odděleném profilu či testovací síti: importujte veřejnou konfiguraci, prohledejte historii, porovnejte staré adresy obou větví a očekávané UTXO, připravte PSBT a podepište ji určeným zařízením. Před odesláním ověřte výsledek. Watch-only slouží ke sledování a přípravě, neuděluje právo utrácet. [3] [9] [12]

Pro nejúplnější obraz čtěte toto heslo společně s Extended Public Key (xpub), Peněženka, Cold Storage, Output Descriptor, PSBT, Bitcoin. Opačným směrem na něj odkazují také HD Wallet, Cold Storage, Extended Public Key (xpub), Output Descriptor.

DOC · 001BIP 32 — Hierarchical Deterministic WalletsSpecifikace DOC · 002BIP 174 — Partially Signed Bitcoin Transaction FormatSpecifikace DOC · 003BIP 329 — Wallet Labels Export FormatSpecifikace DOC · 004BIP 380 — Output Script DescriptorsSpecifikace DOC · 005BIP 386 — tr() Output Script DescriptorsSpecifikace DOC · 006BIP 389 — Multipath Descriptor Key ExpressionsSpecifikace DOC · 007Bitcoin Core — Output DescriptorsDokumentace DOC · 008Bitcoin Core RPC — createwalletDokumentace DOC · 009Bitcoin Core RPC — importdescriptorsDokumentace DOC · 010Bitcoin Core — Offline Signing TutorialDokumentace DOC · 011Bitcoin Core — Multisig TutorialDokumentace DOC · 012Electrum — Cold StorageDokumentace DOC · 013Bitcoin Optech — Output Script DescriptorsDokumentace DOC · 014Sparrow Wallet — Quick Start GuideDokumentace
Revidováno: Primární zdroje · Nejde o investiční doporučení