Hvad er Rivest Shamir Adleman (RSA)?
Rivest Shamir Adleman (RSA) er et asymmetrisk kryptosystem med offentlige nøgler, der bruges til at låse og låse op for data med to forskellige nøgler. Én nøgle deles, den anden holdes hemmelig. Forestil dig det som en hængelås, du kan give andre til at låse med, mens kun du har nøglen, der åbner den.
»Bitcoin bruger RSA.« Ikke helt. Mange blockchains bruger elliptiske kurver for fart og mindre nøgler. Rivest Shamir Adleman (RSA) driver dog stadig meget af internettets infrastruktur, for eksempel når browsere kommunikerer med servere.
Hvordan Rivest Shamir Adleman (RSA) virker
Her er en kort gennemgang. Du offentliggør én nøgle, så folk kan låse beskeder til dig, og du beholder den tilsvarende private nøgle til at åbne dem. Alle kan dele deres public-key, men kun ejeren kan åbne det, der sendes.
- Start: Generér to store tilfældige primtal, kombiner dem til et modul, og vælg to relaterede eksponenter.
- Send: Nogen tager dine offentlige detaljer og opløfter deres besked til en potens modulo dit modul for at lave en krypteret tekst.
- Åbn: Du opløfter den krypterede tekst til din hemmelige eksponent, og den oprindelige besked dukker frem.
- Signer: For at bevise at du skrev noget, beregner du beskedens hash og behandler den med din private nøgle for at skabe en signatur.
- Tjek: Alle kan verificere den signatur med dine offentlige oplysninger, ingen privat chat nødvendig. Ja, det er idéen.
Det er asymmetrisk med vilje, ligesom en dørvagt med gæsteliste og en hovednøgle.
Hvorfor Rivest Shamir Adleman (RSA) betyder noget
Hvorfor bør du interessere dig for Rivest Shamir Adleman (RSA)? Det er grunden til, at din browser kan kommunikere med børser uden at lække hemmeligheder, og hvorfor opdateringer og beskeder kan verificeres uden personlig kontakt.
- Fordel: Del én nøgle offentligt og hold den anden skjult, hvilket gør opsætning nem og giver stærk sikkerhed.
- Perspektiv: Blockchains vælger ofte elliptiske kurver for fart, men RSA bruges stadig i meget af den sikre webtrafik og i kodeunderskrifter, som kryptoapps er afhængige af.
- Relevans: Du møder det i TLS, VPNer, firmwareopdateringer og custody backends. Og ja, del aldrig din private-key.
Til kryptering, brug RSA med OAEP padding. Til signering, brug RSA med PSS. Disse valg er moderne standarder, som du vil være taknemmelig for senere.
Nøgleegenskaber for Rivest Shamir Adleman (RSA)
Her er hvad der gør det særligt:
- Asymmetri: Én nøgle låser, den anden åbner, hvilket gør sikker udveksling med ukendte parter mulig.
- Faktorisering: Sikkerheden hviler på sværheden i at faktorisere et stort produkt af to primtal.
- Brug: Virker til kryptering og til digital signatures, selv om moderne kæder ofte foretrækker elliptiske kurver.
- Størrelse: Nøgler er store, typisk 2048 bit eller mere, hvilket påvirker hastighed og båndbredde.
- Kompatibilitet: Bredt understøttet i browsere, HSMs og ældre protokoller, så det er udbredt.
Varianter
Hovedvarianter du kan støde på:
- OAEP: Padding til kryptering, der beskytter mod angreb rettet mod beskedstruktur.
- PSS: Probabilistisk schema til signering, som forbedrer sikkerheden i forhold til ældre formater.
- PKCS1: Ældre formateringsregler, du stadig ser i certifikater og gamle biblioteker.
- KEM: Nøgleindkapslingsteknik, der pakker en symmetrisk nøgle med RSA.
Nøglestørrelse og padding betyder noget. En stærk algoritme med svage parametre er som en luksuslås på en papdør.
Eksempel
Din login på en børs indlæses over TLS, hvor serveren præsenterer et RSA-certifikat, din browser kontrollerer signaturen, og først derefter indtaster du din adgangskode.
Sjov kendsgerning
Rivest, Shamir og Adleman offentliggjorde RSA i 1977 og udsatte derefter et tal som udfordring til faktorisering. En af de klassiske udfordringer tog år og meget regnekraft at knække. Nogen trykte endda koden på en T-shirt for at gøre grin med eksportreglerne.
Afrunding
Se Rivest Shamir Adleman (RSA) som en hængelås med to nøgler, der lader fremmede sende dig hemmeligheder og giver dig mulighed for at bevise, at du er den, du siger, uden at mødes først. Rent, enkelt, effektivt.
