2. del: Genesis of Ledger Recover – Varna distribucija delnic | Ledger

2. del: Genesis of Ledger Recover – Varna distribucija delnic | Ledger

Izvorno vozlišče: 2785813

Dobrodošli nazaj v drugi del serije naših blogov Ledger Recoverje geneza! Naš cilj je raziskati številne tehnične ovire, na katere naletimo pri gradnji storitve obnovitve semena, in kako jih Ledger Recover rešuje z varno zasnovo in infrastrukturo.

v prejšnji del, smo preučili, kako varnostno kopirati skrivno obnovitveno frazo tako, da jo razdelimo, in kako Ledger Recover to naredi namesto vas z Pedersen Verifiable Secret Sharing.

Zdaj, ko imate tri delnice, je naslednje vprašanje: kako jih lahko varno distribuirate svojim ponudnikom rezervnih kopij? Dejansko, če zlonamerna oseba prestreže vse deleže, medtem ko jih prenašate, to izniči namen razdelitve semena. V kibernetski varnosti se to imenuje a Napad človeka v sredini, kjer napadalec stoji med vami in vašim prejemnikom ter posega v komunikacijo, da bi poskušal odkriti skrivnosti.

Ko uporabljate Ledger Recover, se prenos vašega semena izvede prek varnega distribucijskega mehanizma. Zanaša se na več kriptografskih orodij in matematičnih konceptov, ki jih bomo podrobno razložili.

Začeli bomo s podrobnejšim opisom obravnavane težave. Nato bomo predstavili več kriptografskih orodij in matematičnih konceptov, ki jih Ledger Recover uporablja za varno distribucijo vaših začetnih deležev ponudnikom rezervnih kopij.

Kurir v sredini: primer iz resničnega sveta

Najbolj očiten način, da se zaščitite pred zlonamernim posrednikom, je, da ga sploh nimate. Lahko se sami sprehodite do hiš svojih prijateljev ali pa jih zberete na isti, zaprti lokaciji, da dostavite delnice. Toda to postane veliko težje, če niste povezani in želite delnice poslati znancu na daljavo.

Če predpostavimo, da je omrežje, prek katerega komuniciramo (npr. poštna storitev), samo po sebi nezaupljivo, kako lahko zagotovimo, da prisluškovalci nikoli ne bodo videli naših tajnih skupnih rab?

Čas je, da predstavimo Alice in Boba ter zloglasno Eve, tri dobro znane kriptografske osebe. Alice ima skrivnost, ki jo želi deliti z Bobom, in nima druge izbire, kot da jo pošlje prek Eve, njihove nezaupljive kurirke. S kriptografskimi besedami, Alice in Bob želita med seboj vzpostaviti varen komunikacijski kanal, da bi varno izmenjala svojo skrivnost.

Alice in Bob bi lahko naredila naslednje:

  • Alice svojo skrivnost pospravi v škatlo, jo zaklene s svojo ključavnico, preden jo pošlje Bobu.
  • Ko Bob prejme škatlo, doda svojo ključavnico in jo pošlje nazaj.
  • Alice lahko zdaj s svojim ključem odstrani ključavnico iz škatle, preden jo pošlje zadnjič.
  • Da bi dokončal postopek, Bob preprosto uporabi svoj ključ, da odstrani ključavnico in od Alice končno pridobi skrivnost.

Ves čas izmenjave, ko je imela Eva škatlo v rokah, je bila vedno zaščitena z Alicino ključavnico, Bobovo ali obema.

Čeprav je to odličen začetek, je v tem scenariju še nekaj težav, ki jih je treba rešiti:

  • Vzajemna avtentikacija: Alice in Bob potrebujeta brezhibne načine, da preverita, ali vsaka obešanka resnično prihaja od druge strani. V nasprotnem primeru bi ga lahko Eve zamenjala s svojo škatlo in ključavnico ter preslepila Alice ali Boba, da bi verjela, da je ona druga stran.
  • Zaupnost naprej: Če bi Eva ukradla zaklenjeno škatlo in pozneje ukradla Alicin ali Bobov ključ, bi lahko povrnila prvotno skrivnost. Namesto tega želimo zagotoviti, da prihodnje uhajanje dolgoročnih ključev ne bo ogrozilo starejših ukradenih paketov.
  • Ohranjanje zasebnosti: V tem scenariju sta naslova Alice in Boba razkrita kurirju. V digitalnem ekvivalentu tega procesa želimo protokol, ki ne razkrije ničesar o prejemnikih.
Zaščita digitalnih sporočil

Na področju digitalne varnosti je a varen kanal je način prenosa podatkov med dvema overjena stranke taki, da podatki zaupnost in celovitost so zagotovljene. Ko uporabljate varen kanal, napadalci ne morejo prisluškovati vaši komunikaciji ali posegati v njo.

Protokol Ledger Recover za varnostno kopiranje in obnovitev temelji na a Protokol varnega kanalaali SCP. Uporablja več orodij sodobne kriptografske orodjarne, kot so simetrično in asimetrično šifriranje, potrdila in digitalni podpisi.
Naslednji razdelki vam bodo na hitro predstavili vse te koncepte, kar vam bo omogočilo razumevanje celotne varnostne sheme, ki se uporablja v Ledger Recover.

Simetrična kriptografija: zmogljivo, a omejeno orodje

Da bi zagotovili zaupnost podatkov, izmenjanih med dvema stranema, so podatki običajno šifrirani in dešifrirani z istim tajnim ključem.
Ta postopek se imenuje simetrična kriptografija, ki je preučevanje primitivov, ki vključujejo en sam tajni ključ za zagotavljanje ene ali več lastnosti varnega kanala.

Čeprav je simetrična kriptografija močno orodje za zaščito vaših komunikacij, ima nekaj očitnih omejitev: Predpostavimo, da želi Alice z Bobom izmenjati več šifriranih sporočil. Najprej izbere skrivni ključ, nato ga deli z Bobom, preden začne pošiljati sporočila.
Seveda zdaj nastane težava: Kako Alice varno deli skrivni ključ z Bobom? Če se kdo dokopa do ključa, komunikacija Alice in Boba ne bo več zaupna.
Alice bi se lahko osebno srečala z Bobom in mu dala ključ, toda zakaj se v tem primeru ne bi pogovorila stran od radovednih ušes?

Za digitalno komunikacijo potrebujemo varno metodo za skupno rabo simetričnega ključa in začetek zaščitene izmenjave podatkov. Čas je, da predstavimo delo dveh titanov sodobne kriptografije, Whitfield Diffie in Martin Hellman.

Asimetrična kriptografija: Skrivanje intimnih delov
Ključni sporazum Diffie-Hellman

S kriptografijo javnega ključa sta Diffie in Hellman predstavila nov pristop k varovanju komunikacij. Določili so protokol z dvema različnima ključema za šifriranje in dešifriranje. Ta dva ključa se običajno imenujeta javni in zasebni ključi, ki tvori par, ki se lahko uporablja za šifriranje/dešifriranje in podpisovanje/preverjanje podatkov.

Javni in zasebni ključi
Kriptografija z javnim ključem je osnova večine naše digitalne varnosti. Uporablja se za vašo zaščito na spletu in je tudi način, kako dokažete lastništvo kovancev in žetonov v vseh javnih verigah blokov.

Več o tej temi na Ledger Academy!

Za nas je res prepričljivo, kako sta Diffie in Hellman predlagala uporabo kriptografije z javnimi ključi za distribucijo simetričnih ključev. Njihova metoda, znana kot izmenjava ključev Diffie-Hellman, je sestavljen iz izmenjav naprej in nazaj med dvema stranema, da se na koncu dogovorita o skupni skrivnosti. Če se izvaja pravilno, prisluškovalci ne morejo izračunati iste skupne skrivnosti iz informacij, ki jih preslišijo.

Ustvarjanje skupne skrivnosti k

TL;DR je, da v zgornjem diagramu Eva matematično ne more odkriti skrivnosti k, čeprav ima dostop do vseh komunikacij Alice in Boba. Da bi razumeli, zakaj je ta skupna skrivnost varna pred prisluškovanjem, se moramo malo poglobiti v teorijo skupin. 

Varnost izmenjave ključev Diffie-Hellman je odvisna od kompleksnosti problema diskretnega logaritma nad ciklično skupino. Ciklična skupina je skupina, ki jo ustvari en element.
Na kratko, Alice in Bob izvedeta naslednje korake, da se dogovorita o skupni skrivnosti k:

  1. Alice in Bob se strinjata glede ciklične skupine G reda n ki jih ustvari element g
  2. Alice naključno izžreba številko 0 < a < n in pošilja pa = ga ∈ G za Boba
  3. Bob naključno izžreba številko 0 < b < n in pošilja pb = gb ∈ G za Alice
  4. Alice izračuna skupno skrivnost k = (strb )a ∈ G
  5. Bob izračuna skupno skrivnost k = (stra )b ∈ G

Varnost protokola je odvisna od težavnosti iskanja k =gab dana g, ga, gb. To se imenuje Računanje Diffie-Hellmanova predpostavka (CDH). Hipoteza, da je CDH težko rešljiva, predpostavlja, da je problem diskretnega logaritma je težko rešiti.

Čeprav je v tej shemi skupna skrivnost varna pred prisluškovanjem, ni nobenega zagotovila o izvoru podatkov, ki se izmenjujejo. Da bi bila interakcija varna, morata Alice in Bob drug drugemu nekako dokazati svojo identiteto.

Vzajemna avtentikacija in digitalni podpis

Lastnoročni podpis se običajno uporablja za potrditev in sprejem vsebine dokumenta. Samo podpisnik se lahko podpiše, toda vsak, ki »ve«, kako podpis izgleda, lahko preveri, da je dokument podpisala prava oseba.

Čeprav ima digitalni podpis podobne lastnosti, zagotavlja dodatna močna jamstva z uporabo asimetrične kriptografije:

  • Pristnost: kdorkoli lahko preveri, ali je bilo sporočilo podpisano z zasebnim ključem, ki ustreza navedenemu javnemu ključu.
  • Brez zavračanja: podpisnik ne more zanikati podpisa in pošiljanja sporočila.
  • Integriteta: sporočilo med prenosom ni bilo spremenjeno.

Zdaj, dokler poznamo javni ključ in mu zaupamo našega dopisnika lahko verodostojnost vseh sporočil preverimo s preverjanjem njihovega digitalnega podpisa.
V večini primerov iz resničnega sveta pa svojega dopisnika ne poznamo dobro ali pa mora zaradi varnosti redno spreminjati svoj par zasebnih/javnih ključev. To zahteva dodatno raven preverjanja in zaupanja v obliki Certifikati, ki vsebujejo opis entitete in njen javni ključ.

Vsako potrdilo je podpisano z nadrejenim javnim ključem. Če imamo korenski overitelj potrdil (ali korenski CA), ki mu vedno zaupamo, lahko ustvarimo verigo zaupanja z uporabo zaporednih digitalnih podpisov.

Eliptične krivulje: naslednja stopnja kriptografije z javnim ključem

Kriptografija z eliptično krivuljo (ECC) je podpodročje kriptografije z javnim ključem, ki vključuje uporabo eliptičnih krivulj za kriptografske aplikacije, npr. za šifriranje ali sheme podpisovanja. 
Na podlagi trenutno razumljene matematike ECC zagotavlja bistveno varnejšo podlago kot prejšnji kriptografski sistemi z javnimi ključi, kot je RSA.

Z enako stopnjo varnosti ECC vključuje manjše dolžine ključev v primerjavi z drugimi asimetričnimi kriptosistemi, zaradi česar je dobra izbira za vgrajene sisteme z omejenimi viri.
Če želite izvedeti več, ta članek lahko pomaga bolje razumeti eliptične krivulje.

Vrstni red eliptične krivulje
Vrstni red elementa g skupine je pomemben parameter izmenjave ključev Diffie-Hellman. Ko je skupina eliptična krivulja, je ta element točka, njegov vrstni red pa število, kolikokrat ga je mogoče dodati samemu sebi, preden se obrne na svojo začetno vrednost.
Upoštevajte, da ta dodatek nima nobene zveze z vašo običajno vsoto realnih števil, ima pa podobne lastnosti aditivnosti.

Vzemimo eliptično krivuljo E: y2 =x3 +2x +3 nad poljem 𝔽97 kot primer. Kot diskretna funkcija je predstavljena s točkami na spodnji sliki. Osredotočili se bomo na bistvo P = (3, 6) in vse njegove večkratnike.

To vidimo po 5.P, spet smo na začetku in dosegamo iste točke kot prej. Ne glede na vrednost skalarja P pomnoženo s, bomo vedno dosegli eno od naših 5 začetnih točk.
Tako je vrstni red P je 5, podskupina, ki jo ustvari, pa vsebuje natanko 5 točk. Za kriptografske aplikacije pa je vrstni red veliko večji od 5, kar povečuje naključnost.

Zmešajte vse: ECDH z avtentikacijo

Zdaj imamo vsa orodja, ki jih potrebujemo za ustvarjanje odličnega protokola za izmenjavo ključev:  Eliptična krivulja Diffie-Hellman (ECDH).

ECDH je standardizirana kriptografska shema, ki izvaja izmenjavo ključev Diffie-Hellman, ki smo jo opisali zgoraj, z uporabo kriptografije Elliptic Curve za generiranje parov ključev in skupne skrivnosti.

Preverjena izmenjava ključev ECDH

Začne se z izbiro eliptične krivulje in njene generativne točke. Stranki nato izmenjata zaupanja vredna potrdila, ki jima omogočata preverjanje pristnosti njunih javnih ključev. Ko so potrjeni, lahko ustvarijo skupno skrivnost k, ki se izračuna kot:

k = dA . dB . G
dA: Alicein zasebni ključ
dB: Bobov zasebni ključ
G: točka ES

Da bi dosegli naprej tajnost Lastnost, bi moral biti par ključev Alice in Boba efemeren, tj. generiran na kraju samem in uporabljen za eno samo izvedbo protokola. Govorimo o eliptični krivulji Diffie-Hellman Ephemeral (ECDHE). V tem scenariju so efemerni ključi podpisani tako s statičnimi ključi v napravi kot s HSM-ji, kar omogoča močno preverjanje pristnosti ključev. Tudi če bi v prihodnosti prišlo do nepooblaščenega dostopa do statičnih ključev, to ne bi omogočilo zmožnosti dešifriranja za izmenjave, zaščitene z efemernimi ključi.

Poleg tega smo uvedli opazno izboljšavo protokola s prikrivanjem statičnih ključev naprav znotraj varnega kanala. Ta previdnostni ukrep preprečuje napadalcem, da bi pridobili vidnost statičnega potrdila naprav, kar bi lahko povzročilo uhajanje edinstvenih identifikatorjev, uporabljenih med operacijami varnostnega kopiranja/obnavljanja.

Nazaj na Ledger Recover: potovanje semena

V redu, čas je, da se za minuto ustavimo.

Pokrili smo veliko tem, ki se nanašajo na varnost in matematiko, rezultat pa je protokol za varno komuniciranje prek katerega koli nevarnega omrežja. Povzemimo, kaj smo videli do zdaj:

Dve entiteti imata lahko varno komunikacijo prek nevarnega kanala, če se dogovorita o a edinstvena skrivnost zahvaljujoč se ECDHE, ki je implementacija Diffie-Hellmanovega protokola za dogovor o ključu, ki uporablja efemerni ključi za varovanje tajnosti naprej. Vsak subjekt je sposoben preverite pristnost njihovega dopisnika zahvaljujoč začetnici Preverjanje spričevala.

V primeru Ledger Recover smo vzpostavili štiri varne kanale, ki uporabljajo protokol varnega kanala. Ti kanali povezujejo napravo z vsakim od ponudnikov varnostnih kopij in orkestratorjem, ki so vsi opremljeni z varnostnimi moduli strojne opreme (HSM).

Vsak udeleženec ima svoj osebni certifikat, podpisan s potrdilom Ledger, ki deluje kot koren verige zaupanja. Ko uporabnikova naprava Orchestratorju prvič pošlje svojo namero o izvedbi varnostnega kopiranja, ta sproži overjen ECDHE. Pod temi mTLS sej Orchestrator prenaša informacije, ki bodo prihodnje varne kanale povezale z uporabnikovo posebno zahtevo za varnostno kopijo, skupaj z identiteto uporabnika, ki bo zahtevana za preverjanje pri izvajanju poznejše obnovitve semena.

Varovanje skrivnosti s HSM
Čeprav se temu poskušamo izogniti, je včasih potrebno shranjevati in obdelovati skrivnosti na strežnikih. To je lahko tvegano, saj je zaščita strežnikov in njihovega dostopa nepomembna naloga. Za ublažitev tega tveganja uporabljajo podjetja in panoge, ki cenijo varnost Varnostni moduli strojne opreme. So specializirana strojna oprema, ki ščiti kriptografske ključe in zagotavlja kriptografsko obdelavo. Več o HSM bomo govorili v kasnejših delih te serije blogov.

Vse je pripravljeno za končno izvedbo najbolj kritičnega dela celotne operacije: prenos treh deležev uporabnikovega semena.

Ponovno ustvarjamo nove varne kanale, vendar tokrat med uporabnikovo napravo Ledger in HSM-ji ponudnikov varnostnih kopij neposredno. Začetni deleži se prenašajo v šifriranem kanalu od konca do konca do končnega mesta shranjevanja, pri čemer je zagotovljeno, da dosežejo pravi cilj (tu je preverljivost Pedersen Secret Sharing, uvedena v del 1 je uporabno).
Uporabnikova naprava enega za drugim preverja pristnost HSM ponudnikov varnostnih kopij in ponudniki varnostnih kopij vedo, da si izmenjujejo z edinstveno uradno napravo Ledger, ki je sprožila to posebno zahtevo za varnostno kopiranje.
Nihče razen uporabnikove naprave in HSM-jev ponudnikov varnostnih kopij nikoli ne vidi začetnih deležev, šifriranih s simetričnimi ključi teh medsebojno overjenih varnih kanalov, niti Orkestrator.

Varno prejeto ... in shranjeno?

V tem delu smo uvedli več novih konceptov, med katerimi so nekateri precej tehnični. Vsak od teh konceptov je potreben za vzpostavitev varnega prenosa, ki zagotavlja zaupnost in celovitost izmenjave. Ne glede na varnost omrežja, zdaj lahko pošiljamo svoje skrivne deleže brez strahu, da bi jih lahko priredili ali prestregli. To je prava nadgradnja!

Celoten postopek je podprt z zanesljivo kriptografijo in varno strojno opremo v obliki vaše strojne naprave Ledger in HSM-jev, ki so v lasti vsakega ponudnika varnostnega kopiranja.

Zdaj je čas, da nadaljujete z izterjavo semenskih delnic! Vse, kar moramo storiti, je prositi ponudnike rezervnih kopij, da nam vrnejo delnice, ki jih hranijo na svoji infrastrukturi ...

Toda počakajte: kako natančno shranjujejo te zelo občutljive podatke? Ne bi nam koristilo, če bi imeli najbolj varne komunikacijske kanale, vendar so naši rezervni ponudniki le hranili deleže v golem besedilu in prosili, da bi jih ukradli.

Torej, preden govorimo o okrevanju – obljubim, da ga bomo dosegli! –, se moramo v 3. delu hitro obrniti, da bi razpravljali o varnosti naših semenskih deležev v mirovanju. Ostani na vezi!

Časovni žig:

Več od Ledger