2. rész: A Ledger Recover létrejötte – A részvények biztonságos elosztása | Főkönyv

2. rész: A Ledger Recover létrejötte – A részvények biztonságos elosztása | Főkönyv

Forrás csomópont: 2785813

Üdvözöljük blogsorozatunk második részében Főkönyvi helyreállítás's genesis! Célunk, hogy feltárjuk a vetőmag-visszanyerési szolgáltatás felépítése során felmerülő számos technikai akadályt, és azt, hogy a Ledger Recover biztonságos tervezéssel és infrastruktúrával hogyan oldja meg ezeket.

A előző rész, megvizsgáltuk, hogyan készíthet biztonsági másolatot egy titkos helyreállítási kifejezésről felosztással, és hogyan teszi ezt meg a Ledger Recover Pedersen ellenőrizhető titkos megosztás.

Most, hogy három megosztásod van, a következő kérdés: hogyan tudod biztonságosan terjeszteni őket a biztonsági mentési szolgáltatók között? Valójában, ha egy rosszindulatú fél elkapja az összes megosztást, miközben Ön továbbítja azokat, az eleve meghiúsítja a mag felosztásának célját. A kiberbiztonságban ezt a Man-in-the-Middle támadás, ahol egy támadó áll Ön és a címzett között, és megzavarja a kommunikációt, hogy megpróbálja feltárni a titkokat.

A Ledger Recover használatakor a vetőmag továbbítása biztonságos elosztási mechanizmuson keresztül történik. Számos kriptográfiai eszközre és matematikai fogalomra támaszkodik, amelyeket alaposan elmagyarázunk.

Kezdjük a probléma részletesebb leírásával. Ezután számos kriptográfiai eszközt és matematikai koncepciót mutatunk be, amelyeket a Ledger Recover használ fel, hogy biztonságosan eloszthassa az alapmegosztásokat a mentési szolgáltatók között.

Courier-In-The-Middle: Egy valós példa

A legkézenfekvőbb módja annak, hogy megvédje magát egy rossz szándékú közvetítőtől, ha egyáltalán nincs. Saját maga is elsétálhat barátai házához, vagy összegyűjtheti őket ugyanazon, zárt helyen, hogy kézbesítse a megosztásokat. De ez sokkal nehezebbé válik, ha nem vagy helyben, és egy távoli ismerősödnek szeretnéd elküldeni a részvényeket.

Feltételezve, hogy a hálózat, amelyen keresztül kommunikálunk (pl. a postai szolgáltatás), eredendően megbízhatatlan, hogyan garantálhatjuk, hogy a lehallgatók soha ne lássák titkos megosztásainkat?

Ideje bemutatni Alice-t és Bobot, valamint a hírhedt Évát, a három jól ismert kriptográfiai személyiséget. Alice-nek van egy titka, amit meg akar osztani Bobbal, és nincs más választása, mint elküldeni Eve-n, a megbízhatatlan futárukon keresztül. kriptográfiai szavakkal, Alice és Bob biztonságos kommunikációs csatornát akarnak létrehozni egymással, hogy biztonságosan kicseréljék titkukat.

Alice és Bob a következőket teheti:

  • Alice egy dobozba teszi a titkát, bezárja személyes lakatával, mielőtt elküldi Bobnak.
  • Amikor Bob megkapja a dobozt, hozzáteszi saját lakatját, és visszaküldi.
  • Alice most a kulcsával eltávolíthatja a lakatot a dobozból, mielőtt utoljára elküldi.
  • A folyamat befejezéséhez Bob egyszerűen a kulcsával eltávolítja a lakatját, és végre visszaszerzi Alice titkát.

A csere során, amikor Eve kezében volt a doboz, mindig védte, vagy Alice zárja, vagy Bob, vagy mindkettő.

Bár ez egy kiváló kezdet, ebben a forgatókönyvben számos probléma van még megoldandó:

  • Kölcsönös hitelesítés: Alice-nek és Bobnak bolondbiztos módszerekre van szüksége annak ellenőrzésére, hogy mindegyik lakat valóban a másik féltől származik-e. Ellenkező esetben Eve lecserélheti a saját dobozára és lakatára, és Alice-t vagy Bobot elhiteheti azzal, hogy ő a másik fél.
  • Továbbítási titok: Ha Eve ellopja a lezárt dobozt, majd később Alice vagy Bob kulcsát, visszaszerezheti az eredeti titkot. Ehelyett azt szeretnénk biztosítani, hogy a hosszú távú kulcsok jövőbeli kiszivárgása ne veszélyeztesse a régebbi ellopott csomagokat.
  • A magánélet megőrzése: Ebben a forgatókönyvben Alice és Bob címe nyilvánosságra kerül a futár számára. Ennek a folyamatnak a digitális megfelelőjeként olyan protokollt akarunk, amely nem árul el semmit a címzettekről.
Digitális üzenetek védelme

A digitális biztonságban a biztonságos csatorna a kettő közötti adatátvitel egyik módja hitelesített felek, mint az adatok titoktartási és a sértetlenség garantáltak. Ha biztonságos csatornát használ, a támadók nem tudják lehallgatni vagy manipulálni a kommunikációját.

A Ledger Recover biztonsági mentési és visszaállítási protokollja a Secure Channel Protocolvagy SCP. A modern kriptográfiai eszköztár számos eszközét használja, például szimmetrikus és aszimmetrikus titkosítást, tanúsítványokat és digitális aláírásokat.
A következő részek gyors bevezetőt adnak ezekről a fogalmakról, amelyek lehetővé teszik a Ledger Recoverben használt teljes biztonsági séma megértését.

Szimmetrikus kriptográfia: Hatékony, de korlátozott eszköz

A két fél között kicserélt adatok titkosságának garantálása érdekében az adatokat általában ugyanazzal a titkos kulccsal titkosítják és dekódolják.
Ezt a folyamatot ún szimmetrikus kriptográfia, amely olyan primitívek tanulmányozása, amelyek egyetlen titkos kulcsot tartalmaznak, hogy garantálják a biztonságos csatorna egy vagy több tulajdonságát.

Noha a szimmetrikus kriptográfia hatékony eszköz a kommunikáció védelmére, van néhány nyilvánvaló korlátja: Tegyük fel, hogy Alice több titkosított üzenetet szeretne váltani Bobbal. Először kiválaszt egy titkos kulcsot, majd megosztja Bobbal, mielőtt üzeneteket küldene.
Természetesen a probléma most az: Hogyan osztja meg Alice biztonságosan a titkos kulcsot Bobbal? Ha valaki kezébe kerül a kulcs, Alice és Bob kommunikációja többé nem lesz bizalmas.
Alice személyesen is találkozhat Bobbal, hogy átadja neki a kulcsot, de ebben az esetben miért ne folytatná a beszélgetést, távol a kíváncsi fülektől?

A digitális kommunikációhoz biztonságos módszerre van szükségünk a szimmetrikus kulcs megosztására és a védett adatcsere kezdeményezésére. Ideje bemutatni a modern kriptográfia két titánjának munkáját, Whitfield Diffie és a Martin Hellman.

Aszimmetrikus kriptográfia: A privát részek elrejtése
Diffie-Hellman kulcsszerződés

A nyilvános kulcsú titkosítással Diffie és Hellman új megközelítést dolgozott ki a kommunikáció biztosítására. Meghatároztak egy protokollt két különálló kulccsal a titkosításhoz és a visszafejtéshez. A két kulcsot általában hívják nyilvános és magánkulcsok, olyan párt alkotva, amely adatok titkosítására/dekódolására és aláírására/ellenőrzésére használható.

Nyilvános és privát kulcsok
A nyilvános kulcsú kriptográfia a legtöbb digitális biztonságunk alapja. Ez az Ön védelmére szolgál az interneten, és ezzel bizonyítja az összes nyilvános blokkláncon lévő érmék és tokenek tulajdonjogát.

Tudjon meg többet erről a témáról a Ledger Academy oldalon!

Ami igazán lenyűgöző számunkra, az az, hogy Diffie és Hellman a nyilvános kulcsú kriptográfia használatát javasolta a szimmetrikus kulcsok elosztására. Módszerük, az ún Diffie-Hellman kulcscsere, két fél közötti oda-vissza cserékből áll, hogy végül megegyezzenek egy közös titokban. Ha megfelelően hajtják végre, a lehallgatók nem tudják kiszámítani ugyanazt a megosztott titkot a hallott információkból.

Közös titok generálása k

A TL;DR az, hogy a fenti diagramon Eve matematikailag nem tudja kitalálni a titkot k annak ellenére, hogy hozzáfér Alice és Bob összes kommunikációjához. Ahhoz, hogy megértsük, miért biztonságos ez a megosztott titok minden lehallgatótól, bele kell ásnunk egy kicsit a csoportelméletbe. 

A Diffie-Hellman kulcscsere biztonsága a diszkrét logaritmus-probléma ciklikus csoporton belüli összetettségén múlik. A ciklikus csoport egyetlen elem által létrehozott csoport.
Dióhéjban Alice és Bob a következő lépéseket hajtják végre, hogy megegyezzenek egy közös titokban k:

  1. Alice és Bob megállapodnak egy ciklikus csoportban G a rend n elem által generált g
  2. Alice véletlenszerűen húz egy számot 0 < a < n és elküldi pa = ga ∈ G hogy Bob
  3. Bob véletlenszerűen húz egy számot 0 < b < n és elküldi pb = gb ∈ G hogy Alice
  4. Alice kiszámítja a megosztott titkot k =(ob )a ∈ G
  5. Bob kiszámítja a megosztott titkot k =(oa )b ∈ G

A protokoll biztonsága a keresés keménységétől függ k =gab adott g, ga, gb. Ezt hívják Számítás Diffie-Hellman feltevés (CDH). Az a hipotézis, hogy a CDH nehezen megoldható, feltételezi, hogy a diszkrét logaritmus feladat nehéz megoldani.

Ebben a sémában, bár a megosztott titok biztonságban van a lehallgatás ellen, nincs garancia a kicserélt adatok eredetére. Ahhoz, hogy az interakció biztonságos legyen, Alice-nek és Bobnak valahogy igazolniuk kell egymásnak személyazonosságukat.

Kölcsönös hitelesítés és digitális aláírás

A kézírásos aláírás általában a dokumentum tartalmának elismerésére és elfogadására szolgál. Az aláírást csak az aláíró tudja felmutatni, de bárki, aki „tudja”, hogy néz ki az aláírás, ellenőrizheti, hogy a dokumentumot a megfelelő személy írta-e alá.

Bár hasonló tulajdonságokkal rendelkezik, a digitális aláírás további erős garanciákat nyújt az aszimmetrikus kriptográfia kihasználásával:

  • Hitelesség: bárki ellenőrizheti, hogy az üzenetet a megadott nyilvános kulcsnak megfelelő privát kulccsal írták-e alá.
  • Letagadhatatlanság: az aláíró nem tagadhatja, hogy aláírta és elküldte az üzenetet.
  • Sértetlenség: az üzenet nem változott az átvitel során.

Most, amíg ismerjük és megbízunk benne levelezőnknél minden üzenet hitelességét ellenőrizni tudjuk digitális aláírásuk ellenőrzésével.
A legtöbb valós esetben azonban vagy nem ismerjük közelről a levelezőnket, vagy biztonsági okokból rendszeresen cserélnie kell a privát/nyilvános kulcspárt. Ez további ellenőrzési és bizalomszintet igényel az alábbi formában tanúsítványok, amelyek egy entitás leírását és nyilvános kulcsukat tartalmazzák.

Minden tanúsítványt egy szülő nyilvános kulcs ír alá. Ha rendelkezünk egy gyökértanúsító hatósággal (vagy Root CA), amelyben mindig megbízunk, akkor egymás utáni digitális aláírások felhasználásával bizalmi láncot hozhatunk létre.

Elliptikus görbék: Következő szintű nyilvános kulcsú kriptográfia

Az elliptikus görbe kriptográfia (ECC) a nyilvános kulcsú kriptográfia egyik alterülete, amely elliptikus görbék kriptográfiai alkalmazásokhoz, például titkosításhoz vagy aláírási sémákhoz való használatából áll. 
A jelenleg ismert matematika alapján az ECC lényegesen biztonságosabb alapot nyújt, mint a korábbi nyilvános kulcsú kriptográfiai rendszerek RSA.

Azonos biztonsági szint mellett az ECC kisebb kulcshosszúságot foglal magában, mint a többi aszimmetrikus kriptorendszer, ami jó választássá teszi korlátozott erőforrásokkal rendelkező beágyazott rendszerek számára.
Ha többet szeretne tudni, ezt a cikket segíthet az elliptikus görbék jobb megértésében.

Elliptikus görbe sorrendje
Egy elem sorrendje g a Diffie-Hellman kulcscsere fontos paramétere. Ha a csoport elliptikus görbe, akkor az elem egy pont, és a sorrendje az, hogy hányszor adható hozzá önmagához, mielőtt körbejárná a kezdeti értékét.
Ne feledje, hogy ennek az összeadásnak semmi köze a valós számok szokásos összegéhez, de hasonló additív tulajdonságokkal rendelkezik.

Vegyük az elliptikus görbét E y2 =x3 +2x +3 a mező fölött 𝔽97 mint például. Ezt diszkrét függvényként az alábbi ábra pontjai ábrázolják. A lényegre fogunk koncentrálni P =(3, 6) és annak minden többszöröse.

5 után látjuk.P, visszatértünk az elejére, és ugyanazokat a pontokat találtuk el, mint korábban. Nem számít, mekkora a skalár értéke P megszorozzuk, akkor mindig elérjük az 5 kezdőpontunk valamelyikét.
Így a sorrend P 5, és az általa generált alcsoport pontosan 5 pontot tartalmaz. A kriptográfiai alkalmazásoknál azonban a sorrend jóval nagyobb, mint 5, ami növeli a véletlenszerűséget.

Keverje össze az egészet: ECDH hitelesítéssel

Most már minden eszközzel rendelkezünk, ami egy nagyszerű kulcscsere protokoll létrehozásához szükséges:  Diffie-Hellman elliptikus görbe (ECDH).

Az ECDH egy szabványos kriptográfiai séma, amely megvalósítja a fentebb leírt Diffie-Hellman kulcscserét, elliptikus görbe kriptográfia használatával a kulcspárok és a megosztott titok generálására.

Hitelesített ECDH kulcscsere

Egy elliptikus görbe és a generáló pont kiválasztásával kezdődik. A két fél ezután megbízható tanúsítványokat cserél, ami lehetővé teszi számukra, hogy ellenőrizzék saját nyilvános kulcsaik hitelességét. A hitelesítés után létrehozhatnak egy k megosztott titkos kódot, amely a következőképpen kerül kiszámításra:

k = dA . dB . G
dA: Alice privát kulcsa
dB: Bob privát kulcsa
G: EK pont

A előre titkolózás tulajdonság esetén mind Alice, mind Bob kulcspárja efemer legyen, azaz a helyszínen generálódnak és a protokoll egyetlen végrehajtására használják fel. Egy elliptikus görbéről, Diffie-Hellman efemerálról (ECDHE) beszélünk. Ebben a forgatókönyvben az eszköz statikus kulcsai és a HSM-ek által aláírt efemer kulcsok lehetővé teszik a kulcsok erős hitelesítését. Még ha a statikus kulcsokhoz való jogosulatlan hozzáférés is előfordulna a jövőben, az nem biztosít visszafejtési képességet az átmeneti kulcsok által védett cserék számára.

Ezen túlmenően a protokollban jelentős fejlesztést hajtottunk végre azáltal, hogy elrejtettük az eszközök statikus kulcsait a biztonságos csatornán belül. Ez az óvintézkedés megakadályozza, hogy a támadók láthatóvá váljanak az eszközök statikus tanúsítványán, ami viszont a biztonsági mentési/visszaállítási műveletek során használt egyedi azonosítók kiszivárgásához vezethet.

Vissza a Ledger Recoverhez: A mag utazása

Rendben, ideje megállni egy percre.

Nagyon sok témával foglalkoztunk, mind a biztonsággal, mind a matematikával kapcsolatban, és az eredmény egy olyan protokoll, amely biztonságosan kommunikál bármely nem biztonságos hálózaton. Foglaljuk össze az eddig látottakat:

Két entitás biztonságos kommunikációt folytathat egy nem biztonságos csatornán, ha megállapodnak a egyedi titok köszönhetően a ECDHE, amely a Diffie-Hellman kulcsszerződési protokoll megvalósítása, amely azt használja efemer billentyűk hogy megvédje a titkot. Minden entitás képes rá ellenőrizze a valódiságot tudósítójuktól kezdőbetűnek köszönhetően Tanúsítvány ellenőrzése.

A Ledger Recover esetében négy biztonságos csatornát hoztunk létre a Secure Channel Protocol használatával. Ezek a csatornák csatlakoztatják az eszközt az egyes biztonsági mentési szolgáltatókhoz és a hangszerelőhöz, amelyek mindegyike fel van szerelve hardverbiztonsági modulokkal (HSM).

Minden szereplő megtartja személyes tanúsítványát, amelyet egy Ledger Certificate ír alá, amely a bizalmi lánc gyökereként működik. Amikor a felhasználó eszköze először továbbítja a biztonsági mentés szándékát az Orchestratornak, hitelesített ECDHE-t kezdeményez. Ezek alatt mTLS A munkamenetek során az Orchestrator olyan információkat továbbít, amelyek a jövőbeni biztonságos csatornákat a felhasználó adott biztonsági mentési kérelméhez kötik, valamint a felhasználó személyazonosságát, amelyet a mag későbbi visszaállítása során érvényesítésre kérnek.

Titkok védelme HSM-ekkel
Bármennyire is igyekszünk elkerülni, időnként szükség van a titkok tárolására és feldolgozására a szervereken. Ez kockázatos lehet, mivel a szerverek védelme és a hozzáférésük nem triviális feladat. Ennek a kockázatnak a csökkentése érdekében a biztonságot értékelő vállalatok és iparágak használják Hardver biztonsági modulok. Ezek speciális hardverek, amelyek védik a kriptográfiai kulcsokat és biztosítják a kriptográfiai feldolgozást. A HSM-ekről bővebben a blogsorozat későbbi részeiben fogunk beszélni.

Minden készen áll, hogy végre végrehajtsuk az egész művelet legkritikusabb részét: a felhasználó magjának három részesedésének továbbítása.

Ismét új biztonságos csatornákat hozunk létre, de ezúttal a felhasználó Ledger eszköze és a biztonsági mentési szolgáltatók HSM-jei között. közvetlenül. A magmegosztásokat egy végponttól végpontig titkosított csatornán továbbítják a végső tárolási helyükre, miközben garantálják, hogy a megfelelő célhoz érnek (itt mutatkozott be a Pedersen Secret Sharing ellenőrizhetősége rész 1 hasznos).
A felhasználó eszköze egyenként hitelesíti a biztonsági mentési szolgáltatók HSM-jeit, és a biztonsági mentési szolgáltatók tudják, hogy az egyedi hivatalos Ledger eszközzel folytatnak cserét, amely ezt a biztonsági mentési kérelmet kezdeményezte.
A felhasználó eszközén és a biztonsági mentési szolgáltatók HSM-jein kívül soha senki nem látja a kölcsönösen hitelesített biztonságos csatornák szimmetrikus kulcsaival titkosított magmegosztásokat, még az Orchestrator sem.

Biztonságosan fogadta… és tárolta?

Ebben a részben több új koncepciót is bevezettünk, amelyek közül néhány egészen technikai jellegű. Ezen koncepciók mindegyike szükséges egy biztonságos átvitel létrehozásához, amely garantálja az adatcsere titkosságát és integritását. A hálózat biztonságától függetlenül, most már elküldhetjük titkos megosztásainkat anélkül, hogy félnénk attól, hogy manipulálják vagy elfogják őket. Ez elég frissítés!

Az egész folyamatot megbízható kriptográfia és biztonságos hardver támogatja, a Ledger hardvereszköz és az egyes biztonsági mentési szolgáltatók tulajdonában lévő HSM-ek formájában.

Itt az ideje, hogy továbblépjünk a magrészvények visszaszerzésére! Csak annyit kell tennünk, hogy megkérjük a mentési szolgáltatókat, hogy küldjék vissza nekünk az infrastruktúrájukon tárolt megosztásokat…

De várjon: pontosan hogyan tárolják ezeket a nagyon érzékeny adatokat? Nem tenne jót, ha a legbiztonságosabb kommunikációs csatornáink lennének, de a tartalék szolgáltatóink csak sima szövegben tartották a megosztásokat, és könyörögtek, hogy lopják el.

Tehát mielőtt a gyógyulásról beszélnénk – ígérem, eljutunk oda! –, egy gyors kitérőt kell tennünk a 3. részben, hogy megbeszéljük a nyugalmi magrészvényeink biztonságát. Maradjon velünk!

Időbélyeg:

Még több Főkönyv