Security+ Academy · Lektion

Asymmetrisk kryptering och nyckelpar

Förstå RSA och elliptisk kurvkryptografi samt hur par av offentliga och privata nycklar möjliggör säker kommunikation utan att hemligheter behöver delas.

Lektion 2 av 413 steg

Asymmetrisk kryptering och nyckelpar är en gratis lektion i Security+ Academy på CoddyKit. Detta är lektion 2 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för Security+ Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Security+ Academy innehåller totalt 4 lektioner.

Så fungerar asymmetrisk kryptering

Asymmetrisk kryptering (även kallad public-key-kryptografi) använder matematiskt länkade nyckelpar: en publik nyckel som fritt kan distribueras och en privat nyckel som måste hållas hemlig. Data som krypterats med den publika nyckeln kan endast dekrypteras med den motsvarande privata nyckeln — och tvärtom. Denna eleganta konstruktion löser problemet med nyckeldistribution vid symmetrisk kryptering: Ni kan dela Er publika nyckel öppet utan att äventyra säkerheten, eftersom endast Er privata nyckel kan dekryptera meddelanden som skickats till Er.

RSA: den mest använda algoritmen

RSA (Rivest-Shamir-Adleman) är den mest använda asymmetriska krypteringsalgoritmen och uppfanns 1977. Säkerheten bygger på den matematiska svårigheten att faktorisera produkten av två stora primtal. RSA stöder nyckellängder på 1024, 2048 och 4096 bitar — RSA med 2048 bitar är den aktuella minimirekommendationen, medan 4096 bitar används för långsiktig säkerhet. RSA används för nyckelutbyte i TLS (även om det i allt högre grad ersätts av ECDHE), digitala signaturer i certifikat och S/MIME-e-postkryptering.

# Generate an RSA 2048-bit key pair
openssl genrsa -out private.pem 2048

# Extract the public key
openssl rsa -in private.pem -pubout -out public.pem

# Encrypt with public key (only private key can decrypt)
openssl rsautl -encrypt -inkey public.pem -pubin -in message.txt -out encrypted.bin

# Decrypt with private key
openssl rsautl -decrypt -inkey private.pem -in encrypted.bin

Elliptisk kurvkryptografi (ECC)

Elliptisk kurvkryptografi (ECC) uppnår motsvarande säkerhet som RSA med betydligt kortare nyckellängder. En ECC-nyckel på 256 bitar ger en säkerhet som kan jämföras med en RSA-nyckel på 3072 bitar. Denna effektivitet gör ECC idealiskt för resursbegränsade miljöer, till exempel mobila enheter, IoT-maskinvara och TLS-anslutningar där prestanda är viktigt. ECC bygger på den matematiska svårigheten hos problemet med diskreta logaritmer på elliptiska kurvor. Vanliga ECC-algoritmer omfattar ECDSA (Elliptic Curve Digital Signature Algorithm) och ECDH (nyckelutbyte). TLS 1.3 kräver ECC-baserat nyckelutbyte.

# Generate an ECC key pair using the P-256 (secp256r1) curve
openssl ecparam -name prime256v1 -genkey -noout -out ec_private.pem

# Extract public key
openssl ec -in ec_private.pem -pubout -out ec_public.pem

# ECC 256-bit ~ RSA 3072-bit in security strength
# Much faster operations, smaller keys = faster TLS handshakes

Användning av publika nycklar: krypteringens riktning

Det är viktigt att förstå riktningen för nyckelanvändningen inför Security+-provet. Det finns två olika användningsfall där nyckelrollerna är omvända. Vid kryptering för konfidentialitet krypterar avsändaren med mottagarens publika nyckel, och endast mottagaren kan dekryptera med sin privata nyckel. Vid digitala signaturer för autentisering krypterar undertecknaren hashen med sin egen privata nyckel, och vem som helst kan verifiera den med undertecknarens publika nyckel. Att blanda ihop dessa riktningar är ett vanligt misstag på provet — kom ihåg: publik nyckel krypterar, privat nyckel dekrypterar; privat nyckel signerar, publik nyckel verifierar.

Digitala signaturer med asymmetriska nycklar

Digitala signaturer använder asymmetrisk kryptografi för att tillhandahålla autentisering, integritet och oavvislighet. Processen är följande: (1) avsändaren beräknar en hash av meddelandet, (2) krypterar hashen med sin privata nyckel för att skapa signaturen och (3) skickar meddelandet och signaturen tillsammans. Mottagaren: (4) dekrypterar signaturen med avsändarens publika nyckel för att återfå hashen, (5) beräknar själv hashen för det mottagna meddelandet och (6) jämför de två hasharna — en matchning bevisar att meddelandet är äkta och oförändrat.

# Sign a document with ECDSA private key
openssl dgst -sha256 -sign ec_private.pem -out document.sig document.txt

# Verify the signature with the public key
openssl dgst -sha256 -verify ec_public.pem -signature document.sig document.txt
# Output: Verified OK (or Verification Failure)

Varför asymmetrisk kryptering är långsam

Asymmetrisk kryptering är beräkningsmässigt krävande jämfört med symmetrisk kryptering — vanligtvis 100 till 1 000 gånger långsammare. Det beror på att asymmetriska algoritmer utför komplexa matematiska operationer (modulär exponentiering för RSA och punktmultiplikation på kurvor för ECC) på stora tal. Därför används asymmetrisk kryptering aldrig för att kryptera stora datamängder direkt. I stället används den för att utbyta en liten symmetrisk sessionsnyckel på ett säkert sätt, och den symmetriska nyckeln krypterar sedan själva datan. Detta hybrida tillvägagångssätt kombinerar säkerhetsfördelarna hos båda metoderna.

Generering och lagring av nyckelpar

Korrekt hantering av nyckelpar är avgörande. Privata nycklar bör genereras i en Hardware Security Module (HSM) eller förvaras i ett krypterat nyckellager och får aldrig lagras som oskyddade klartextfiler. Nyckelpar har en begränsad giltighetsperiod, varefter de måste genereras på nytt. För certifikatbaserade nyckelpar får den privata nyckeln aldrig lämna den enhet eller det HSM där den genererades. Om en privat nyckel röjs kan en angripare utge sig för att vara nyckelns ägare och dekryptera alla meddelanden som krypterats med den motsvarande publika nyckeln.

Public Key Infrastructure i sitt sammanhang

Asymmetriska nyckelpar ger bara säkerhet om Ni kan lita på att en publik nyckel faktiskt tillhör den person eller organisation som Ni tror att den tillhör. Utan en tillitsmekanism skulle en angripare kunna ersätta den avsedda mottagarens publika nyckel med sin egen — en klassisk man-in-the-middle-attack. Public Key Infrastructure (PKI) löser detta genom att en betrodd Certificate Authority (CA) signerar ett certifikat digitalt, vilket kopplar en publik nyckel till en verifierad identitet. När Ni besöker en HTTPS-webbplats verifierar Er webbläsare serverns certifikat mot en CA som den litar på och bekräftar därmed att den publika nyckeln är legitim.

Jämförelse mellan RSA och ECC

Beakta tre faktorer när Ni väljer mellan RSA och ECC. Effektivitet vad gäller nyckelstorlek: ECC på 256 bitar = RSA på 3072 bitar när det gäller säkerhet. Prestanda: ECC är betydligt snabbare, särskilt på mobila enheter och IoT-enheter. Användning: RSA har bredare stöd i äldre system, medan ECC krävs i TLS 1.3 och i allt högre grad föreskrivs av moderna säkerhetsstandarder. Båda algoritmerna betraktas fortfarande som säkra när de implementeras korrekt med aktuella rekommenderade nyckelstorlekar. Security+-provet förväntar sig att Ni känner till dessa avvägningar och när respektive algoritm är lämplig.

Kvantdatort hot mot asymmetrisk kryptering

Asymmetrisk kryptering står inför ett långsiktigt hot från kvantdatorer. Shors algoritm kan, om den körs på en tillräckligt kraftfull kvantdator, lösa faktoriseringsproblemet (och knäcka RSA) samt problemet med diskreta logaritmer (och knäcka ECC) på polynomisk tid – vilket gör dagens säkra nyckelstorlekar möjliga att knäcka. NIST har redan valt ut postkvantkryptografiska algoritmer, däribland CRYSTALS-Kyber (inkapsling av nycklar) och CRYSTALS-Dilithium (digitala signaturer), som ersättare för RSA och ECC. Organisationer som hanterar data med långvariga sekretesskrav bör börja planera övergången till postkvantkryptografi redan nu.

Användningsområden för asymmetrisk kryptering

Asymmetrisk kryptering utgör grunden för många av de säkerhetsmekanismer som används varje dag. HTTPS: TLS-handskakningen använder RSA eller ECC för att utbyta sessionsnycklar. SSH: autentisering med publika nycklar ersätter lösenord med nyckelpar. Codesignering: programvaruleverantörer signerar sin kod med privata nycklar och operativsystemet verifierar den med den publika nyckeln. S/MIME-e-post: e-post krypteras med mottagarens publika nyckel och signeras med den privata nyckeln. Bitcoin/blockkedjor: transaktioner signeras med privata ECDSA-nycklar. Genom att förstå var dessa mekanismer används i praktiken blir det lättare att sätta tentamensfrågorna i ett sammanhang.

# SSH public key authentication
# Generate ED25519 key pair (modern, faster than RSA)
ssh-keygen -t ed25519 -C 'alice@company.com'
# ED25519 is based on elliptic curves - fast and secure
# Public key goes to server: ~/.ssh/authorized_keys
# Private key stays local: ~/.ssh/id_ed25519 (protect with passphrase)

Snabbtest

Testa Er förståelse av begreppen i CompTIA Security+ (SY0-701) från den här lektionen.

Sammanfattning av lektionen

I den här lektionen har Ni lärt Er att asymmetrisk kryptering använder matematiskt sammankopplade nyckelpar, att RSA och ECC är de dominerande algoritmerna (ECC är snabbare och använder kortare nycklar), att publika nycklar krypterar för konfidentialitet och att privata nycklar signerar för autentisering. Asymmetrisk kryptering är långsam men löser problemet med nyckeldistribution. Härnäst utforskar vi Hashning och dataintegritet.

Gratis att börja

Lär dig Security+ Academy med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
30
Lektioner
120

Vanliga frågor

Är lektionen ”Asymmetrisk kryptering och nyckelpar” gratis?

Ja – du kan läsa vilka 3 lektioner som helst i lärvägen Security+ Academy, inklusive ”Asymmetrisk kryptering och nyckelpar”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i Security+ Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”Asymmetrisk kryptering och nyckelpar”?

Förstå RSA och elliptisk kurvkryptografi samt hur par av offentliga och privata nycklar möjliggör säker kommunikation utan att hemligheter behöver delas. Ni övar på Security+ Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Security+ Academy?

Du behöver inga förkunskaper. Utbildningen i Security+ Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 2 av 4.

Hur lång tid tar lektionen ”Asymmetrisk kryptering och nyckelpar”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Security+ Academy-lektionen?

Ja. Varje Security+ Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Symmetriska krypteringsalgoritmer
  2. Asymmetrisk kryptering och nyckelpar
  3. Hashning och dataintegritet
  4. Nyckelutbyte och hybridkryptering
← Tillbaka till Security+ Academy