Čo je Rivest Shamir Adleman (RSA)?
Rivest Shamir Adleman (RSA) je kryptografický systém s verejným kľúčom, ktorý sa používa na zamykanie a odomykanie dát pomocou dvoch rôznych kľúčov. Jeden kľúč zdieľa, druhý si ponechá tajný. Predstavte si to ako visací zámok, ktorý môžete niekomu odovzdať, no iba vy držíte ten jeden kľúč, ktorý ho otvorí.
„Bitcoin používa RSA.“ Nie celkom. Mnoho blockchainov používa schemy s eliptickou krivkou pre rýchlosť a menšie kľúče. Rivest Shamir Adleman (RSA) však naďalej zabezpečuje veľkú časť internetového plumingu, napríklad prehliadače komunikujúce so servermi.
Ako Rivest Shamir Adleman (RSA) funguje
Tu je krátky nástin. Zverejníte jeden kľúč, aby ľudia mohli uzamknúť správy pre vás, a vy si ponecháte zodpovedajúci tajný kľúč na ich otvorenie. Každý môže zdieľať svoj verejný kľúč, no iba vlastník môže otvoriť to, čo bolo zaslané.
- Začiatok: Vygenerujte dva veľké náhodné prvočísla, spojte ich do modulu a vyberte dva súvisiace exponenty.
- Odoslať: Niekto vezme vaše verejné údaje a svojej správe vystúpi na silu modulo vášho modulu, čím vytvorí šifru.
- Otvorenie: Tú šifru zvýšite na vašu tajnú silu a pôvodná správa vypadne.
- Podpísanie: Aby sa preukázalo, že ste niečo napísali, matematicky skontrolujete hash správy s vaším tajným kľúčom na vytvorenie podpisu.
- Kontrola: Každý môže potvrdiť tento podpis použitím vašich verejných údajov, nepotrebujete súkromný chat. Presne tak to je.
Je to zámerne asymetrické, ako dvere s barmanom na zozname hostí a s hlavným kľúčom.
Prečo naozaj ide o Rivest Shamir Adleman (RSA)
A prečo by ste sa mali o Rivest Shamir Adleman (RSA) zaujímať? Je to dôvod, prečo môže váš prehliadač komunikovať s burzami bez zverejňovania tajomstvieb a prečo môžu byť aktualizácie a správy overené bez toho, aby ste sa osobne uvádzali.
- Prínos: Zdieľajte jeden kľúč otvorene a druhý nechajte skrytý, čo znamená jednoduchú onboarding s silnou bezpečnosťou.
- Perspektíva: Blokové reťazce často uprednostňujú eliptické krivky pre rýchlosť, no RSA stále zakotvuje veľa zabezpečeného webového prevádzky a podpisovania kódu, na ktorom sú kryptoprogramy závislé.
- Relevantnosť: Nájdete ho v TLS, VPN, firmware aktualizáciách a backendoch správy. A áno, nikdy nezdieľajte svoj súkromný kľúč.
Pre šifrovanie používajte RSA s OAEP paddingom. Pre podpisovanie používajte RSA s PSS. Tieto voľby sú moderné predvolená, ktorým bude vás budúcnosť poďakovať.
Kľúčové charakteristiky Rivest Shamir Adleman (RSA)
Tu je to, čo ho robí výnimočným:
- Asymetria: Jeden kľúč zámok, druhý odomyká, čo umožňuje bezpečnú výmenu s neznámymi.
- Faktorizácia: Bezpečnosť spočíva v obtiažnosti faktorizácie veľkého produktu dvoch prvočísel.
- Použitie: Funguje pre šifrovanie aj pre digitálne podpisy, hoci moderné reťazce často uprednostňujú eliptické krivky.
- Veľkosť: Kľúče sú veľké, bežne 2048 bitov alebo viac, čo vplýva na rýchlosť a šírku pásma.
- Kompatibilita: Všeobecne podporované v prehliadačoch, HSM-ách a starších protokoloch, takže je to všade.
Variácie
Hlavné typy, na ktoré môžete natrafiť:
- OAEP: Padding pre šifrovanie, ktorý chráni proti útokom na štruktúru správy.
- PSS: Pravdepodobnostný systém na podpisovanie, ktorý zlepšuje bezpečnosť oproti starším formátom.
- PKCS1: Zastaralé pravidlá formátovania, ktoré ešte vidíte v certifikátoch a starých knižniciach.
- KEM: Trick na zabalenie kľúča, ktorý obalí symetrický kľúč pomocou RSA.
Veľkosť kľúča a padding dôležia. Silný algoritmus so slabými parametrami je ako luxusný zámok na kartónové dvere.
Príklad
Prihlásenie na výmenu beží cez TLS, kde server predstaví RSA certifikát, váš prehliadač overí podpis a až potom zadáte heslo.
Zábavný fakt
Rivest, Shamir a Adleman publikovali RSA v roku 1977, potom zverejnili číslo výzvy na factoring. Jedna z klasických výziev trvala niekoľko rokov a vyžadovala veľa výpočtov na prelomenie. Niekto si dokonca vytlačil zdroj na tričko, aby si urobil srandu z exportných pravidiel.
Zhrnutie
Považujte Rivest Shamir Adleman (RSA) za dvojitý kľúčový visací zámok, ktorý umožňuje cudzím posielať vám tajomstvá a zároveň vám umožňuje preukázať, že ste vy, bez toho, aby ste sa stretli. Čisté, jednoduché, efektívne.