Podobné články

Proč je Multisig nezbytný pro každého, kdo věří v Bitcoin

Každý, kdo drží netriviální množství bitcoinů, by měl zvážit zabezpečení více podpisů, včetně toho, jak zmírnit potenciální útoky.

Toto je názorový článek Ananta Tapadii, počítačového inženýra a přispěvatele do projektů Bitcoin Self-Custody Bitcoin Keeper a Hexa Wallet.

Zabezpečení více podpisů neboli „multisig“ nabízí jiný soubor bezpečnostních záruk než řešení s jedním podpisem (singlesig), které to nedokáže. I když se domnívám, že singlesig je skvělou formou úschovy, pokud člověk s bitcoiny teprve začíná nebo spravuje malé částky, podle mého názoru by měl každý, kdo drží netriviální množství bitcoinů dlouhodobě, posoudit možnost multisig

Defining Multisig

Multisig tří z pěti se vzorovými podepisovacími zařízeními, řízený koordinačním softwarem

Než předložím své argumenty ve prospěch jednoho typu oproti druhému, je nezbytné pochopit, co máme na mysli pod pojmem „peněženka“. Multisig peněženka je v aplikacích, jako je Bitcoin Keeper a Blue Wallet, označována jako „trezor“, zatímco někteří ji označují také jako „koordinátor“ nebo „koordinační software“ Je to v podstatě peněženka, která může komunikovat s více podepisovacími zařízeními a koordinovat mezi nimi podepisování transakcí (obvykle pomocí formátu PSBT). Pro srovnání, peněženka singlesig hovoří pouze s jedním podepisovacím zařízením. Singlesig peněženka je často také podepisujícím subjektem, což znamená, že klíče jsou horké.

Takže plocha útoku vystavená kvůli singlesig peněžence a trezoru je podobná, protože obě mají podobné role. Existence podepisovacího zařízení v obou případech zvyšuje bezpečnost a zavádí nové plochy útoku.

Multisig se často označuje jako „m-of-n“, kde k podepsání transakce potřebujete „m klíčů z n“. Výstupní deskriptor neboli bitcoin secure multisig setup (BSMS) je formát, který se používá k definování konfigurace multisig. Lze jej použít k opětovnému vytvoření nastavení na jiných koordinátorech nebo k registraci multisig u podepisovacích zařízení.

Úvahy o úschově bitcoinů

Minimalizace důvěryhodnosti

Zřejmou výhodou existence více podepisujících osob je omezení jednotlivých bodů selhání a zvýšení redundance nastavení. S pomocí níže uvedených běžných příkladů útoků na multisig, které jsou součástí tohoto dokumentu, vysvětlím, proč jsou tyto útoky použitelné i při opatrování singlesig. S multisigem však můžete minimalizovat důvěru v jeden subjekt, protože se na něm podílí více subjektů

Provozní náročnost

Nastavení a používání multisigů může být provozně časově náročnější a obsahovat více úskalí, pokud není provedeno správně. Proto doporučuji, aby uživatelé zvažovali multisig pouze pro dlouhodobý HODLing, kde se nepředpokládají pravidelné transakce.

Náklady na zřízení

Robustní multisig s více dodavateli (například s třemi z pěti custody) lze pořídit za 250 až 600 USD. Pokud tedy máte kolem 0,5 BTC (v době psaní tohoto článku asi 11 000 USD), není špatný nápad utratit za jeho zabezpečení méně než 10 %, protože hodnota tohoto bitcoinu se může velmi rychle zhodnotit

Snižují se i náklady na podepisovací zařízení, např. na Tapsigner od společnosti Coinkite. Navíc použití nehardwarových softwarových klíčů dává možnost nulových nákladů, ale nedoporučuje se je používat pro více než jeden klíč v multisig nastavení.“

Zmírnění běžných útoků

Nyní se podívám na některé útoky, ke kterým může dojít, pokud se koordinátor opatrovnických klíčů pokusí jednat ve zlém. Poté vysvětlím, jak se to neliší od hrozeb v singlesigovém nastavení a co mohou multisigové peněženky udělat pro zmírnění těchto rizik. Konečná odpovědnost nevyhnutelně leží na uživateli, který musí zajistit, aby přijal správná opatření, jak je navrženo níže.

Špatná adresa pro příjem

Nejpřímější útok, který nastíním, je ten, kdy se uživatel pokusí přijmout finanční prostředky a aplikace koordinátora místo toho zobrazí adresu útočníka. V takových scénářích by software mohl stále ukazovat, že prostředky byly přijaty tam, kde uživatel zamýšlel. Tento útok je teoreticky možný s jakoukoli singlesig peněženkou, protože uživatel spoléhá na to, že mu peněženka vygeneruje adresu. Neexistuje žádný způsob, jak ručně odvodit adresy z 12- nebo 24slovné fráze pro obnovení.

SeedSigner zobrazující adresu pro příjem bitcoinů ve formě QR

V případě multisig peněženky lze tento problém zmírnit kontrolou adresy na podepisovacích zařízeních, kde byl multisig zaregistrován. Můžete také použít jiný koordinační software, importovat stejnou konfiguraci a zkontrolovat adresu tímto způsobem.

Nahrazení adresy pro odeslání

Stejně jako v předchozím scénáři útoku může multisig koordinátor při sestavování PSBT nahradit adresu, na kterou se snažíte odeslat prostředky. V případě běžné singlesig peněženky se situace nebude lišit

Účetní kniha zobrazující adresu odeslání pro potvrzení

Pro zmírnění tohoto rizika se uživateli doporučuje vždy zkontrolovat adresu na podepisovacích zařízeních. Protože podepisovací zařízení podepisují transakci obsahující adresu příjemce (ve formátu PSBT), zobrazí adresu, kterou podepisují. Pokud nedojde k nějakému spolčení mezi koordinátorovou aplikací a podepisovacími zařízeními, je to vynikající způsob, jak minimalizovat důvěru v kterékoli z nich.

Změna adresy změny

Méně zřejmý je útok, při kterém aplikace koordinátora nahradí adresu změny ve vaší transakci. To znamená, že změna z transakce půjde na adresu útočníka. Na rozdíl od adresy odeslání uživatel nemusí při odesílání peněz kontrolovat adresu změny, takže tento útok je méně zřejmý. Pokud jde o singlesigové řešení, opět není žádný rozdíl

Karta Coldcard může zaregistrovat multisig a uložit údaje pro ověření

Zde je registrace multisig na podepisovacích zařízeních velmi potřebná. Pokud je registrace provedena, podepisovací zařízení transakci nepodepíše, pokud neidentifikuje adresu změny

Změna registrace

Protože koordinátor koordinuje i krok registrace, může být zaregistrován jiný multisig, takže útočník ovládá „n“ nebo více klíčů. V takovém případě nebude podepisovací zařízení schopno správně identifikovat adresu příjmu nebo změnit adresu. Uživatel uvidí stejnou (útočníkovu) adresu příjmu i na podepisovacím zařízení a podepisovací zařízení bude změnu adresy vydávat za správnou, protože nemá možnost potvrdit, zda byly ostatní spolupodepisující osoby změněny, nebo ne.

Multisig tří z pěti se vzorovými podepisovacími zařízeními, kde tři drží registraci multisig

Proto se doporučuje, aby v nastavení bylo „n“ registrovaných zařízení. Kromě toho při registraci potvrdíte údaje o nastavení na všech takových zařízeních. Dalším způsobem, jak ověřit správnou registraci, je nastavit stejný multisig na jiném softwaru koordinátoru a zkontrolovat, zda se zobrazují přesné údaje.

Můžete tedy mít multisig s jedním zařízením pro podepisování trezoru registrace a dvěma slepými podepisovači. Stejný postup zopakujte s jiným koordinátorem. Nyní zkontrolujte konfiguraci na obou koordinátorech a podepisovacím zařízení s multisigem. Můžete přidat další koordinátory, abyste vyloučili tajnou dohodu.

Útok výkupným

Tento typ útoku je podobný výše uvedenému, ale útočník ovládá méně než „n“ klíčů, takže nemůže kontrolovat finanční prostředky. Ale v situaci, kdy ztratíte některý z klíčů, vás může útočník požadovat výkupné, protože nyní nemáte potřebné minimální kvorum. Tento útok lze provést také vložením klíče, kdy jsou do nastavení přidáni další spolupodepisovatelé. To má stejný účinek jako nahrazení některých signatářů.

A Foundation Devices Passport potvrzující vícenásobnou registraci

Šance na tyto útoky opět sníží kontrola údajů o spolupodepisujících zařízeních na více koordinátorech potřebných k registraci

Využití multisig úschovy pro váš Bitcoin

Zopakujme: Mít minimální kvorum podepisujících zařízení registrovaných v multisig a kontrolovat údaje o transakcích (když už je musíte provést) by bylo dobrým pravidlem při použití multisig.

Při kontrole adres nebo detailů nastavení trezoru nekontrolujte pouze začátek a konec řetězce, protože útočník může mít podobně vypadající řetězec

Kontrola, zda je aplikace pro úschovu otevřeným zdrojem, a kontrola jejího kódu (pokud můžete) je pro některé také dobrý nápad. Podpora běžných standardů, jako jsou BSMS a PSBT, zajišťuje, že nastavení multisig nebo transakce lze přenést do jiných aplikací pro ověření.

Také se domnívám, že otestováním nastavení se nikdy nic nezkazí. Jakmile budete mít multisig připravený, zkopírujte nastavení na více koordinátorech. Přijměte malou částku v jedné aplikaci a část z ní odešlete z jiné. Po každém kroku zkontrolujte, zda se zůstatky náležitě projevily na všech koordinátorech.

Duplikování nastavení multisig na jiném koordinačním softwaru

Odkazy a další čtení:

  • „10x bezpečnostní průvodce Bitcoinem“
  • „Jak jsou téměř všechna osobní hardwarová nastavení multisig peněženek nezabezpečená“

Tento příspěvek napsal Anant Tapadia. Vyjádřené názory jsou výhradně jeho vlastní a nemusí nutně odrážet názory společnosti BTC Inc. nebo časopisu Bitcoin Magazine.

Share on facebook
Facebook
Share on twitter
Twitter
Share on linkedin
LinkedIn

Diskuze

{{ reviewsTotal }} Review
{{ reviewsTotal }} Reviews
{{ options.labels.newReviewButton }}
{{ userData.canReview.message }}