Přeskočit na hlavní obsah
Change page

Klíče v proof-of-stake Ethereu

Stránka naposledy aktualizována: 14. února 2026

Ethereum zabezpečuje majetek uživatelů pomocí kryptografie s veřejným a soukromým klíčem. Veřejný klíč se používá jako základ pro adresu Etherea – to znamená, že je viditelný pro širokou veřejnost a používá se jako jedinečný identifikátor. Soukromý (neboli „tajný“) klíč by měl být přístupný pouze majiteli účtu. Soukromý klíč se používá k „podepisování“ transakcí a dat, aby kryptografie mohla prokázat, že držitel schvaluje určitou akci konkrétního soukromého klíče.

Klíče Etherea se generují pomocí kryptografie na bázi eliptických křivekopens in a new tab.

Když však Ethereum přešlo z důkazu prací na důkaz podílem, byl do Etherea přidán nový typ klíče. Původní klíče stále fungují úplně stejně jako dříve – u klíčů založených na eliptických křivkách, které zabezpečují účty, nedošlo k žádným změnám. Uživatelé však potřebovali nový typ klíče pro účast v mechanismu proof-of-stake prostřednictvím stakingu ETH a provozování validátorů. Tato potřeba vznikla z problémů se škálovatelností spojených s velkým množstvím zpráv předávaných mezi velkým počtem validátorů, což vyžadovalo kryptografickou metodu, kterou by bylo možné snadno agregovat, aby se snížilo množství komunikace potřebné k tomu, aby síť dosáhla konsensu.

Tento nový typ klíče používá schéma podpisu Boneh-Lynn-Shacham (BLS)opens in a new tab. BLS umožňuje velmi efektivní agregaci podpisů, ale také umožňuje zpětné inženýrství agregovaných jednotlivých klíčů validátorů a je ideální pro správu akcí mezi validátory.

Dva typy klíčů validátora

Před přechodem na proof-of-stake měli uživatelé Etherea pro přístup ke svým prostředkům pouze jediný soukromý klíč založený na eliptických křivkách. Se zavedením proof-of-stake potřebovali uživatelé, kteří chtěli být solo stakery, také klíč validátora a klíč pro výběr.

Klíč validátora

Podpisový klíč validátora se skládá ze dvou prvků:

  • Soukromý klíč validátora
  • Veřejný klíč validátora

Účelem soukromého klíče validátora je podepisovat on-chain operace, jako jsou návrhy bloků a atestace. Z tohoto důvodu musí být tyto klíče uloženy v horké peněžence.

Tato flexibilita má tu výhodu, že umožňuje velmi rychlý přesun podpisových klíčů validátora z jednoho zařízení na druhé, avšak v případě jejich ztráty nebo odcizení může zloděj několika způsoby jednat se zlým úmyslem:

  • Způsobit slashing validátora tím, že:
    • Jako navrhovatel podepíše dva různé beacon bloky pro stejný slot
    • Jako atestátor podepíše atestaci, která "obklopuje" jinou
    • Jako atestátor podepíše dvě různé atestace se stejným cílem
  • Vynutí si dobrovolný odchod, čímž validátor přestane se stakingem a majitel klíče pro výběr získá přístup k jeho zůstatku ETH

Veřejný klíč validátora je zahrnut v transakčních datech, když uživatel vkládá ETH do smlouvy o vkladu pro staking. Toto se nazývá data vkladu a umožňuje to Ethereu identifikovat validátora.

Pověření pro výběr

Každý validátor má vlastnost známou jako pověření pro výběr. První bajt tohoto 32bajtového pole identifikuje typ účtu: 0x00 představuje původní BLS pověření (před upgradem Shapella, bez možnosti výběru), 0x01 představuje starší pověření, která odkazují na exekuční adresu, a 0x02 představuje moderní typ složeného pověření.

Validátoři s BLS klíči 0x00 musí tato pověření aktualizovat, aby odkazovala na exekuční adresu, a aktivovat tak platby z přebytku zůstatku nebo plný výběr ze stakingu. To lze provést buď poskytnutím exekuční adresy v datech vkladu během počátečního generování klíčů, NEBO pozdějším použitím klíče pro výběr k podepsání a odvysílání zprávy BLSToExecutionChange.

Více o pověřeních pro výběr validátora

Klíč pro výběr

Klíč pro výběr bude vyžadován k aktualizaci pověření pro výběr, aby odkazovala na exekuční adresu, pokud nebyla nastavena během počátečního vkladu. To umožní zahájení zpracování plateb z přebytku zůstatku a také umožní uživatelům plně vybrat jejich stakovaná ETH.

Stejně jako klíče validátora se i klíče pro výběr skládají ze dvou složek:

  • Soukromý klíč pro výběr
  • Veřejný klíč pro výběr

Ztráta tohoto klíče před aktualizací pověření pro výběr na typ 0x01 znamená ztrátu přístupu k zůstatku validátora. Validátor může stále podepisovat atestace a bloky, protože tyto akce vyžadují soukromý klíč validátora, avšak v případě ztráty klíčů pro výběr je motivace malá nebo žádná.

Oddělení klíčů validátora od klíčů účtu Ethereum umožňuje jednomu uživateli provozovat více validátorů.

schéma klíče validátora

Poznámka: Ukončení povinností stakingu a výběr zůstatku validátora v současné době vyžaduje podepsání zprávy o dobrovolném odchodu (VEM)opens in a new tab klíčem validátora. EIP-7002opens in a new tab je však návrh, který v budoucnu umožní uživateli spustit odchod validátora a výběr jeho zůstatku podepsáním zpráv o odchodu klíčem pro výběr. Tím se sníží předpoklady důvěry, protože stakerům, kteří delegují ETH poskytovatelům stakingu jako služby, umožní mít své prostředky stále pod kontrolou.

Odvození klíčů z bezpečnostní fráze

Pokud by každých 32 stakovaných ETH vyžadovalo novou sadu 2 zcela nezávislých klíčů, správa klíčů by se rychle stala nepraktickou, zejména pro uživatele provozující více validátorů. Místo toho lze odvodit více klíčů validátora z jediného společného tajemství a uložení tohoto jediného tajemství umožňuje přístup k více klíčům validátora.

Mnemotechnické pomůckyopens in a new tab a cesty jsou prominentními prvky, se kterými se uživatelé často setkávají, když přistupujíopens in a new tab ke svým peněženkám. Mnemotechnická pomůcka je sekvence slov, která funguje jako počáteční seed pro soukromý klíč. V kombinaci s dalšími daty generuje mnemotechnická pomůcka haš známý jako „hlavní klíč“. To si lze představit jako kořen stromu. Větve z tohoto kořene lze poté odvodit pomocí hierarchické cesty, takže podřízené uzly mohou existovat jako kombinace haše jejich nadřazeného uzlu a jejich indexu ve stromě. Přečtěte si o standardech BIP-32opens in a new tab a BIP-19opens in a new tab pro generování klíčů na základě mnemotechnických pomůcek.

Tyto cesty mají následující strukturu, která bude známá uživatelům, kteří interagovali s hardwarovými peněženkami:

1m/44'/60'/0'/0`

Lomítka v této cestě oddělují složky soukromého klíče následovně:

1hlavní_klíč / účel / typ_mince / účet / změna / index_adresy

Tato logika umožňuje uživatelům připojit co nejvíce validátorů k jediné mnemotechnické frázi, protože kořen stromu může být společný a odlišení může probíhat na úrovni větví. Uživatel může z mnemotechnické fráze odvodit libovolný počet klíčů.

1 [m / 0]
2 /
3 /
4[m] - [m / 1]
5 \
6 \
7 [m / 2]

Každá větev je oddělena znakem /, takže m/2 znamená začít od hlavního klíče a sledovat větev 2. V níže uvedeném schématu se jediná mnemotechnická fráze používá k uložení tří klíčů pro výběr, z nichž každý má dva přidružené validátory.

logika klíčů validátora

Další čtení

Byl tento článek užitečný?