64 / 736PRIV

Soukromí v Bitcoinu

Bitcoin Privacy

Když někomu zaplatíte bitcoinem, nechcete mu tím ukázat celé své finance. Veřejná historie plateb ale může prozradit víc, než čekáte. Soukromí začíná pochopením toho, co je vidět, kdo vás zná a které informace zbytečně spojujete.

Soukromí v Bitcoinu znamená omezovat propojení veřejných plateb s konkrétními lidmi a jejich dalšími penězi. Běžná transakce nevyžaduje občanské jméno, ale ukazuje použité prostředky, nové výstupy a částky. Jméno může dodat faktura, účet u služby nebo samotný příjemce. Proto Bitcoin není automaticky anonymní.

Anna dostala za práci 100 000 sat, tedy nejmenších jednotek bitcoinu. Později z tohoto příjmu zaplatí Pavlovi 20 000 sat; 79 000 sat se vrátí do její peněženky a 1 000 sat tvoří poplatek. Výstup je záznam částky a podmínek, za kterých ji lze utratit. Síť vidí celý tento převod. Pavel zná svou částku i Annu a může zkusit odhadnout, který z dalších výstupů je její zbytek. Nevidí tím automaticky všechny její úspory, získal ale vodítko. Na rozdíl od bankovního výpisu není tento záznam přístupný jen bance a majiteli účtu. Může se k němu vracet kdokoli, i po letech. [1]

Cizí člověk vidí veřejný záznam, Pavel navíc zná Annu a burza může mít její doklady. Provozovatel peněženky může vědět, na které adresy se aplikace ptá. Této otázce — před kým a co chci chránit — se říká model hrozeb. Nejde o předpoklad, že všichni jsou útočníci. Pomáhá zvolit přiměřenou ochranu: jinak se brání zveřejnění příjmů zákazníkům a jinak sledování síťového připojení. Soukromý klíč je tajný údaj, kterým peněženka vytváří digitální podpis potvrzující souhlas s platbou. Utajení klíče samo o sobě neskrývá platební historii. [1] [3]

Anna může každému zákazníkovi ukázat novou přijímací adresu. Zabrání tím jednoduchému sčítání všech plateb na jednu opakovaně používanou adresu. Peněženka běžně vytváří nové adresy i pro vrácený zbytek, označovaný jako change. To je dobrý základ, ne záruka nepropojitelnosti. Pokud Anna později spojí prostředky z různých adres do jedné platby, může sama vytvořit nové vodítko. Veřejná darovací adresa je zvláštní případ: může být záměrně transparentní, ale její příjmy pak nejsou soukromé. [1]

Peněženka nemá jeden nerozlišený zůstatek. Spravuje neutracené výstupy dřívějších transakcí, zvané UTXO, a pro platbu některé vybere jako vstupy. Když použije několik vstupů společně, analytik často odhaduje, že patří jednomu člověku. Je to heuristika, tedy pomůcka k odhadu, nikoli důkaz: společné transakce více lidí tento předpoklad porušují. Funkce Coin Control umožňuje výběr ovlivnit. Štítky původu peněz mohou pomoci oddělení udržet, ale jsou jen poznámkami v peněžence a nic samy nevynucují. Ruční výběr bez pochopení vratky může soukromí i poplatek zhoršit. [2] [7]

Rozšířený veřejný klíč XPUB umožňuje odvozovat další veřejné klíče a s pravidly peněženky také adresy příslušné větve. Kdo tyto údaje má, může sledovat její platby; samotný XPUB ale k podepsání platby nestačí. Jeho rozsah závisí na tom, který klíč sdílíte; nemusí odhalovat celou peněženku, přesto je citlivý. Podobně může služba propojit výběr se jménem ověřeným pomocí KYC, tedy kontroly totožnosti zákazníka. Webový průzkumník transakcí zase může zaznamenat, na co se ptáte a odkud. Pro kontrolu zůstatku nikdy neposílejte obnovovací slova ani soukromý klíč. I veřejné údaje sdílejte jen tam, kde je jejich rozsah potřebný a srozumitelný. [1] [6]

Aplikace musí zjistit, které platby jí patří. Pokud pošle seznam adres cizímu serveru, může mu tím prozradit jejich společnou příslušnost. Full Node je počítač s programem, který sám kontroluje bitcoinové transakce a bloky podle pravidel sítě. Vlastní Full Node pomáhá, když peněženka opravdu získává potřebná data přes něj, případně přes vlastní indexovací službu. Pouhá instalace uzlu vedle peněženky nestačí. Lehké peněženky mohou používat kompaktní filtry podle BIP 157 a hledat shody u sebe místo odesílání seznamu adres. Ani to neodstraní všechny síťové stopy. Tor může omezit odhalení IP adresy, tedy adresy internetového připojení, ale veřejné částky a vazby mezi transakcemi nezmění. [1] [3]

Pozorovatel nemusí znát jméno přímo z adresy. Stačí veřejná faktura s přesnou částkou, čas zveřejněného nákupu a následná platba. Další vodítka dává podoba transakce nebo pravděpodobná vratka. Žádný takový znak sám spolehlivě neprokazuje vlastníka, ale jejich kombinace může odhad zesílit. Ani rozdělení peněz do více peněženek nepomůže, pokud je později znovu spojíte. Pokročilá funkce avoid partial spends v Bitcoin Core může vybrat výstupy patřící stejné adrese ke společnému utracení. Omezuje tím postupné propojování dalších plateb z této adresy, může však přidat vstupy a zvýšit poplatek. Výsledek závisí i na nastaveném limitu poplatku; nejde o univerzální anonymizaci. [1] [5]

CoinJoin skládá prostředky více lidí do jedné transakce. Pozorovateli tím může ztížit určení, který původní vlastník ovládá který nový výstup. PayJoin je odlišný postup: příjemce přidá vlastní vstup do platby odesílatele, takže neplatí jednoduchý předpoklad jediného vlastníka všech vstupů. Ani jeden postup nemaže historii nebo nezaručuje anonymitu. Výsledek záleží na protokolu, účastnících, informacích dostupných ostatním a dalších platbách. Před použitím je nutné rozumět také koordinaci, poplatkům a tomu, co se stane při přerušení; samotný název funkce nic negarantuje. [2] [7]

Silent Payments podle BIP 352 umožňují zveřejnit stálý platební údaj, z něhož odesílatelé vytvářejí různé cílové výstupy. Příjemce tak nemusí každému předem posílat novou běžnou adresu. Jeho peněženka ovšem musí podporovat tento protokol a prohledávat data, aby příchozí platby rozpoznala. Specifikace odděluje klíč pro hledání plateb od klíče k utrácení. Záloha a obnova musí odpovídat použité peněžence; důležité mohou být i použité štítky. Štítky Silent Payments navíc nejsou oddělené identity: jejich veřejné platební údaje sdílejí veřejný skenovací klíč. Ani tato technika neskryje všechny následné pohyby peněz. [4]

Pro každou běžnou příchozí platbu použijte novou adresu, nezveřejňujte zbytečně doklady o platbách a zjistěte, odkud peněženka čerpá data. Udržujte přehled o původu prostředků a oddělujte účely, které nechcete spojovat. Před ručním výběrem vstupů nebo pokročilou technikou si nejdřív ujasněte jejich dopad; chyba není cenou, kterou musíte zaplatit za soukromí. Ověření adresy, zálohy a kontrola poplatku přitom zůstávají stejně důležité. Cílem je sdělovat méně zbytečných informací, ne získat falešnou jistotu, že vás nikdo nikdy nedokáže propojit s žádnou platbou. [1] [3] [4]

Pro nejúplnější obraz čtěte toto heslo společně s Pseudonymita, CoinJoin, Coin Control, KYC, Bitcoin, Bitcoinová adresa. Opačným směrem na něj odkazují také Watch-only Wallet, Coin Control, Change Address, Extended Public Key (xpub).

DOC · 001Bitcoin.org — Protect Your PrivacyDokumentace DOC · 002BIP 78 — A Simple Payjoin ProposalSpecifikace DOC · 003BIP 157 — Client Side Block FilteringSpecifikace DOC · 004BIP 352 — Silent PaymentsSpecifikace DOC · 005Bitcoin Core 0.21 — Avoid Partial SpendsDokumentace DOC · 006BIP 32 — Hierarchical Deterministic WalletsSpecifikace DOC · 007Gregory Maxwell — CoinJoin: Bitcoin privacy for the real worldPrimární zdroj
Revidováno: Primární zdroje · Nejde o investiční doporučení