Introduktion
Offentlig nyckelkryptografi (Public key cryptography/PKC), även känd som asymmetrisk kryptografi, är ett ramverk som använder både en privat och en offentlig nyckel, i motsats till den enda nyckeln som används i symmetrisk kryptografi. Användningen av nyckelpar ger PKC en unik uppsättning egenskaper och funktioner som kan användas för att lösa utmaningar som finns med andra kryptografiska tekniker. Denna form av kryptografi har blivit ett viktigt steg mot modern datasäkerhet, liksom en kritisk komponent i det växande ekosystemet med kryptovalutor.
Hur fungerar kryptering med en offentlig nyckel?
I ett PKC-system används den offentliga nyckeln av en avsändare för att kryptera information, medan den privata nyckeln används av en mottagare för att dekryptera den. Eftersom de två nycklarna skiljer sig från varandra kan den offentliga nyckeln delas säkert utan att minska säkerheten för den privata. Varje asymmetriskt nyckelpar är unikt, vilket säkerställer att ett meddelande som krypteras med en offentlig nyckel endast kan läsas av den person som har motsvarande privata nyckel.
Eftersom asymmetriska krypteringsalgoritmer genererar nyckelpar som är matematiskt länkade, är deras nyckellängder mycket längre än de som används i symmetrisk kryptografi. Denna större längd – vanligtvis mellan 1 024 och 2 048 bitar – gör det extremt svårt att beräkna en privat nyckel från dess offentliga motsvarighet. En av de vanligaste algoritmerna för asymmetrisk kryptering som används idag är känd som RSA.
I RSA-system genereras nycklar med hjälp av en modul som uppnås genom att multiplicera två tal (ofta två stora primtal). I stort sett genererar modulen två nycklar (en offentlig som kan delas och en privat som ska hållas hemlig). RSA-algoritmen beskrevs först 1977 av Rivest, Shamir och Adleman (därav RSA) och är fortfarande en viktig komponent i krypteringssystem med offentlig nyckel.
PKC som ett krypteringsverktyg
Kryptering med offentlig nyckel löser ett av de långvariga problemen med symmetriska algoritmer, vilket är kommunikationen av nyckeln som används för både kryptering och dekryptering. Att skicka den här nyckeln över en osäker anslutning riskerar att exponera den för en tredje part, som sedan skulle kunna läsa alla meddelanden som krypterats med den delade nyckeln. Även om kryptografiska tekniker (såsom nyckelutbytesprotokollet Diffie-Hellman-Merkle) finns för att lösa detta problem är de fortfarande sårbara för attacker. I kryptering med offentlig nyckel kan nyckeln som används för kryptering däremot delas säkert över alla anslutningar. Som ett resultat av detta ger asymmetriska algoritmer en högre skyddsnivå jämfört med de symmetriska.
Generera digitala signaturer
En annan tillämpning av asymmetriska kryptografialgoritmer är att autentisera data genom användningen av digitala signaturer. I grund och botten är en digital signatur en hash som är skapad med hjälp av data i ett meddelande. När meddelandet skickas kan signaturen kontrolleras av mottagaren med hjälp av avsändarens offentliga nyckel. På så sätt kan denne autentisera källan till meddelandet och se till att det inte har manipulerats. I vissa fall tillämpas digitala signaturer och kryptering tillsammans, vilket innebär att själva hashen kan krypteras som en del av meddelandet. Det bör dock noteras att alla digitala signatursystem inte använder krypteringstekniker.
Begränsningar
Även om tekniken kan användas för att förbättra datasäkerheten och ge verifiering åt meddelandets integritet har PKC vissa begränsningar. På grund av de komplexa matematiska operationerna som är involverade i kryptering och dekryptering kan asymmetriska algoritmer vara ganska långsamma när de tvingas hantera stora mängder data. Denna typ av kryptografi är även starkt beroende av att den privata nyckeln faktiskt förblir hemlig. Om en privat nyckel av misstag delas eller exponeras, äventyras säkerheten för alla meddelanden som har krypterats med motsvarande offentliga nyckel. Det är också möjligt för användare att av misstag tappa bort sina privata nycklar och i så fall blir det omöjligt för dem att komma åt krypterade data.
Tillämpningar av kryptering med offentlig nyckel
Denna typ av kryptografi används av många moderna datorsystem för att säkra känslig information. E-postmeddelanden kan till exempel krypteras med hjälp av krypteringstekniker med en offentlig nyckel för att hålla innehållet konfidentiellt.
Secure Sockets Layer (SSL)-protokollet som möjliggör säkra anslutningar till webbplatser använder även de asymmetrisk kryptografi. PKC-system har till och med undersökts som ett sätt att tillhandahålla en säker elektronisk röstningsmiljö, som potentiellt skulle göra det möjligt för väljare att delta i val från sina hemdatorer.
PKC har även en framträdande roll inom blockkedje- och kryptovaluta-teknologin. När en ny kryptovalutaplånbok har konfigurerats genereras ett par nycklar (offentliga och privata). Plånboksadressen genereras med hjälp av den offentliga nyckeln och den kan delas säkert med andra. Den privata nyckeln används å andra sidan för att skapa digitala signaturer och verifiera transaktioner och måste därför hållas hemlig.
När en transaktion har verifierats genom att bekräfta hashen i den digitala signaturen kan den transaktionen läggas till i blockkedjans huvudbok. Detta system för digital signaturverifiering säkerställer att endast den person som har den privata nyckeln associerad med motsvarande kryptovalutaplånbok kan flytta tillgångarna.
Det bör noteras att den asymmetriska kryptografin som används i kryptovaluta-applikationer skiljer sig från de som används för datasäkerhetsändamål. Bitcoin och Ethereum använder till exempel en specifik algoritm för att verifiera transaktioner, känd som Elliptic Curve Digital Signature Algorithm (ECDSA). ECDSA skapar även digitala signaturer utan användning av kryptering. Detta innebär att blockkedjan inte behöver kryptering, till skillnad från vad många tror.
Sammanfattningsvis
Med allt från datasäkerhet till verifiering av kryptovalutatransaktioner spelar kryptering med offentlig nyckel en viktig roll för att säkra moderna digitala system. Genom att använda ihopparade offentliga och privata nycklar löser asymmetriska kryptografialgoritmer grundläggande säkerhetsproblem som presenteras som symmetriska chiffer. Även om PKC har använts i många år, utvecklas nya användningsområden och applikationer regelbundet, särskilt inom blockkedje- och kryptovalutavärlden.