Jak se vypořádat s jedním z největších kryptoměnových PR fiasek loňského roku? Jak obtížné je skloubení uživatelské přívětivosti a bezpečnosti? O tom mluví technologický šéf společnosti stojící za nejprodávanější hardwarovou peněženkou Charles Guillemet.
Ledger v rámci loňského updatu svého firmwaru uvolnil bezpečnostní funkci pro obnovení zapomenutého seedu (bezpečnostní fráze umožňující obnovu přístupu). Šlo o funkci určenou pro méně sofistikované uživatele, která však vyvolala velmi nepříjemnou odezvu na sociálních sítích.
Služba Ledger Recover rozděluje uživatelův seed na tři zašifrované části a odešle je třetím stranám. Z odeslaných informací lze v případě potřeby v budoucnu rekonstruovat samotný seed. Problémem řešení jsou však zmíněné třetí strany, které mohou informace použít k získání přístupu k celé frázi a tím pádem i uživatelově kryptopeněžence.
Jak si s touhle šlamastykou Ledge poradil? Nejen na to jsme se v rámci letošního ročníku bitcoinové konference BTC Prague ptali Charlese Guillemeta, technologického šéfa hlavní konkurence českého Trezoru, který obor založil.
Čekali jste, že by mohl z krypto komunity nastat proti nové funkci tak výrazný odpor?
Když se v jakémkoli oboru pokoušíte o nějakou inovaci, vždy musíte počítat s určitým odporem. Osobně jsem předpokládal, že mírný nastane odpor ze strany „hardcore“ uživatelů, ale zároveň čekal, že funkci zkrátka nebudou používat, protože je volitelná, a tím to celé hasne.
Jenže pak tu byla vlna na sociálních sítích a v médiích. Tam už bylo hodně zveličování, polopravd a vyloženě poplašných interpretací. Hlavně však proto, že jsme se netrefili do způsobu, jakým produkt komunikovat. Největší část poplašných zpráv pocházela z uvedení na trh, které jsme v téhle formě vůbec neměli udělat.
Došlo poté k nějakým změnám? A jak je vlastně úspěšný teď, po odeznění hlavní kontroverze?
Uživatelé a komunita pochopili, že s produktem samotným ve skutečnosti žádný problém nebyl. Velkou zásluhu na tom má fakt, že jsme pak začali hodně pracovat na jeho větší transparentnosti. Například jsme vydali whitepaper, který do detailu vysvětluje, jak celý proces vzdáleného zálohování seedu funguje.
Také jsme zpřístupnili kód funkcionality jak open source, aby si jej sofistikovanější uživatelé mohli sami projít a ověřit. Mohou se jednoduše podívat na kód a rozhodnout se sami. Myslím, že komunita nakonec pochopila, že problém ve skutečnosti nikdy neexistoval.
Ale zopakuji, co jsem za poslední rok říkal již hodněkrát: není to produkt pro každého. Hardcoroví cypherpunkeři ho možná obejdou obloukem, pro běžné uživatele je ale rozhodně lepší volba než čtyřiadvacet slov napsaných na kusu papíru.
Kolik uživatelů Ledger Recover používá?
To jsou data, která nekomunikujeme.
Vrátím se ještě k jednomu loňskému incidentu. Na závěr loňského roku proběhla médii zpráva o hackerovi, který skrze podstrčený kód v jedné z vašich knihoven ukradl z Ledger peněženek kryptoaktiva za půl milionu dolarů. Jak se to stalo a jak pravděpodobné jsou podobné incidenty do budoucna?
K napadení došlo tak, že se jeden z našich vývojářů stal obětí hackerského útoku a útočník byl následně schopen využít jeho účet k tomu, že odeslal do Ledger Connect škodlivou aktualizaci.
Ledger Connect je kus softwaru napsaný v JavaScriptu, který je vložen na některé webové stránky. Škodlivá verze kódu žádala uživatele, aby podepsali škodlivou transakci. Někteří uživatelé to udělali a o prostředky přišli, nebyla to ale dohromady velká částka a všem uživatelům, kterých se to týkalo, uhradíme náklady.
Tady bych to ale otočil. Uživatel musel škodlivou transakci podepsat – a mohl si na peněžence ověřit, že adresa nesedí. To je přesně důvod, proč děláme hardwarové peněženky. Právě ty totiž fungují jako poslední záchytný bod, když vám počítač nebo webovou stránku infikuje nějaký malware. Můžete si na ní snadno ověřit, co podepisujete. A dokud ověřujete, žádný problém se nekoná.
Samotný útok jsme odhalili velmi rychle. Trvalo to méně než pět hodin. Útok jsme zcela zastavili a ani ztráta nakonec nebyla příliš vysoká. Když se podíváte na data forenzních blockchainových společností, jsou z blockchainových aplikací či burz denně zcizeny miliony dolarů v kryptoměnách. Obzvláště zranitelné jsou hlavně meziblockchainové bridge.
Chybám se nevyhne v bezpečnosti nikdo, jde ale o to, jak k nim přistoupíte. Musíte být pokorní. Musíte být rychlí. Musíte reagovat.
Pracujete na nějaké kryptopeněžence i pro náročné uživatele? Chystá se například nějaká air-gapped peněženka?
Záleží na tom, čemu tak říkáte. Zařízení, které držím v ruce (nová hardwarová peněženka Ledger Stax, pozn. red.), je podle mého názoru air-gapped. Panuje myslím trochu nedorozumění, co má air-gapped přesně znamenat.
Když chcete udělat transakci, musíte být nějak připojeni k internetu. Musíte nejprve synchronizovat svůj účet a pak potřebujete celou transakci podepsat. To v našem případě znamená poslat ji tím či oním způsobem do hardwarové peněženky. Pak budete muset tuto podepsanou transakci vzít a poslat zpět na internet.
Toto spojení mezi peněženkou a internetem prostě potřebujete. Je tímto propojením USB kabel, NFC, QR kód? Pokaždé je to jiná spojka s internetem, ale vždy prostě nějakou potřebujete.
Peněženka, kterou mám v ruce, je proto podle mne air-gapped. Neobsahuje žádné přímé připojení k internetu, uvnitř zařízení nenajdete žádný koncový TCP IP bod. Je tedy stejně air-gapped, jako byste používali QR kód nebo třeba SD kartu.
Na začátku rozhovoru jste zmínil open source. Co si myslíte o open sourcingu bezpečnostních prvků, na kterých hardwarové peněženky stojí a padají, tedy secure element čipů?
To je dobrá otázka. Především musím říci, že jsem velkým fanouškem open source a pevně věřím, že přináší spoustu dobrých věcí, například možnost veřejného auditu kódu.
Mít otevřený zdrojový kód ještě nezaručuje bezpečnost, pouze dává uživatelům možnost si kód ověřit. Ale pokud nikdo nic neověřuje, je to falešný pocit bezpečí.
Osobně v open source věřím, ale jako firma si myslíme, že to nejlepší, co můžete pro bezpečnost svého produktu udělat, je vzít nejlepší třetí stranu, která je na trhu k dispozici, a dobře jí zaplatit za audit vašeho kódu. My například takové audity provádíme často.
Secure Element čip
Zkráceně SE čip dokáže ukládat citlivá data a spouštět zabezpečené aplikace. Čip chrání před útoky malwaru na hostitelské systémy, jako je například operační systém zařízení. V průmyslu se často využívá jako alternativa pro ověřování, k digitálním podpisům, mobilním platbám nebo třeba správě životního cyklu.
A teď se konečně dostáváme také k otevřenému hardwaru a otevřeným secure element čipům. Je tu celá řada problémů: když máte ověřený zdrojový kód, můžete ho pro klid duše nejdřív spustit lokálně v nějakém izolovaném prostředí.
U hardwaru s otevřeným zdrojovým kódem si sice můžete přečíst, můžete si ověřit kód, na kterém je údajně postaven, ale když držíte v ruce už hotový hardwarový obvod, nemáte naprosto žádnou záruku, že obsahuje kód, který jste předtím zkontrolovali. To je první problém.
Druhý se týká samotných secure element čipů, kdy implementace bezpečných prvků je takový hardwarový doktorát. Je to zkrátka něco nesmírně obtížného, což vím z první ruky – pracoval jsem v oblasti asi rok a půl.
Díky tomu mám stále na paměti, že za miniaturními SE čipy leží celé průmyslové odvětví, které za posledních čtyřicet let utratilo miliardy dolarů, aby vytvořilo skutečně bezpečný secure element, který dnes používáme všude, kde je například potřeba bezpečně ověřit identitu. A tento průmysl nikdy neusnul na vavřínech, takže neustále zvyšuje bezpečnostní laťku.
I když dnes máte velmi dobrý tým a jste dobře financováni, stále stojíte proti těmto čtyřiceti letům, miliardám dolarů investic a neustálé inovaci.
To mě přivádí k jiné otázce: je vůbec možné dokonale zabezpečit hardwarovou krypto peněženku před fyzickými útoky?
Neexistuje nic takového jako dokonale bezpečná hardwarová peněženka, pokud k ní útočník získá skutečný fyzický přístup. Kdo něco takového tvrdí, je šarlatán. Co se snažíme dělat my, je zařídit, aby byla co nejbezpečnější a vydržela takový útok co nejdéle a vy jste měli možnost si v mezičase prostředky převést jinam.
Dalším problémem je, že při zachování dobré uživatelské zkušenosti neexistuje nic takového jako dokonale bezpečná aplikace. Co se týče bezpečnosti z pohledu vývojáře, je třeba být pokorný a mít neustále na paměti, že nic není statické.
Na světě neexistuje nic, co by se nikdy nedalo hacknout, vždy je to jen otázka času a peněz. My se snažíme nasadit laťku dostatečně vysoko, aby v případě, že někdo vaše zařízení ukradne, bude pro něj získání vašeho tajemství velmi obtížné, technicky ale nelze zařídit, aby to bylo nemožné.
Jaká jsou hlavní rizika, pokud se někdo zmocní hardwarové peněženky fyzicky?
V první řadě se může pokusit získat tajemství z obvodu, ale právě díky přítomnosti certifikovaného secure element čipů je to velmi obtížné. Existuje spousta protiopatření, zmírňujících fyzické útoky.
Jsou tu samozřejmě i útoky postranními kanály, které nejdou hlavou přímo proti zdi a namísto toho se pokoušejí o zneužití informací, unikajících přímo z fyzické implementace systému za běhu kryptografického algoritmu, ale pro ty platí totéž. Hodně z nich známe a máme proti nim protiopatření na úrovni SE čipu.
Kde podle vás leží největší riziko pro kryptoměnovou selfcustody (situace, kdy si uživatel zpravuje krypto sám, pozn. red.)? Je to složitost, útoky hackerů a škodlivý software, nebo přituhující regulace?
Složitost je podle mě jedna z těch skutečně významných. Myslím však, že Ledger, Trezor a další velcí výrobci hardwarových peněženek odvádějí opravdu masivní kus práce, aby na poli uživatelské zkušenosti odstranili třecí plochy.
Malware je velkou tradiční hrozbou, a právě důvodem, proč je hardwarová peněženka nejlepší cestou pro bezpečnou úschovu krypta. Pokud použijete peněženku softwarovou, nejste před škodlivým softwarem nikdy zcela v bezpečí.
Je pravda, že regulace ve světě přituhuje, ale je opravdu obtížné zabránit uživatelům vlastnit soukromé klíče.
Držíte v ruce novou peněženku Ledger Stax. Co umí, kolik bude stát a kdy se objeví volně na trhu?
Je to taková trochu tlustší kreditní karta s obrazovkou a rozhraními BLE a USB-C. Máme také NFC, ale zatím ho aktivně nepoužíváme. Do budoucna bude zajímavé například pro lightning platby.
Zatím plníme pouze předobjednávky, ty byly pro Evropu před rokem za tři sta eur. Doskladnění bude pravděpodobně během léta, ale již s novou cenou.
Koncepčně jsme u peněženky vycházeli ze stejné architektury, jako u modelů Nano. Mám tím na mysli secure element pro generování podpisových klíčů, náš operační systém, který běží uvnitř bezpečnostního čipu, a různé aplikace běžící nad ním. Bezpečnostní prvek řídí také obrazovku, abyste neměli žádnou rizikovou vrstvu uprostřed.
Novinkou je dotykový vstup na obrazovce, takže příkazy zadáváte přímo na ní a nepotřebujete hardwarové tlačítko. Obrazovka samotná využívá elektronický papír podobně jako čtečky knih, takže vydrží týdny bez dobití, a oproti předchozím modelům je větší.
Jak coby firma pracujete se soukromím vašich klientů? Co by se například stalo, kdyby za vámi přišla nějaká vládní agentura nebo orgány činné v trestním řízení a požadovaly informace?
Zatím se to nestalo. Klíčová je v tomto ohledu prevence – snažíme se co nejvíce minimalizovat údaje o našich uživatelích. Když si zařízení objednáte, potřebujeme vaše údaje pro doručení. V tomto okamžiku je tedy shromažďujeme, ale jakmile data nepotřebujeme, okamžitě je z databáze mažeme. Z našeho pohledu také nelze rozlišit jedno zařízení od druhého.
Máte nějaké otevřené rozhraní pro vývojáře aplikací třetích stran?
Ano, jako vývojář můžete dokonce rovnou použít naše SDK a vytvořit si vlastní aplikaci. Většina těch, které podporujeme, což je dnes asi dvě stě různých blockchainů a protokolů, byla napsána komunitou. My píšeme a udržujeme kód jen pro bitcoin a Ethereum. Všechny ostatní aplikace vytvořila komunita.
Máme také vývojářský portál a tak dále. Funguje to tak, že jakmile je aplikace hotová, vývojáři nám ji předloží. My následně přezkoumáváme, jestli je dostatečně bezpečná, a když je vše v pořádku, podepíšeme ji a objeví se v aplikaci Ledger Live, takže si ji uživatel může stáhnout.