Multi-signature (multi-sig) peňaženky predstavujú pokročilé bezpečnostné riešenie vo svete bitcoinu. Na rozdiel od bežných peňaženiek s jedným podpisom ponúkajú multi-sig peňaženky extra vrstvu ochrany tým, že na schválenie transakcie vyžadujú viac podpisov. Tento článok vysvetľuje, ako multi-sig peňaženky fungujú, aké sú ich výhody a aké je ich miesto v spektre bitcoinovej úschovy.
Keď príde reč na zabezpečenie bitcoinov, máte k dispozícii niekoľko možností. Multi-signature (multi-sig) peňaženky predstavujú pokročilý prístup, ktorý ponúka výrazne lepšiu ochranu v porovnaní s tradičnými peňaženkami s jedným podpisom (single-sig). Aj keď vyžadujú viac nastavení a porozumení, ich bezpečnostné výhody z nich robia dôležitý nástroj, ktorý je na ochranu vašich bitcoinov dobré zvážiť.
Tento článok je prvý zo série o multi-sigu, v ktorej vás prevedieme pochopením a implementáciou multi-sig peňaženiek v troch častiach:
Termín „peňaženka“ môže byť v bitcoine mätúci, pretože sa používa na opis niekoľkých rôznych, ale súvisiacich konceptov. Poďme to rozobrať, aby sme pochopili, čo bitcoinová peňaženka skutočne je a ako rôzne komponenty spolupracujú.
V tom najzákladnejšom poňatí je bitcoinová peňaženka sada pravidiel, ktoré určujú, ako je možné prostriedky minúť. Tieto pravidlá sú zakódované do každej adresy peňaženky, ktorú vygenerujete. Keď dostanete bitcoin na ktorúkoľvek z týchto adries, mince je možné minúť iba vtedy, ak sú splnené všetky pravidlá – tiež nazývané „podmienky míňania“ (spending conditions). Najdôležitejším pravidlom je obvykle požiadavka na podpis: kto má povolenie minúť prostriedky a koľko podpisov je potrebných?
Aby sme však tieto pravidlá uviedli do praxe, potrebujeme niekoľko komponentov. Poďme sa na ne pozrieť jednu po druhej.
Niektorí ľudia označujú svoj súkromný kľúč ako svoju peňaženku, a svojím spôsobom majú pravdu. Súkromný kľúč je to, čo preukazuje vlastníctvo a umožňuje vám minúť bitcoin. Môžete si to predstaviť ako kľúč k trezoru – bez neho nemôžete pristupovať k svojim prostriedkom. Keď ľudia hovoria „not your keys, not your coins“, odkazujú práve na toto: iba osoba držiaca kľúč má plnú kontrolu nad prostriedkami.
Iní ľudia nazývajú svojou „peňaženkou“ svoje hardvérové podpisovacie zariadenie (ako Trezor alebo Ledger). A svojim spôsobom majú pravdu. Tieto zariadenia sú špecializované nástroje, ktoré bezpečne ukladajú váš súkromný kľúč a používajú ho na vytváranie podpisov, keď chcete minúť bitcoin. Predstavte si ich ako sofistikovaného strážcu kľúčov, ktorý nielen ukladá váš kľúč, ale tiež vám pomáha ho bezpečne používať a nikdy ho nikomu neukazuje.
Keď ľudia hovoria o svojej peňaženkovej aplikácii ako Trezor Suite, Sparrow alebo BlueWallet, odkazujú na softvérovú aplikáciu, ktorá vám pomáha komunikovať s bitcoinovou sieťou. Táto aplikácia ukazuje váš zostatok, pomáha vám vytvárať transakcie, komunikuje s vašimi hardvérovými zariadeniami a s bitcoinovou sieťou.
V skutočnosti je funkčná bitcoin peňaženka kombináciou všetkých týchto prvkov pracujúcich spoločne – pravidiel, ktoré riadia míňanie, súkromných kľúčov, ktoré umožňujú podpisovanie, zariadení, ktoré tieto kľúče zabezpečujú, a softvéru, ktorý to všetko prepája.
Pochopenie týchto rozdielov sa stáva obzvlášť dôležitým pri nastavovaní multi-sig peňaženky, pretože budete pracovať s viacerými kľúčmi, potenciálne viacerými zariadeniami a špecializovaným softvérom, ktorý dokáže zvládnuť zložitejšie pravidlá multi-sig transakcií.
Súkromný kľúč je v bitcoine základným prvkom, ktorý preukazuje vlastníctvo prostriedkov. Ak ste niekedy nastavovali hardvérovú peňaženku, už ste so súkromným kľúčom pracovali – je reprezentovaný tým zoznamom 12 alebo 24 slov (nazývaným seed fráza alebo iba seed), ktorý ste si počas nastavenia starostlivo zapísali.
Súkromný kľúč má úplne zásadnú funkciu: vytvára digitálne podpisy, ktoré sú potrebné na utratenie bitcoinu. Predstavte si to ako jedinečný, nefalšovateľný podpis, ktorý by ste použili na autorizáciu bankového prevodu, ale matematicky dokonalý a nemožný replikovať bez súkromného kľúča.
Zatiaľ čo súkromné kľúče kontrolujú míňanie, verejné kľúče umožňujú prijímanie. Každý verejný kľúč je matematicky odvodený zo súkromného kľúča jednosmerným procesom, čo znamená, že:
Predstavte si svoj verejný kľúč ako číslo účtu v tradičnej banke – je bezpečné ho zdieľať a používa sa na generovanie bitcoinových adries na prijímanie prostriedkov. Keď chcete prijať bitcoin, vaša peňaženková aplikácia vygeneruje novú adresu z vášho verejného kľúča.
XPUB (rozšírený verejný kľúč) je funkcia, ktorá robí bitcoinové peňaženky súkromnejšie a pohodlnejšie na používanie. Predstavte si XPUB ako hlavnú šablónu, ktorá môže generovať nekonečnú sériu prijímacích adries, všetky kontrolované rovnakým súkromným kľúčom.
Keď vás vaša peňaženková aplikácia žiada, či chcete vygenerovať novú adresu na prijímanie bitcoinu, používa na vytvorenie tejto adresy váš XPUB. Preto môžete vytvárať nové adresy pre každú transakciu (čo je dobré pre súkromie), zatiaľ čo stále kontrolujete všetky prostriedky rovnakým súkromným kľúčom.
Hardvérové podpisovacie zariadenie (bežne nazývané „hardvérová peňaženka“) je špecializované vybavenie navrhnuté s jedným primárnym účelom: ukladať súkromné kľúče a vytvárať podpisy v bezpečnom prostredí. Tieto zariadenia nikdy nevystavujú vaše súkromné kľúče peňaženkovej aplikácii, ktorú používate, čo je kľúčové pre zabezpečenie vášho bitcoinu. Takmer všetky hardvérové podpisovacie zariadenia sa tiež používajú na generovanie nových súkromných kľúčov.
Zatiaľ čo tieto zariadenia sa najčastejšie používajú so single-sig peňaženkami, sú rovnako dôležité v multi-sig nastaveniach. Kľúčový rozdiel je v tom, že v multi-sigu:
Napríklad v 2-zo-3 multi-sig peňaženke môžete mať tri hardvérové zariadenia od rôznych výrobcov, každé držiace jeden kľúč. To nielen rozdeľuje dôveru medzi viacero zariadení, ale tiež poskytuje redundanciu – ak jedno zariadenie zlyhá, stále môžete pristupovať k svojim prostriedkom pomocou zvyšných dvoch.
Bitcoinové peňaženky je možné kategorizovať podľa toho, koľko podpisov vyžadujú na autorizáciu transakcie. Single-sig peňaženky vyžadujú jeden podpis, zatiaľ čo multi-sig peňaženky vyžadujú viac podpisov z vopred definovaného počtu kľúčov.
Single-signature (single-sig) peňaženky vyžadujú na autorizáciu transakcií iba jeden súkromný kľúč. To je najbežnejší typ peňaženky a to, s čím väčšina používateľov bitcoinu začína. Keď používate hardvérovú peňaženku ako Trezor alebo Ledger samostatne, používate single-sig peňaženku. Aj keď je toto nastavenie jednoduché na použitie a pochopenie, vytvára jediný bod zlyhania – ak niekto získa prístup k vášmu kľúču, môže minúť všetky vaše prostriedky. Podobne, ak stratíte prístup k tomuto kľúču, stratíte prístup ku všetkým svojim prostriedkom.
Multi-signature (multi-sig) peňaženky vyžadujú na autorizáciu transakcií viac súkromných kľúčov. Sú popisované vo formáte „MzN“, kde M je počet požadovaných podpisov z celkového počtu N kľúčov. Napríklad v nastavení „2-zo-3“ potrebujete na utratenie prostriedkov podpisy od dvoch kľúčov z troch. To rozdeľuje bezpečnostné riziko medzi viac bodov, čo sťažuje prípadnému útočníkovi možnosť kompromitovať vašu peňaženku. Tiež to poskytuje lepšiu odolnosť proti chybám, ktorá vás chráni pred vlastnými chybami.
Teraz, keď máme jasno v rôznych komponentoch bitcoin peňaženky, pozrime sa, ako spolupracujú, keď používate svoju peňaženku. V režime single-sig sú procesy jednoduchšie ako pri multi-sig, ale základná štruktúra je podobná.
V jadre sa multi-sig peňaženka stále skladá z pravidiel o tom, ako je možné prostriedky minúť. Pravidlo je jednoduché: na míňanie akýchkoľvek prostriedkov je vyžadovaný jeden podpis od správneho súkromného kľúča. Keď vaša peňaženka generuje bitcoinové adresy, toto pravidlo je do nich vložené. Bitcoin zaslaný na ktorúkoľvek z týchto adries je možné presunúť iba s platným podpisom z vášho súkromného kľúča.
V single-sig nastavení máte iba jeden súkromný kľúč, typicky uložený v hardvérovom podpisovacom zariadení ako Trezor alebo Ledger. Zariadenie funguje ako bezpečný trezor pre tento kľúč. Keď chcete minúť bitcoin, zariadenie používa kľúč na vytvorenie podpisu, zatiaľ čo samotný kľúč zostáva bezpečne chránený vo vnútri jeho zabezpečenej pamäte.
Predstavte si to ako bezpečnostného strážnika pre trezor, ktorý môže podpisovať transakcie bez toho, aby musel svoj kľúč vybrať z bezpečného úložiska. Vďaka tomu, aj keď by niekto odpočúval komunikáciu s trezorom, nemôže získať samotný kľúč.
Vaša peňaženková aplikácia (ako Ledger Live, Trezor Suite alebo Sparrow Wallet) spravuje interakciu medzi vami a vašim hardvérovým zariadením. Vykonáva niekoľko dôležitých funkcií:
Pozrime sa, ako to funguje v detaile, keď chcete minúť bitcoin:
Toto je oveľa jednoduchšie ako pri multi-sig transakciách. Potrebujete iba jedno zariadenie na podpis, nie je potrebné koordinovať medzi viacerými kľúčmi a peňaženkový softvér nemusí spravovať čiastočné podpisy alebo komplexné podpisové konfigurácie.
Krása tohto systému spočíva v tom, že každá súčiastka hrá v procese svoju špecializovanú úlohu. Súkromné kľúče nikdy neopúšťajú svoje bezpečné zariadenia, pravidlá sú vynucované ako zariadeniami, tak bitcoinovou sieťou, a softvér koordinuje všetko bez toho, aby mal kedykoľvek prístup k citlivým informáciám o súkromnom kľúči.
Bezpečnosť takéhoto nastavenia úplne spočíva v ochrane jediného súkromného kľúča a jeho hardvérového zariadenia. To je ako jeho sila (jednoduchosť), tak aj jeho slabina (jediný bod zlyhania). Ak niekto získa prístup k vášmu zariadeniu a jeho PINu, alebo ak stratíte zariadenie a nemáte svoju záložnú frázu, stratili ste prístup ku všetkým svojim prostriedkom. Preto mnoho ľudí volí bezpečnejší variant s viacerými podpismi, aj keď je zložitejší.
V multi-sig peňaženke sa interakcia medzi jednotlivými komponentmi stáva zložitejšou, ale funguje v podstate rovnako ako pri single-sig. Použime 2-z-3 multi-sig peňaženku ako príklad.
Na rozdiel od single-sig adries, ktoré vyžadujú jeden podpis, multi-sig adresy obsahujú zložitejšie podmienky míňania. V nastavení 2-z-3 bitcoinová sieť prijme iba transakcie, ktoré poskytujú platné podpisy od akýchkoľvek dvoch z troch určených kľúčov.
Namiesto spoliehania sa na jeden jediný kľúč rozdeľuje nastavenie 2-z-3 riziko medzi tri hardvérové podpisovacie zariadenia. To vytvára redundanciu pri zachovaní bezpečnostných výhod hardvérovej ochrany – každé zariadenie stále bezpečne uchováva svoj súkromný kľúč a generuje podpisy bez vystavenia samotného kľúča.
Peňaženková aplikácia rieši zvýšenú zložitosť v multi-sig nastavení prostredníctvom deskriptora peňaženky. Deskriptor je technický dokument, ktorý obsahuje pravidlá peňaženky a všetky verejné kľúče. Deskriptorom sa budeme zaoberať podrobnejšie v druhom článku v sekcii o zálohovaní.
Okrem základných funkcií generovania adries a vytvárania transakcií musí softvér v rámci multi-sigu:
Multi-sig transakcia pridáva niekoľko krokov k základnému single-sig procesu:
Tento distribuovaný prístup eliminuje jednotlivé body zlyhania pri zachovaní bezpečnostných výhod hardvérovej ochrany kľúčov. Zvýšená zložitosť v nastavení a používaní je vyvážená výrazne zvýšenou bezpečnosťou a redundanciou.
Od jednoduchých peňaženiek po komplexné bezpečnostné systémy existuje viacero spôsobov, ako chrániť váš bitcoin. Aj keď sa tento sprievodca zameriava na samostatne spravované nastavenia, preskúmajme spektrum riešení úschovy pre poskytnutie kontextu.
Najpriamočiarejším prístupom je štandardná peňaženka s jedným podpisom, bežne používaná nováčikmi a tými s menšími prostriedkami. Existujú však spôsoby, ako zvýšiť bezpečnosť nad rámec základného nastavenia.
Pridanie prístupovej frázy (passphrase) posilňuje bezpečnosť akejkoľvek peňaženky tým, že vyžaduje ďalšiu vrstvu overenia nad rámec súkromného kľúča. To efektívne vytvára nový súkromný kľúč odvodený z vášho pôvodného kľúča plus prístupovej frázy.
Rovnako ako mať kľúč aj PIN k svojmu bankovému účtu, tento dvojfaktorový prístup znamená, že útočník by pre prístup k vašim prostriedkom potreboval ako vašu seed frázu, tak vašu prístupovú frázu. Túto metódu môžete kombinovať s ďalšími bezpečnostnými opatreniami, vrátane multi-sigu, pre dodatočnú ochranu.
To vytvára niekoľko bezpečnostných výhod:
Používanie peňaženky s prístupovou frázou však vyžaduje zvážiť niekoľko dôležitých vecí:
Bežným omylom je, že Shamir Secret Sharing (alebo Shamir Backup) je podobný multi-sig peňaženke. Zatiaľ čo oba zahŕňajú viacero súčastí, slúžia fundamentálne odlišným účelom.
Shamir backup je:
Z obrázku vyššie sú zrejmé rozdiely medzi Shamir zálohami a multi-sigom:
Spôsob, akým štruktúrujete svoje multi-signatúrne nastavenia, závisí hlavne od toho, koľko kontroly chcete udržať a koľko asistencie potrebujete. Aj keď sa tento článok bude zameriavať na plne samo-spravované nastavenia, stále je cenné poskytnúť prehľad rôznych možností naprieč spektrom úschovy.
Tento prístup vám dáva úplnú kontrolu a súkromie, ale vyžaduje najviac technických znalostí a starostlivosti.
Tento model distribuuje vlastníctvo kľúčov medzi vás a profesionálnych poskytovateľov úschovy, ponúkajúci rovnováhu medzi bezpečnosťou a pohodlím. Je zameraný primárne na jednotlivcov s veľkým majetkom či organizácie, ktoré držia veľa bitcoinov a/alebo potrebujú robustné procesy správy prostriedkov.
Rastúce množstvo spoločností ponúka kolaboratívne služby úschovy s rôznymi funkciami a prístupmi. Ide o firmy ako Casa, Unchained Capital, Nunchuk, Bitcoin Keeper alebo Liana. Každá z týchto služieb má rôzne nastavené multi-sig riešenia.
Každé riešenie bitcoinovej úschovy ponúka iný pomer medzi bezpečnosťou, použiteľnosťou a nezávislosťou. Poďme si porovnať výhody a nevýhody jednotlivých prístupov, aby ste mohli vybrať ten najvhodnejší.
Porovnanie identifikuje päť základných aspektov riešenia úschovy:
Pri výbere riešení bitcoinovej úschovy je dôležité zvážiť všetky uvedené aspekty, ale tiež vziať do úvahy niekoľko dôležitých poznámok.
Skóre predstavujú relatívne porovnanie skôr ako absolútne meranie. Sú určené na zvýraznenie všeobecných kompromisov medzi rôznymi prístupmi, nie na poskytnutie definitívnych hodnotení. Rôzne implementácie rovnakého typu riešenia sa môžu významne líšiť v kvalite a charakteristikách.
Dôležitosť každej dimenzie sa významne líši podľa individuálnych okolností. Napríklad:
Spravidla neexistuje univerzálne „najlepšie“ riešenie – optimálna voľba závisí od vašich špecifických potrieb, technických znalostí, bezpečnostných rizík a spôsobu používania. Cieľom je nájsť správnu rovnováhu týchto charakteristík pre vašu situáciu.
V druhej časti tejto série sa ponoríme do praktickej implementácie multi-signature peňaženiek – od ich vytvorenia a postupov zálohovania až po každodenné operácie a osvedčené postupy.
Michael Haase
Jsem produktový designér v Trezoru a přispívám do open source ekosystému Bitcoinu prostřednictvím různých iniciativ. Jako příjemce grantu od Human Rights Foundation se podílím na návrhu uživatelského rozhraní aplikace Bitcoin Core. S podporou grantu od Spiralu jsem vytvořil rozsáhlé referenční návrhy týkající se bitcoinového dědictví, multi-signature peněženek a Miniscriptu pro Bitcoin Design Guide.
V předchozím životě jsem navrhoval digitální produkty jak pro začínající startupy, tak pro velké korporace v oblasti telekomunikací, průmyslového inženýrství, nemovitostí, polovodičů a automobilového průmyslu.
Najdete mě jako @haasemike na Twitteru/X nebo @rabbitholiness na Nostru. Osobni web: www.michaelhaase.design