Vad är RSA-kryptografi? Komplett guide till denna krypteringsalgoritm

RSA-kryptografi

Kryptografi har använts i civilisationer i olika format i tusentals år. Från de gamla egyptierna till det moderna Internet är användning av kryptografi för att kryptera och dekryptera meddelanden ett viktigt verktyg för kommunikation.

RSA-kryptografi (RSA-algoritmen för att vara exakt) är den mest allestädes närvarande asymmetriska krypteringsalgoritmen i världen. Möjligt genom ett antal kryptografiska och matematiska genombrott, alla som använder Internet använder RSA-kryptografi i någon form.

RSA-kryptografi

De flesta kryptovalutor använder en liknande typ av asymmetrisk kryptering som RSA, känd som Elliptic Curve Cryptography. Även om de är olika bygger de båda på liknande begrepp och förståelse för RSA är viktigt för att främja en förståelse för kryptografi som används i kryptovalutanätverk.

Kryptografisk bakgrund och symmetrisk vs asymmetrisk kryptografi

Fram till 1970-talet hade kryptografi främst baserats på användningen av symmetriska nycklar. I symmetriska nyckelalgoritmer använder två användare som vill kommunicera ett meddelande med varandra samma kryptografiska nycklar för både kryptering av klartext och dekryptering av krypteringstexten. Nycklarna representerar en delad hemlighet mellan de två parterna och kan användas som en privat kommunikationsform. Det finns dock några inneboende problem med denna design som leder till några allvarliga nackdelar med dess användning.

Till exempel måste båda parter känna till den hemliga nyckeln för att kryptera och dekryptera meddelandet. Utanför mötet personligen för att utbyta denna information finns det en betydande mängd kommunikationsomkostnader som behövs för att uppnå detta privat genom medier som inte är säkra. Tredjeparter som tittar på dessa kanaler kanske kan få den hemliga nyckeln och därmed blir krypteringsmetoden äventyrad. Vidare är begreppet kryptering av symmetrisk nyckel inte skalbart. Om du vill skicka krypterade meddelanden till flera personer måste du memorera en hemlig nyckel för var och en av dessa kommunikationslinjer. Uppenbarligen blir detta snabbt obekvämt och är helt klart inte den bästa modellen att använda i kryptovalutanätverk där värde utbyts.

Lösningen på detta kom i form av så kallad asymmetrisk kryptering, eller mer populärt kallad offentlig nyckelkryptografi. Asymmetrisk kryptering använder två nycklar, en offentlig nyckel och en privat nyckel. I den här modellens mest grundläggande form kan en användare publicera en offentlig nyckel, med vilken vem som helst kan använda för att skicka personen ett krypterat meddelande och endast den person som publicerade den offentliga nyckeln och har motsvarande privata nyckel kan dekryptera och visa detta meddelande. Användningen av en nyckel avbryter användningen av den andra och nycklar för att inte behöva utbytas mellan parter som vill kommunicera.

Den asymmetriska krypteringsmodellen möjliggjordes av två lysande principer som kom till följd av ett genombrott av den brittiska matematikern James Ellis 1970. Ellis beskrev en idé där kryptering och dekryptering är inversa operationer av varandra baserat på två olika nycklar..

James Ellis

James Ellis, bild från The Telegraph.

Konceptet representeras vanligtvis av ett hänglås och en nyckel, med hänglåset som representerar den offentliga nyckeln och nyckeln representerar den privata nyckeln. För att praktiskt kunna använda denna teori utvecklades två principer.

Trapdoor-funktionen

En dörrfunktion är ett mycket viktigt begrepp i kryptografi där det är trivialt att gå från ett tillstånd till ett annat tillstånd, men att beräkna i motsatt riktning genom att gå tillbaka till det ursprungliga tillståndet blir omöjligt utan speciell information, känd som “fälldörr”.

Den mest kända falldörrfunktionen idag, det är grunden för RSA-kryptografi, kallas Primtalsfaktorisering. I huvudsak är primfaktorisering (även känd som heltalsfaktorisering) konceptet i talteori att sammansatta heltal kan sönderdelas i mindre heltal. Alla sammansatta tal (icke-primtal) som är uppdelade till deras mest grundläggande består av primtal. Denna process är känd som primär faktorisering och har allvarliga konsekvenser när den tillämpas på kryptografi.

primär nedbrytning

Prime Factorization, Bild som används från Wikipedia

I grund och botten blir primfaktorisering av extremt stora primtal omöjliga att beräkna på grund av den stora mängden försök och fel som krävs för att framgångsrikt faktorera numret till dess mest grundläggande komponenter. För närvarande finns ingen effektiv faktoriseringsalgoritm för att utföra detta.

RSA och hur den använder primärfaktorisering beskrivs i ett senare avsnitt, men först måste vi förstå Diffie-Hellman Key Exchange.

Diffie-Hellman Key Exchange

Diffie-Hellman-nyckelutbytet är ett av de första krypteringsprotokollen för offentliga nycklar och möjliggör i grunden säkert utbyte av kryptografiska nycklar över ett offentligt medium. För enkelhets skull är det mycket mer trivialt med abstrakta begrepp jämfört med ren matematik att försöka konceptualisera Diffie-Hellman Key Exchange och följande avsnitt om hur RSA-algoritmen fungerar..

Det vanligaste exemplet som används för att konceptualisera Diffie-Hellman Key Exchange är känt som Secret Color Exchange.

Diffie-Helman Key Exchange

Diffie-Helman Key Exchange, bilden används från Wikipedia

Bilden ovan representerar en kommunikationslinje mellan Alice och Bob över en offentlig kanal där Eve kan lyssna på allt som kommuniceras offentligt mellan Alice och Bob. Så, hur kan Alice och Bob kommunicera ett privat meddelande med asymmetrisk kryptering utan att uttryckligen utbyta den informationen över det offentliga mediet?

De utbyter hemlig information med varandra utan att faktiskt dela den. Processen fungerar enligt följande:

Steg 1

  • Alice och Bob är överens om att gul är den vanliga färgen som ska användas. Denna information sänds över den offentliga kanalen så att Eve också vet detta.
  • Gul representerar den offentliga nyckeln.
  • Alice bestämmer i hemlighet att hon också ska använda blått tillsammans med gult och Bob bestämmer i hemlighet att han ska använda rött med gult.
  • Den blå som används av Alice och den röda som används av Bob representerar deras hemliga nycklar.

Steg 2

  • Därefter blandar både Alice och Bob sina hemliga färger med gult för att skapa en kompositfärg.
  • Alice’s mix skapar Green och Bob’s mix skapar Orange.
  • Nu skickar både Alice och Bob varandra sina kompositfärger.
  • Eve får också dessa färger men står inför ett problem, dessa kompositfärger representerar en lucka.
  • Det är enkelt att kombinera två färger för att göra en tredje färg, men det är omöjligt att vända detta. Det är mycket svårt att avgöra vilka färger som användes för att skapa den tredje färgen från att endast ha den tredje färgen och originalet Gult.

Steg 3

  • Alice och Bob blandar sedan in sina hemliga färger med de mottagna kompositfärgerna, vilket resulterar i följande.
  • Alice blandar blått med kompositen Orange från Bob.
  • Bob blandar rött med kompositen Green från Alice.
  • Båda blandningarna resulterar i brunt.

Det är hemligheten med Diffie-Hellman Key Exchange. Även om både Alice och Bob slutade med Brown bytte de faktiskt aldrig ut den färgen, och Eve är kvar utan nödvändig information om de hemliga färgerna för att kunna beräkna det hemliga meddelandet (Brown).

Exemplet ovan är en mycket enkel visualisering av hur utbytet fungerar. Med tillämpad matematik kan säker säkerhet och integritet för meddelanden uppnås genom RSA-kryptografi med primärfaktorisering som dörr.

Hur fungerar RSA-algoritmen?

RSA-algoritmen fungerar genom att använda primfaktoriseringsluckan och Diffie-Hellman Key Exchange för att uppnå asymmetrisk kryptering. I grund och botten är RSA-kryptografi beroende av svårigheten med primär faktorisering som säkerhetsmetod. Med hjälp av ett mycket förenklat exempel med begränsad matematik som beskrivs innehåller RSA-algoritmen fyra steg.

  1. Nyckelgenerering – Under detta steg kan en användare använda en slumptalsgenerator eller helt enkelt välja två mycket stora primtal (kallas p och q). Dessa siffror måste hållas hemliga. Beräkna n = pq där “n” är modulen för både offentliga och privata nycklar och dess längd är känd som nyckellängden. Gör “n” offentligt. För nyckelstorlekar som är lika med eller större än 1024 bitar finns det ingen effektiv metod för att lösa denna algoritm (faktorisering av det mycket stora antalet “n”) effektivt. Till och med den största superdatorn i världen skulle ta tusentals år att lösa den. Detta är känt som RSA-problemet och skulle lösa det skulle äventyra alla RSA-baserade kryptosystem.
  2. Nyckeldistribution – Bob vill skicka Alice hemlig information så att följande steg inträffar.
  1. Bob måste känna Alis offentliga nyckel för att kryptera meddelandet.
  2. Alice måste känna sin privata nyckel för att dekryptera meddelandet.
  3. För att Bob ska kunna skicka sitt krypterade meddelande skickar Alice sin offentliga nyckel till Bob.
  4. Alice distribuerar aldrig sin privata nyckel.
  • Kryptering – När Bob har skaffat Alis offentliga nyckel kan han skicka ett meddelande (M) till Alice. Först förvandlar han (M) (vid detta tillfälle ett klartextmeddelande) till ett heltal (m) genom att använda ett överenskommet vadderingsschema. Han beräknar sedan krypteringstexten med hjälp av Alis offentliga nyckel och överför (c) till Alice.
  • Dekryptering – Alice kan återställa meddelandet (m) från krypteringstext (c) genom att använda sin privata nyckel. Hon kan sedan återställa det ursprungliga meddelandet (M) genom att vända vadderingsschemat från (m).
  • En djupare förklaring av de matematiska operationerna som används i RSA finns här, men omfattas inte av denna artikel.

    Dessutom möjliggör RSA-kryptering digitala signeringsmeddelanden, vilket är avgörande för kryptovalutor och är en nyckelkomponent i Bitcoins UTXO-transaktionsmodell. Alice kan digitalt underteckna ett meddelande till Bob för att verifiera att hon skickade det (genom att verifiera att hennes privata nyckel användes) genom att producera ett hashvärde för meddelandet och bifoga det till meddelandet. Detta värde kan verifieras av Bob som använder samma hashalgoritm i samband med Alice: s offentliga nyckel och jämför det resulterande hashvärdet med meddelandets faktiska hashvärde.

    Slutsats

    RSA-kryptering är den mest använda asymmetriska krypteringsmetoden i världen på grund av dess förmåga att tillhandahålla en hög krypteringsnivå utan någon känd algoritm existerande ännu för att kunna lösa den. Baserat på några lysande genombrott inom kryptografi och matematik inklusive Diffie-Hellman Key Exchange och trapdoor-funktion har RSA-kryptering blivit viktigast för säker kommunikation över hela världen.

    Mike Owergreen Administrator
    Sorry! The Author has not filled his profile.
    follow me