149 / 736AIRGAP

Air-gapped Wallet

Peněženka, která podepisuje mimo online počítač

Počítač připraví platbu, oddělené zařízení ji podepíše. Co tím získáte, co přenášejí QR kódy a proč se pořád musíte podívat na displej.

Air-gapped Wallet je peněženka, u které se platby podepisují na zařízení odděleném od běžného síťového spojení s online počítačem či telefonem. Soukromé klíče mají zůstat v tomto odděleném prostředí; návrh platby a podpisy se přenášejí například QR kódem nebo paměťovou kartou.

Peněženka je aplikace nebo zařízení pro přijímání a odesílání bitcoinů. Anna používá notebook k běžnému prohlížení internetu. Nechce, aby na něm zároveň byly soukromé klíče: tajné údaje, jimiž se vytváří podpis opravňující utratit bitcoin. Rozdělí proto práci mezi dvě zařízení. Program na notebooku sleduje platby a připravuje nové; říká se mu koordinátor. Oddělené zařízení návrh zkontroluje a po jejím souhlasu podepíše; to je signer. Podobně může pracovat Hardware Wallet, tedy hardwarová peněženka. Air gap popisuje hlavně způsob oddělení a přenosu dat, nikoli automatickou vlastnost každé takové peněženky. Dočasně vypnout Wi-Fi na běžném notebooku nestačí: záleží na jeho dalších připojeních, programu i na tom, zda se později znovu připojí s tajnými údaji uvnitř. [3] [5]

Anna zadá příjemce a částku do koordinátoru. Ten připraví PSBT, datový balíček s návrhem transakce a podklady k podepsání. Patří k nim údaje o UTXO, tedy o dosud neutracených výstupech starších plateb. To jsou samostatné částky, na které odkazují vstupy nové transakce. Balíček přenese do signeru, například naskenováním QR kódu. Zařízení zpracuje údaje, které podporuje, a po kontrole a schválení přidá podpis. Výsledek se vrátí na notebook. Teprve když jsou splněny potřebné podpisové podmínky, lze sestavit hotovou transakci a odeslat ji do sítě. Ještě tím není potvrzena v bloku. Blok sdružuje transakce, které se společně zapisují do veřejné historie Bitcoinu. Po této cestě putuje návrh a podpis, nikoli tajný klíč nebo záloha peněženky. [1] [6]

Představme si vstup 100000 sat. Sat je nejmenší bitcoinová jednotka. Anna chce poslat 60000 sat, 39000 sat si vrátit a 1000 sat ponechat jako poplatek. Vracená část má vlastní výstup nazývaný Change Output. Signer musí ověřit, že patří ke správným klíčům a nastavení její peněženky; pouhá poznámka „vratka“ od notebooku nestačí. Anna zároveň porovná celou adresu příjemce, částku a poplatek na důvěryhodném displeji signeru se zamýšlenou platbou. Napadený notebook může navrhnout cizí adresu při naprosto správném součtu. Pokud Anna takový návrh schválí, samotné oddělení zařízení její peníze neochrání. [1] [4]

QR kód je způsob zápisu dat do obrázku, nikoli potvrzení, že jsou data bezpečná. Větší balíček může proběhnout jako sled obrázků ve formátu BBQr nebo UR; oba přístroje musí danému formátu rozumět. Software čtoucí obrázek a PSBT může mít chyby stejně jako jiný program. Zvlášť důležité je rozlišit QR s transakcí od SeedQR. Ten obsahuje zálohu tajných údajů, ne návrh platby. SeedQR proto nepatří před kameru online notebooku ani telefonu. O tom, zda lze kód přenést ven, rozhoduje jeho obsah a účel, ne to, že na pohled připomíná ostatní čtverečky. [2] [4]

Jiný postup používá MicroSD: Anna uloží PSBT na kartu, vloží ji do signeru a výsledek přenese zpět. Síťový kabel k tomu nepotřebuje, ale zařízení stále čte cizí soubor. Bezpečnost závisí na programu, který jej zpracovává, i na řadiči a souborovém systému, tedy součástech zajišťujících čtení a uspořádání dat. Vyhrazená karta pomáhá udržet pořádek; nezaručuje neškodný obsah. Také napájení je potřeba posoudit konkrétně. USB může vést proud i data. Má-li sloužit pouze jako zdroj proudu, datová cesta skutečně nesmí být aktivní. Nápis „nabíjení“ sám tuto vlastnost nedokládá. [2] [3]

COLDCARD mezi své air-gap metody řadí také NFC. Jde o krátkodosahové rádio, zatímco QR přenáší obraz a MicroSD soubor na fyzickém médiu. Není tedy přesné považovat tyto způsoby za totožné. Jestliže chcete vyloučit rádiovou komunikaci, zapnuté NFC tento požadavek nesplní. V dokumentaci konkrétního přístroje je užitečnější zjistit, který kanál je aktivní, kdy se zapíná a co jím může projít, než se spokojit se slovem air-gapped. Trvalé datové spojení přes USB má opět jinou hranici než ruční přenášení souboru. [2]

Koordinátor může fungovat jako watch-only: sledovat peněženku bez možnosti sám podepsat platbu. Pomáhá mu xpub, rozšířený veřejný klíč pro odvozování dalších veřejných klíčů, nebo veřejný Descriptor, popis klíčů a pravidel používaných k vytváření adres. Tyto údaje samy nedovolují utrácet, ale mohou spojit adresy a platby s jednou peněženkou. Také PSBT může obsahovat veřejné klíče, cesty jejich odvození a údaje o UTXO. U Multisig, kde platbu schvaluje více klíčů podle daného pravidla, je správná konfigurace všech spoluúčastníků důležitá pro obnovu i ověření vratek. Izolace signeru proto neznamená anonymitu notebooku nebo soukromí jeho dotazů na síť. [1] [4]

Anna stále potřebuje bezpečně uloženou Seed Phrase, zálohu ve slovech, a další údaje vyžadované její peněženkou. SeedSigner načítá tajemství jen dočasně; po vypnutí se na jeho paměť jako na zálohu spoléhat nemůže. Air gap nenahradí ani důvěryhodný firmware, tedy program uvnitř zařízení, ani kontrolu schvalované platby. Secure Element řeší jinou část ochrany: ztěžuje některé útoky na samotný čip. Cold Storage zase označuje uchovávání klíčů mimo online prostředí; air gap popisuje způsob práce s odděleným podpisem. Než takový postup použijete pro významné úspory, dává smysl nacvičit přenos, ověření i obnovu s oddělenými testovacími klíči. Smyslem je rozumět každému kroku, ne mít jen více přístrojů na stole. [3] [4]

Pro nejúplnější obraz čtěte toto heslo společně s Hardware Wallet, PSBT, Cold Storage, Seed Phrase, Output Descriptor, Multisig. Opačným směrem na něj odkazují také Cold Storage, Secure Element, SeedQR, BBQr.

DOC · 001BIP 174 — Partially Signed Bitcoin Transaction FormatSpecifikace DOC · 002COLDCARD — Bitcoin Air-Gap Signing MethodsDokumentace DOC · 003SeedSigner — Frequently Asked QuestionsPrimární zdroj DOC · 004SeedSigner — Independent Custody GuideDokumentace DOC · 005Bitcoin Developer Guide — WalletsDokumentace DOC · 006Bitcoin Developer Guide — Block ChainDokumentace
Revidováno: Primární zdroje · Nejde o investiční doporučení