Jade je cenovo dostupná Bitcoinová hardvérová peňaženka od firmy Blockstream. Jej softvér aj hardvér sú open-source. Na Bitcoinovom ekosystéme je pekné, že je pestrý a tak rôzni ľudia a rôzne firmy skúšajú vyvíjať produkty, ktoré fungujú odlišne. Filozofia Jade sa tak dosť líši od mnohých iných peňaženiek, ktoré čitatelia asi poznajú - známe peňaženky Trezor a Ledger. Peňaženku Jade popíšeme najmä pomocou odlišností od peňaženiek, ktoré pravdepodobne poznáte.
V balení sa nachádza okrem samotnej peňaženky aj USB-C kábel. Ten je bohužiaľ USB-C zo strany peňaženky, ale na strane počítača je starší USB-A port, ktorý novšie zariadenia už nemajú. Samozrejme, použiť môžete akýkoľvek dátový USB-C kábel. Okrem toho v balení nájdete papierik s návodom na prvotnú inštaláciu, papierik na zálohu seedu a dva papieriky s tzv. SeedQR zálohou, o ktorej si ešte povieme.
Vzhľad peňaženky je trošku sparťanský a pripomína viac DIY projekty ako SeedSigner - čo niektorým ľuďom vyhovuje. Okrem USB-C portu obsahuje jedno koliečko, ktorým sa ovláda menu, tlačidlo na potvrdenie voľby a vypínacie tlačidlo. Peňaženka má (na rozdiel od napríklad peňaženiek Trezor) aj batériu a dokáže fungovať aj bez pripojenia k počítaču USB káblom.
Prepojenie s počítačom môže prebiehať pomocou USB-C pripojenia (napríklad s dektopovou aplikáciou Green), bezdrôtovo pomocou rozhrania Bluetooth (napríklad s mobilnou peňaženkou Green), ale aj v tzv. “Air-gapped režime” pomocou animovaných QR kódov. V tomto režime sa k peňaženke nič priamo digitálne nepripája a peňaženky komunikujú pomocou animovaných obrázkov QR kódov. Za týmto účelom má peňaženka okrem displeja aj malú kamerku, pomocou ktorej dokáže skenovať QR kódy z počítača, ktoré môžu obsahovať napríklad prihlasovaciu výzvu, zálohu peňaženky alebo nepodpísanú transakciu (vo formáte PBST).
Aj keď je Jade kompatibilný s viacerými softvérovými peňaženkami ako napríklad Sparrow Wallet, Specter a mnohými ďalšími, pre najpohodlnejšie použitie budete potrebovať peňaženku Green od Blockstreamu. Pomocou nej aktualizujete firmware a môžete používať aj pokročilejšie vlastnosti ako napríklad podporu siete Liquid, či integráciu dvojfaktorovej autorizácie transakcií. S peňaženkou Green môžete aj najjednoduchšie využiť virtuálny secure element - bez tejto peňaženky musíte využiť webovú stránku tzv. PIN serveru, ktorý je tiež open-source a môže bežať na vlastnom serveri alebo môžete využiť server Blockstreamu.
Peňaženka Green sa podobne ako samotný Jade dosť líši od ostatných peňaženiek svojou filozofiou. Umožňuje vytvorenie dvojfaktorových účtov a podobne. Jade taktiež natívne podporuje multisig schémy.
Tu je dobré pripomenúť, že peňaženka Jade podporuje iba Bitcoin na pôvodnej sieti a aktíva na sieti Liquid (Bitcoin, Tether a pod.). Nepodporuje iné siete ako napríklad Ethereum alebo Monero.
Nakoľko je seed záloha digitálnych dát, povedali si autori Jade (a iných peňaženiek ako napríklad SeedSigner), že nie je dôvod ich reprezentovať iba vo formáte, ktorý je čitateľný ľuďom (seed), ale bolo by pohodlné pre obnovu ich uložiť aj vo forme QR kódu. Samozrejme, QR kód nechceme tlačiť pomocou klasickej tlačiarne, pretože to porušuje princíp, že nechceme seed procesovať pomocou digitálnych zariadení a už vôbec nie pomocou zariadení pripojených na Internet.
SeedQR tak vytvoríme pomocou čiernej fixky - nakreslíme správne bodky na predtlačenú šablónu. Tento proces je trošku náročnejší ako zapisovanie seedu vo forme slov, ale jeho obnova je o to jednoduchšia.
Mimochodom, takto vytvorené peňaženky môžeme používať aj vo forme dočasných peňaženiek, o čom si povieme ešte nižšie.
Keďže Jade nemá secure element, vytvorili v Blockstreame jeho náhradu “v cloude”. Jade seed rozdelí na dve časti (šikovnejšie ako rozdelením slov na polovicu), pričom ktorákoľvek časť tejto zálohy je bez druhej úplne nepoužiteľná a nedáva útočníkovi žiadnu dodatočnú informáciu. Jedna časť je uložená v pamäti hardvérovej peňaženky, druhá je uložená na serveri Blockstreamu. V prípade, že chcete peňaženku použiť, musíte zadať PIN. Po jeho zadaní server Blockstreamu pošle vašej peňaženke druhú časť seedu a tá sa v dočasnej pamäti zariadenia Jade spojí. Keď Jade vypnete alebo dokončíte prácu, z dočasnej pamäte RAM sa druhá časť zmaže a peňaženka je bez zadania pinu a druhej časti znova nepoužiteľná. Blockstream pritom má iba polovicu seedu, ktorá sama o sebe nie je použiteľná na nič.
Ak Jade pripájate pomocou peňaženky Blockstream Green k počítaču pomocou USB alebo k mobilu pomocou Bluetooth, komunikáciu s Blockstream servermi zabezpečí priamo peňaženka.
Ak chcete využiť “airgapped režim”, teda používať peňaženku bez pripájania k zariadeniu, musíte si vystačiť s QR kódmi, pomocou ktorých budete komunikovať s tzv. PIN serverom, ktorý obsahuje druhú časť vášho seedu a teda poskytuje spomínaný virtuálny secure element. V menu zvolíte QR pin unlock a navštívite na akomkoľvek zariadení stránku blkstrm.com/pn.
Na Jade zadáte PIN a pomocou webkamery naskenujete pomocou webstránky animovaný QR kód zobrazený na displeji Jade.
Potom sa na stránke zobrazí animovaný QR kód, ktorý načítate zase na Jade a peňaženka je odomknutá a v dočasnej pamäti má celý seed. Teraz môžete pomocou peňaženiek podporujúcich QR kódy podpisovať transakcie.
Na ukážku Airgapped režimu použijeme peňaženku Sparrow Wallet. Najprv si vytvoríme novú peňaženku, s nastaveniami Native Segwit a ako “signer” zvolíme “Airgapped Wallet” a “Jade”. V menu Jade zvolíme Options / Wallet / Export Xpub. Tým sa nám ukáže animovaný QR kód, ktorý ukážeme na kameru zariadenia, na ktorom máme otvorený Sparrow Wallet.
Na peňaženku prijmeme nejaké Bitcoiny (záložka Receive) a môžeme vyskúšať odoslať Bitcoiny na inú adresu pomocou Sparrow Wallet s Jade.
Po vytvorení transakcie sa nám zobrazí. Klikneme na Finalize Transaction.
Zobrazí sa nám QR kód, ktorý môžeme zväčšiť pomocou “Decrease density”, čim sa premení na animovaný kód. Tento kód naskenujeme pomocou Jade (možnosť “Scan QR”).
Po naskenovaní celého animovaného QR kódu sa nám zobrazí adresa, suma a poplatok.
Na záver sa nám zobrazí na Jade QR kód s podpísanou transakciou, ktorú naskenujeme v Sparrow Wallet.
Pripomínam, že tento spôsob podpisovania transakcií je neštandardný - väčšina užívateľov bude používať pripojenie cez Bluetooth alebo USB s appkou Blockstream Green, kedy sa skenovaniu QR kódov vyhnete. Tento spôsob používajú len ľudia, ktorí nechcú svoju HW peňaženku pripájať k žiadnemu zariadeniu.
Airgapped režim môže vyzerať na prvý pohľad ako nevyhnutnosť, ale v implementácii Jade mám svoje pochybnosti. To, že je firmware open-source je samozrejme super, ale v spolupráci s faktom, že Jade obsahuje Bluetooth rozhranie mi príde ako realistická exfiltrácia kľúča po zadaní PINu cez Bluetooth. Užívateľ síce má pocit, že používa iba QR kódy a zariadenie k ničomu nepripája, no so zmeneným firmware je možné po zadaní PINu a prepojení pamäte a virtuálneho secure elementu (a teda vyskladaní celého seedu) poslať kľúč vďaka malware vo firmware cez Bluetooth. Toto vyžaduje šikovnú modifikáciu firmware, ale jedná sa o viac-menej softvérový útok. Tým, že Jade má Bluetooth rozhranie, nemusíme ho k ničomu pripájať my - so zmeneným firmware sa môže samotné zariadenie pripojiť von na zariadenie útočníka v blízkosti (napr. Raspberry Pi v skrini v zásuvke alebo niekde odložené na baterke).
Porovnajme to s Trezorom, ktorý síce nevie komunikovať cez QR kódy a musí byť pripojený k počítaču pomocou USB, ale počítač mu posiela konkrétne transakcie na podpis a tieto transakcie sa vracajú podpísané. Na úspešný útok teda treba nielen zmeniť firmware, ale aj úspešne zaútočiť na samotný počítač, pretože Trezor Suite očakáva od zariadenia podpísanú konkrétnu transakciu, ktorú užívateľ vytvoril na počítači. Ak aj Trezor odomkneme, jediný spôsob, akým komunikuje s okolitým svetom je USB a teda ani prípadný útočníkov firmware nemá taký ľahký spôsob ako dostať kľúč von, na to je potrebný ešte sofistikovanejší útok.
Pomocou QR kódov alebo zadaním seedu (čo je trochu ťažkopádne) je možné používať Jade s dočasnými peňaženkami. Môžete mať tak peňaženku, ktorú štandardne nepoužívate a nemáte ju v žiadnom zariadení, ale naskenovaním SeedQR papierika zo svojho Jade urobíte dočasnú peňaženku. Po dokončení práce sa peňaženka z pamäte zmaže. Takto môžete napríklad podpísať transakciu z nejakej staršej peňaženky, kde ste už nečakali prísun peňazí alebo dočasne obnoviť seed z hardvérovej peňaženky, ktorú ste napríklad stratili a potrebujete z nej dostať Bitcoiny.
Formát SeedQR vám ušetrí nervy, zadávanie dlhého seedu pomocou koliečka a jedného tlačidla je dosť zdĺhavé.
Ak sa niekto dostane k vášmu zariadeniu a podarí sa mu získať seed (či už uhádne alebo odpozoruje PIN alebo sa k seedu dostane pomocou hacku niektorého vášho zariadenia), prináša peňaženka Green možnosť využiť tzv. dvojfaktorové overenie transakcie (2FA).
Tento prístup využíva multisig schému 2-z-2 alebo 2-z-3. V oboch prípadoch má jeden kľúč priamo Blockstream a ak mu dodáte podpísanú transakciu vašim Jade, pridá podpis za okolností, ktoré si nastavíte. Mimochodom, na využitie tejto funkcionality nemusíte mať Jade, funguje aj so softvérovým kľúčom.
Medzi podporované spôsoby druhého faktoru patria E-mailové overenie, SMS, telefonát a TOTP služba ako napríklad Google Authenticator. E-mailové overenie umožňuje voliteľne zapnúť podporu PGP a tak e-maily prídu šifrované, aj keď v čase písania tohto textu mi táto možnosť nefungovala. Telefonát je volanie, kde vám server blockstreamu prečíta kód, ktorý musíte zadať do aplikácie. Green odporúča zapnúť aspoň dva spôsoby overenia, keby ste náhodou o jeden z nich prišli, aby ste mali zálohu.
Samozrejme, tu prichádza otázka - čo ak Blockstream prestane existovať alebo sa s vašim druhým faktorom niečo stane? Pri schéme 2-z-2 sú Bitcoiny po vypršaní časového zámku cca 18 mesiacov dostupné aj bez druhého faktora. Je preto dôležité si ich preposielať na svoju adresu, aby sa tento časový limit resetoval. Pri schéme 2-z-3 dostanete jeden kľúč navyše, ktorý si musíte odzálohovať, ideálne inde ako prvý kľúč. S týmto tretím kľúčom dokážete zložiť podpis aj hneď, ale sám o sebe je útočníkovi nanič.
Nevýhodou sú samozrejme väčšie a teda drahšie transakcie. MInimálne pri sieti Liquid, ktorá je lacnejšia, je však dobré túto možnosť zapnúť.
Na druhej strane, užitočnosť tohto nástroja je otázna, nakoľko o istú formu druhého faktora ide aj pri virtuálnom secure elemente s PINom.
Ak používate Bitcoin, máte predpokladám často rôzne peňaženky, ktoré skúšate a ku ktorým si musíte zapisovať seedy. Či už sa jedná o Lightning peňaženky, rôzne softvérové peňaženky alebo máte nebodaj dodatočné hardvérové peňaženky, ktoré používate na iné účely. Tieto peňaženky majú seedy a tie skončia často ako záznamy v správcovi hesiel, čím riskujete ich odcudzenie v prípade hacku počítača. Mnohým sa tieto seedy váľajú napísané na papierikoch a obálkach. Niektoré hardvérové peňaženky - vrátane Jade - však majú tretiu možnosť - štandard BIP-85.
Pomocou tohto štandardu je možné z vášho hlavného seedu vypočítať “detské” seedy. Teda ak máte zálohu hlavnej peňaženky, viete pomocou menu peňaženky vygenerovať ďalšie seedy, ktoré sú vypočítané z hlavného seedu peňaženky. Takto si nemusíte nič navyše zapisovať a pamätať.
Drobnou nevýhodou je, že pri generovaní odvodených seedov si nemôžete priamo v Jade pridať poznámku, generované sú podľa čísla (a počtu slov). To v praxi znamená, že si musíte niekde poznačiť, ako vygenerujete seed ktorej peňaženky (napríklad máte softvérovú peňaženku, ktorej seed ziskate tak, že si vo svojej hardvérovej peňaženke dáte vygenerovať 12-slovný seed z indexu 0). Teda musíte si zapamätať informáciu “Názov SW peňaženky, 12-slov, index 0, odvodené od seedu môjho Jade”. Túto informáciu si môžete zapísať kdekoľvek do poznámok, nie je veľmi citlivá.
Posledný problém je, že nie každá peňaženka vám dovolí “obnoviť” neexistujúcu peňaženku. Proces vytvorenia seedu je tu otočený oproti procesu, aký sme zvyknutý. Väčšinou seed generuje peňaženka, ktorú si inštalujeme (napríklad Lightning alebo on-chain peňaženka) a tá nám povie, aby sme si zapísali seed. Ak však chceme použiť štandard BIP-85 ako formu zálohy peňaženky, bude proces opačný - seed nám vygeneruje Jade v rámci možnosti BIP-85 z menu a tento seed musíme vložiť do peňaženky, ktorú chceme používať, cez funkcionalitu obnovy peňaženky.
Problém je, že niektoré peňaženky zistia, že peňaženka s daným seedom nebola u nich vytvorená. Týka sa to hlavne Lightning peňaženiek, ktoré na server ukladajú stav. Aj napriek tomu by tento postup mal fungovať na väčšinu peňaženiek, ktoré používajú jeden zo štandardných formátov seedov.
Sieť Liquid je alternatívny blockchain (alebo “sidechain”) firmy Blockstream, postavený na podobných technológiách ako Bitcoin samotný. Na rozdiel od Bitcoinu má tzv. confidential transactions, ktoré zabezpečujú, že pri transakciách nie sú viditeľné sumy (podobne ako u kryptomeny Monero) a podporuje natívne alternatívne tokeny (ako napríklad USDT - Tether), pričom na blockchaine nie je vidno ani o aký token sa jedná, ani sumu.
Liquid má momentálne výrazne nižšie poplatky ako klasický on-chain Bitcoin - 0.1 sat / vB, aj keď pozor, transakcie sú o čosi väčšie ako na Bitcoine kvôli confidential transactions. Nevýhodou je, že to nie je permissionless ani úplne decentralizovaný projekt. Bloky vytvárajú členovia Liquid federácie. Jedná sa o väčšie množstvo Bitcoinových firiem z rôznych jurisdikcií, ale tvorcom blokov sa nemôže stať ktokoľvek. Taktiež je potrebné dôverovať, že bude fungovať peg-in a peg-out mechanizmus.
Na druhej strane má Liquid množstvo využití. Pomocou swap služby ako napríklad Boltz.exchange je možné prijímať Lightning platby bez potreby prichádzajúcej likvidity. Ak si chcete sporiť pomocou dollar cost averaging, je dobrou možnosťou sporiť L-BTC (liquid BTC) a z času na čas ich zmeniť na Bitcoin na hlavnom chaine. Dôvod je ten, že minutie Bitcoinov, ktoré vám prišli môže byť v budúcnosti drahšie a ak si sporíte napríklad 50€ mesačne, môže byť poplatok za minutie tohto výstupu signifikantná časť týchto peňazí. Môžete tak počkať, kým si nasporíte väčšiu sumu a až tú si poslať do Bitcoinu.
Podporu siete Liquid mali mobilné peňaženky Green a taktiež peňaženka Aqua, ktorá pôvodne vznikla ako projekt v rámci Blockstreamu, ale momentálne sa oddelila pod osobitnú firmu a vyvíja sa nezávisle. Do peňaženky Aqua môžete priamo prijímať aj Lightning platby - prehodenie na Liquid sa udeje automaticky na pozadí.
Pred vznikom peňaženky Jade však chýbala dobrá hardvérová peňaženka, ktorá by Liquid podporovala. Green momentálne podporuje dve hardvérové peňaženky, ktoré vedia používať Liquid - Ledger a Jade. Môžete tak robiť cenovo efektívny dollar cost averaging - prijímať Bitcoiny do Green peňaženky s Jade (napríklad cez spomínanú swap službu) a stále mať ochranu hardvérovej peňaženky, vrátane 2FA podpory peňaženky Green.
Užívateľské rozhranie Jade má oproti iným peňaženkám čo doháňať. Pripojenie na peňaženku je často pomalé a samotná peňaženka Green má niekoľko chýb (počas písania tohto článku som nahlásil tri chyby - dve v samotnej peňaženke a jednu v dokumentácii). Nevýhodou je, že funkcionalita desktopovej a mobilnej peňaženky je odlišná (mobilná verzia má viacero funkcií), takže ak ste dúfali, že budete peňaženku používať z počítača cez USB, máte čiastočne obmedzené možnosti.
Skenovanie QR kódov je trochu ťažkopádne a na dennodenné používanie určite odporúčam radšej Bluetooth alebo USB.
Peňaženka Green má experimentálnu natívnu podporu siete Lightning a podľa menu by mala byť táto sieť prístupná aj na základe kľúčov odvodených z vášho Jade seedu. To znamená, že Jade exportuje do peňaženky kľúč, od ktorého budú odvodené kľúče ktorými sa podpisujú commitment transakcie. Pozor, v takomto prípade je prístup k Lightningu čisto softvérový a nepotvrdzujete ho na Jade peňaženke! Odvodenie má len tú vlastnosť, že nemusíte robiť extra zálohu Lightning peňaženky, ale ak máte odzálohovaný seed k vašej Jade, máte aj zálohu peňaženky.
Táto služba používa na pozadí technológiu Greenlight, kedy v cloude Blockstreamu bežíte inštanciu core lightning nody, ale všetky operácie, na ktoré je potrebné použitie kľúčov robí vaša peňaženka na mobilnom zariadení. To je podľa môjho názoru relatívne dobrý kompromis medzi suverenitou a pohodlnosťou. Ak služba Greenlight prestane fungovať, budete mať zložitejší prístup k svojim kanálom, ale ak sa zavrú, skončia on-chain Bitcoiny vo vašej peňaženke. Na druhej strane prevádzkovateľ Greenlight (alebo prípadný útočník) vás nevie obrať o vaše Bitcoiny, lebo nemá kľúče potrebné na podpisy zmenených stavov kanálov.
Túto funkcionalitu sa mi však nepodarilo odskúšať, nakoľko mi Jade nechce načítať úvodný QR kód, ktorým sa proces exportu kľúčov inicializuje.
Nakoľko pozná Blockstream zostatky na vašich peňaženkách je ťažké odpovedať a odpoveď sa bude líšiť podľa toho, či používate druhý faktor (2FA). Ak si pridáte napríklad telefónne číslo a e-mail, to je spárované s vašimi adresami a Blockstream zároveň pozná zostatky na týchto adresách. Je teda otázne, čo by sa stalo, ak by táto databáza unikla, napríklad po úspešnom útoku na servery Blockstreamu.
Samozrejme, môžete používať TOTP a anonymný e-mail, potom je ale dobré sa o daný e-mail starať, aby ho napríklad prevádzkovateľ nezrušil, ak ho často nepoužívate. Aj napriek tomu Blockstream pozná zostatky na vašich peňaženkách - a to aj v prípade siete Liquid, ktorá tieto zostatky verejne nezobrazuje.
Ako je na tom Green s ohľadom na súkromie je teda otázne. Ak ste paranoidní, odporúčam s Jade používať inú peňaženku (napríklad Sparrow Wallet), ale tá nepodporuje druhý faktor, ani sieť Liquid.
Z pohľadu súkromia môžu byť lepšie účty bez druhého faktora, aj keď ťažko povedať, či to v praxi pomôže, ak sa na server Blockstreamu pošle “xpub”.
Peňaženka Green podporuje pripojenie Tor, ktoré je ale naozaj pomalé, použitie cez VPN bude asi v praxi príjemnejšie.
Jade podobne ako napríklad Coldcard obsahujú funkcionalitu zmazania peňaženky pri zadaní určitého PINu, ktorý je odlišný od vášho štandardného PINu.
Ak vás útočník chce prinútiť zadať PIN, zadáte tento špeciálny PIN a peňaženka sa nenávratne zmaže a treba ju obnoviť znovu zo seedu. O užitočnosti tejto funkcie mám svoje pochybnosti, ale za jej nastavenie nič nedáte.
Jade môžete používať ako zariadenie na jednorázové heslá (Time Based OTP), napríklad také ako podporuje Google Authenticator. Ak si na službe - ako napríklad u poskytovateľa e-mailu alebo sociálnej sieti - nastavíte druhý faktor pomocou authenticatora, zobrazí sa vám QR kód, ktorý môžete načítať aj na vašej peňaženke Jade.
Takto môžete na prihlásenie sa do služby tento jednorázový kód získať aj z Jade, nie len z mobilného zariadenia. To sa môže hodiť v prípade, ak sa vám vybije mobil. Pozor, pri obnove peňaženky zo seedu na inom zariadení o tieto TOTP prídete, takže si nemyslím, že je dobrý nápad mať Jade ako jediné zariadenie, v ktorom máte naskenované tieto TOTP.
Jade je dobrá peňaženka pre Bitcoinových maximalistov, ktorí nemajú veľký budget a chcú využívať dodatočné služby ako airgapped funkcionalitu, používanie peňaženky z mobilného telefónu cez Bluetooth, dočasné peňaženky alebo autorizáciu transakcií pomocou druhého faktora. Taktiež bude užitočná pre ľudí, ktorí sa rozhodli používať sieť Liquid, napríklad kvôli súkromiu alebo nižším poplatkom. Ekosystém okolo peňaženky Jade nie je tak pestrý ako u starších peňaženiek, takže napríklad nemôžete používať Jade na prihlasovanie sa cez SSH, šifrovanie a podpisovanie pomocou GPG a podobne.
Za cenu okolo €60 bez DPH je však dobré zvážiť, či nie je lepšia voľba napríklad peňaženka Trezor Safe 3, ktorá má hardvérový secure element a je len o pár eur drahšia a podporuje viacero kryptomien. Trezor Safe 3 však nie je pohodlné používať z mobilného telefónu, nakoľko nemá batériu a mobilné rozhranie.
Možnosťou je aj používať Trezor Safe 3 na úspory a Jade na bežné platenie spolu s mobilom.
Ako sa rozhodnete závisí od toho, aké máte potreby. Ako Bitcoiner by ste však mali oceniť pestrosť ekosystému a to, že máme na výber z viacerých naozaj dobrých možností.

Juraj Bednár
Som cypherpunker, mám rád slobodu, súkromie, peer to peer technológie a terminálové okná. Skúmam chaotický svet, volatilitu a neistotu, bojujem proti entropii - zakladám firmy, neziskové projekty, robím kurzy a píšem knihy. Som spoluzakladateľ Paralelnej Polis, hackerspace Progressbar, či bug bounty platformy Hacktrophy. Vyštudoval som odbor umelá inteligencia a umelá inteligencia sa vrátila - tak ako som ju nikdy nepoznal. O všetkých týchto skúsenostiach píšem blog.