Odpovědí nemusí být „všechno“. FAQ Midnightu uvádí, že soukromý stav je šifrován a ukládán lokálně. Seed fráze může obnovit nestíněné adresy a veřejnou historii, sama o sobě však neobnoví neutracené stíněné poznámky ani soukromá data smart contractů. Pokud se tento lokální stav ztratí, související aktiva se mohou stát nedostupnými.
Jde o výrazně přísnější omezení než u známého modelu peněženek založených na účtech. U řetězce s účty obnova peněženky často znamená odvodit adresu ze seedu a požádat uzel o aktuální zůstatek. Ve stíněném systému může řetězec ukázat, že commitmenty existují, aniž by odhalil, který šifrovaný commitment patří uživateli provádějícímu obnovu. Obnova se tak stává problémem soukromého vyhledávání v indexu.
Oznámení o spuštění Midnightu uvádí, že síť byla spuštěna v březnu 2026 s kontinuitou a trvalostí stavu určenými pro programovatelné soukromé aplikace od začátku do konce. Kontinuita stavu má však důsledek i pro peněženky: uživatel musí uchovat, rekonstruovat nebo bezpečně znovu proskenovat stav, který dává soukromým objektům v řetězci význam.
Genesis block mainnetu vznikl 17. března 2026, uvádí březnová zpráva Midnightu o síti. Zpráva označuje Lace, CTRL a 1am za hlavní rozhraní peněženek pro soukromé smart contracty a aktiva. Jejich návrh obnovy proto není druhořadým detailem uživatelského rozhraní. Určuje, zda soukromé vlastnictví přežije běžné situace: rozbitý telefon, zastaralou zálohu notebooku, přechod k jiné peněžence nebo dlouhé období bez připojení.
Řetězec má důkazy, nikoli čitelný zůstatek
Stíněná platba obvykle zanechá několik rozdílných stop.
Commitment je veřejný objekt v řetězci, který zavazuje soukromou poznámku, například množství aktiva a informace o vlastnictví, aniž by tyto hodnoty odhaloval. Nullifier je veřejná hodnota zveřejněná při utracení této poznámky. Brání tomu, aby byla stejná poznámka utracena dvakrát, aniž by poznámku přímo identifikoval. Peněženka musí mít rovněž soukromý materiál potřebný k rozpoznání poznámek určených jí a později k vytvoření platného utracení.
Řetězec tak může doložit dvě veřejné skutečnosti: vznikl commitment a nullifier dosud nebyl použit. Nemůže však při obecném dotazu jednoduše vrátit údaj „Alice vlastní 42 jednotek“. Takový dotaz by zmařil model ochrany soukromí.
Obnovená peněženka musí odvodit možné klíče ze seedu, získat relevantní veřejnou historii řetězce, prozkoumat šifrované výstupy, určit, které výstupy dokáže dešifrovat, znovu sestavit sadu poznámek, jež lze utratit, a ověřit, že žádná z nich nebyla nullifikována. Soukromé vykonávání smart contractů může do stejného procesu přidat svědky, šifrovaný stav a synchronizační metadata.
Podstatný je rozdíl mezi daty, která jsou veřejná, ale neprůhledná, a daty, která jsou soukromá, ale rekonstruovatelná. Commitmenty a nullifiery lze stáhnout ze sítě. Seed může odvodit deterministický klíčový materiál, pokud návrh peněženky Midnightu zpřístupňuje odpovídající derivační cestu. Peněženka však stále potřebuje buď šifrovaný záznam soukromého stavu, nebo schopnost proskenovat historii a znovu jej vytvořit.
Poskytovatel, který seed frázi označuje za úplnou zálohu, aniž vysvětlí tuto hranici, popisuje obnovu klíčů, nikoli nutně obnovu stavu.
Čtyři případy obnovy, čtyři odlišná rizika
Nejjednodušším případem je nové zařízení s aktuální šifrovanou zálohou peněženky. Záloha může obsahovat rozpoznané poznámky, šifrovaný stav smart contractů, synchronizační kontrolní body a lokální metadata. Zařízení ji odemkne heslem nebo obnovovacím klíčem, ověří postup řetězce od uloženého kontrolního bodu a poté skenuje dále. Jde o rychlý postup, záloha se však stává koncentrovaným cílem. Pokud je zkopírována v prostém textu, může odhalit zůstatky, protistrany, interakce s aplikacemi a cestu k utracení.
Druhým případem je obnova pouze ze seedu. Peněženka odvodí své klíče a skenuje od bezpečné počáteční výšky, případně od genesis. Tím se snižuje závislost na zálohách hostovaných poskytovatelem, náklady se však přesouvají na soukromé skenování. Zařízení musí získat dostatek veřejné historie, aby mohlo rozpoznat své šifrované výstupy. Server, který sleduje, o které bloky, filtry či poznámky klient žádá, může odvozovat časové údaje, stáří peněženky nebo používání aplikací, i když nedokáže dešifrovat obsah.
Třetím případem je stará záloha. Obsahuje poznámky známé v době zálohování, chybí jí však pozdější příjmy, utracení a změny soukromých smart contractů. Správná peněženka nemůže svůj lokální seznam poznámek považovat za konečný. Musí přehrát veřejný stav po kontrolním bodu, rozpoznat nové šifrované poznámky a ověřit, zda staré poznámky nebyly nullifikovány. Jinak hrozí, že zobrazí zastaralý zůstatek nebo se pokusí o utracení, které síť odmítne.
Čtvrtým případem je přechod mezi poskytovateli peněženek. Obnova zde závisí na přenositelnosti. Dokáže peněženka B odvodit stejné adresy? Může importovat šifrovaný soukromý stav z peněženky A? Dokáže provést úplné skenování s použitím kompatibilního materiálu pro prohlížení? Dokáže reprodukovat svědky smart contractu nezbytné k interakci s nasazenou aplikací? Soukromý systém, který podporuje pouze zálohy specifické pro jednotlivé poskytovatele, může zachovat kryptografii, ale zároveň vytvářet praktické uzamčení uživatele u jednoho poskytovatele úschovy.
Lokální stav je součástí hranice důvěry
FAQ Midnightu je v důsledcích nezvykle přímočaré: ztráta lokálního soukromého stavu může stíněná aktiva učinit nedostupnými. Z toho vyplývá užitečné pravidlo pro architekturu. K lokální databázi je třeba přistupovat jako k bezpečnostnímu objektu, nikoli jako k postradatelné mezipaměti.
Některý stav by měl být znovu vypočitatelný:
| Položka stavu | Lze získat veřejně? | Je bezpečné ji znovu vypočítat? |
|---|---|---|
| Hlavičky bloků a veřejná historie | Ano | Ano |
| Commitmenty | Ano | Ano |
| Nullifiery | Ano | Ano |
| Odvození adresy ze seedu | Ne, ale lze odvodit | Obvykle |
| Rozpoznané šifrované poznámky | Ne přímo | Pouze skenováním nebo obnovením zálohy |
| Svědci pro utracení a soukromá data smart contractů | Ne nutně | Závisí na protokolu a uchovaných datech |
| Synchronizační kontrolní body | Ne | Ano, ale potenciálně nákladně |
Obtížná je vrstva soukromých poznámek a smart contractů. Peněženka nesmí předpokládat, že každou položku potřebnou k utracení lze znovu vytvořit z odpovědi veřejného uzlu. Pokud je soukromý stav smart contractu šifrován pro uživatele a uložen pouze lokálně, vyžaduje obnova obnovitelnou šifrovanou kopii, deterministický postup odvození nebo skenování historie řetězce, které jej dokáže znovu vytvořit.
Termín „svědek“ vyžaduje přesnost. Svědek je soukromý důkazní materiál, který prover používá k prokázání pravdivosti tvrzení. U stíněného utracení může prokázat, že commitment poznámky patří do autentizované struktury, aniž by se odhalilo, který commitment je utrácen. Důkaz překračuje hranici protokolu. Svědek by ji překročit neměl.
No private witness transmitted
To má přímé důsledky pro obnovu. Cloudová záloha může bezpečně uchovávat pouze data, která šifruje klíčovým materiálem, k němuž poskytovatel cloudu nemá přístup, a nesmí mít žádnou roli při vzdáleném dešifrování ani tvorbě důkazů. Pokud poskytovatel může přistupovat k utrácením klíčům nebo pomáhat vytvářet platná utracení, neukládá pouze zálohu. Stává se praktickým spoluschovatelem.
Prohlížecí klíče řeší jeden problém a vytvářejí jiný
FAQ také popisuje zpřístupnění prohlížecího klíče. Prohlížecí klíč může třetí straně umožnit kontrolu vybraných soukromých informací, aniž by získala plnou pravomoc k utrácení. To je užitečné pro daňové vykazování, audit, zákaznickou podporu, delegované operace a institucionální kontroly.
Nejde o bezplatný prvek ochrany soukromí. Prohlížecí klíč má určitý rozsah. Architekti peněženek musí vymezit, zda odhaluje příchozí platby, odchozí platby, typy aktiv, časování transakcí, zůstatky, interakce se smart contracty nebo jen omezenou podmnožinu. Musí také rozhodnout, zda lze zveřejnění v praxi odvolat. Pokud příjemce zkopíruje dešifrované záznamy, pozdější odvolání nemůže tuto kopii nechat zmizet.
Systém obnovy by měl oddělovat alespoň tři druhy oprávnění:
- Oprávnění k utrácení, které umožňuje vytvářet platná utracení.
- Oprávnění k prohlížení, které umožňuje dešifrovat nebo rozpoznat vymezenou soukromou aktivitu.
- Oprávnění k zálohování, které umožňuje obnovit šifrovaný stav, aniž by mimo zařízení uživatele automaticky poskytovalo některé z prvních dvou oprávnění.
Sloučení všech tří do exportu obsahujícího pouze seed je jednoduché, zvyšuje však rozsah škod při kompromitaci. Jejich oddělení podporuje selektivní zveřejňování, ale zvyšuje složitost správy klíčů a počet možností selhání při obnově.
Delegování DUST potřebuje jasný scénář obnovy
Midnight ve svém transakčním modelu používá DUST a FAQ popisuje DUST vedle veřejných commitmentů, nullifierů a mechanismů adres v systému. Pokud uživatel deleguje DUST aplikaci, zatímco řetězec pokračuje v posunu, musí peněženka sledovat více než statický zůstatek.
Postup obnovy by měl identifikovat delegační vztah, aktuální podmínky autorizace, spotřebované zdroje, čekající akce aplikace a případný stav odvolání nebo vypršení platnosti. Jsou-li tyto objekty soukromé, nelze starou zálohu považovat za autoritativní. Obnovená peněženka musí skenovat dále a sladit svůj lokální pohled s vývojem veřejných commitmentů a nullifierů.
Právě zde mohou peněženky aplikací odhalit více než základní peněženky. Obecná peněženka může skenovat poznámky ve vlastnictví uživatele. Peněženka integrovaná s aplikací může cíleně dotazovat konkrétní smart contract, vzorec zdrojů nebo nedávnou interakci. Soukromí se na úrovni důkazů zachová jen tehdy, pokud okolní synchronizace, indexování a telemetrie znovu nevytvoří tutéž historii někde jinde.
Asistovaná obnova je rozhodnutím o úschově
Existuje několik obhajitelných modelů obnovy, každý však znamená výměnu jiného rizika.
Obnova pouze ze seedu snižuje závislost na poskytovateli, může ale vyžadovat pomalé skenování a selhat tam, kde neobnovitelný soukromý stav nikdy nebyl zálohován.
Šifrované zálohy peněženek zrychlují obnovu a zachovávají lokální stav, kritickými pro bezpečnost se však stávají návrh šifrování, postup obnovy hesla a přenositelnost záloh.
Obnova pomocí prohlížecího klíče pomáhá při monitorování a sesouhlasení, neměla by se však zaměňovat s obnovou možnosti utrácet.
Asistovaná obnova může službě umožnit uchovávat šifrované fragmenty nebo pomáhat s vyhledáním stavu, protokol však musí zabránit tomu, aby se služba dozvěděla graf transakcí uživatele jen proto, že s obnovou pomáhá.
Sociální nebo institucionální úschova může snížit riziko selhání jediného zařízení tím, že rozdělí oprávnění k obnově mezi správce nebo signatáře pravidel. Přidává však riziko nedostupnosti, riziko koluze a otázky správy, které kryptografie neodstraní.
Jediná externí reakce poskytnutá pro tento článek je opatrná, nikoli nepřátelská. V příspěvku na fóru James, zakladatel Bitrove, vznesl praktické otázky ohledně podpory peněženek, kompatibility hardwarových peněženek, dostupnosti tokenů a vyspělosti ekosystému, přičemž podpořil model úschovy Midnightu zaměřený na soukromí. V dostupných materiálech nebyl uveden opačný názor.
Pro týmy vyvíjející peněženky je produkční test konkrétní. Obnovit pouze ze seedu. Obnovit ze šifrované zálohy staré 90 dní. Obnovit poté, co byly poznámky přijaty a utraceny. Obnovit po změně delegování DUST. Obnovit do jiné implementace peněženky. Při každém testu zaznamenat každý síťový požadavek.
Pokud peněženka obnoví prostředky, ale indexeru odhalí celou historii transakcí uživatele, obnova fungovala a soukromí selhalo.
Tento článek vytvořila umělá inteligence a byl publikován automaticky bez redakční kontroly před zveřejněním. Tento článek byl strojově přeložen z angličtiny a autorství uvedené v byline náleží autorovi původního textu.
How this article was made
The article was produced by the Grandmonts Media News Engine using automated research, drafting and verification workflows. No human editor reviewed the article before publication. Grandmonts Media remains responsible for the published content. Errors can be reported at office@grandmonts.cz.