Czym jest Rivest Shamir Adleman (RSA)?
Rivest Shamir Adleman (RSA) to kryptosystem z kluczem publicznym, służący do zaszyfrowania i odszyfrowania danych przy użyciu dwóch różnych kluczy. Jeden klucz udostępnia się, drugi zachowuje w tajemnicy. Można to porównać do kłódki, którą możesz komuś dać, ale tylko ty posiadasz klucz, który ją otwiera.
„Bitcoin używa RSA.” Nie do końca. Wiele łańcuchów bloków stosuje schematy krzywych eliptycznych ze względu na szybkość i mniejsze rozmiary kluczy. Jednak Rivest Shamir Adleman (RSA) nadal obsługuje znaczną część infrastruktury internetu, na przykład komunikację przeglądarek z serwerami.
Jak działa Rivest Shamir Adleman (RSA)
Krótko: publikujesz jeden klucz, aby inni mogli zaszyfrować dla ciebie wiadomości, a ty zachowujesz odpowiadający klucz prywatny do ich odszyfrowania. Każdy może udostępnić swój klucz publiczny, ale tylko właściciel może odszyfrować otrzymaną treść.
- Początek: Wygeneruj dwie duże losowe liczby pierwsze, połącz je w moduł i wybierz dwa powiązane wykładniki.
- Wysłanie: Ktoś bierze twoje dane publiczne i podnosi swoją wiadomość do potęgi modulo twojego modułu, tworząc tekst zaszyfrowany.
- Odszyfrowanie: Podnosisz ten zaszyfrowany tekst do swojego tajnego wykładnika i oryginalna wiadomość się pojawia.
- Podpis: Aby udowodnić, że coś napisałeś, obliczasz skrót wiadomości i przetwarzasz go swoim kluczem prywatnym, tworząc podpis.
- Weryfikacja: Każdy może zweryfikować ten podpis przy użyciu twoich danych publicznych, bez potrzeby prywatnej wymiany. Tak właśnie to działa.
To działanie asymetryczne celowo, jak ochroniarz z listą gości i kluczem głównym.
Dlaczego Rivest Shamir Adleman (RSA) ma znaczenie
Dlaczego warto znać Rivest Shamir Adleman (RSA)? Dzięki niemu twoja przeglądarka może komunikować się z giełdami bez ujawniania sekretów, a aktualizacje i wiadomości można sprawdzić, nie spotykając się osobiście.
- Korzyść: Udostępnij jeden klucz publicznie i zachowaj drugi ukryty, co umożliwia łatwe wdrożenie przy silnym zabezpieczeniu.
- Perspektywa: Łańcuchy bloków często wybierają krzywe eliptyczne ze względu na szybkość, ale RSA wciąż stanowi podstawę dużej części bezpiecznego ruchu sieciowego i podpisywania kodu, na których opierają się aplikacje kryptograficzne.
- Zastosowania: Spotkasz je w TLS, VPN, aktualizacjach firmware i zapleczu do przechowywania kluczy. I tak, nigdy nie udostępniaj swojego klucza prywatnego.
Do szyfrowania używaj RSA z wypełnieniem OAEP. Do podpisywania stosuj RSA z PSS. To współczesne ustawienia domyślne, których przyszłe ja będzie ci wdzięczne.
Kluczowe cechy Rivest Shamir Adleman (RSA)
Oto co je wyróżnia:
- Asymetria: Jeden klucz szyfruje, drugi odszyfrowuje, co pozwala na bezpieczną wymianę z nieznajomymi.
- Faktoryzacja: Bezpieczeństwo opiera się na trudności faktoryzacji dużego iloczynu dwóch liczb pierwszych.
- Zastosowania: Działa do szyfrowania i do podpisów cyfrowych, choć nowoczesne łańcuchy często wolą krzywe eliptyczne.
- Rozmiar: Klucze są duże, zazwyczaj 2048 bitów lub więcej, co wpływa na szybkość i przepustowość.
- Kompatybilność: Szeroko obsługiwany w przeglądarkach, HSM i starszych protokołach, więc jest powszechny.
Warianty
Główne odmiany, na które możesz natrafić:
- OAEP: Wypełnienie do szyfrowania, które chroni przed atakami wykorzystującymi strukturę wiadomości.
- PSS: Schemat probabilistyczny do podpisywania, który poprawia bezpieczeństwo w porównaniu ze starszymi formatami.
- PKCS1: Reguły formatowania starszego typu, które nadal występują w certyfikatach i starych bibliotekach.
- KEM: Mechanizm enkapsulacji klucza, który opakowuje klucz symetryczny za pomocą RSA.
Rozmiar klucza i wypełnienie mają znaczenie. Silny algorytm z słabymi parametrami to jak luksusowy zamek na kartonowych drzwiach.
Przykład
Logowanie na giełdzie odbywa się przez TLS, gdzie serwer przedstawia certyfikat RSA, twoja przeglądarka weryfikuje podpis, i dopiero potem wpisujesz hasło.
Ciekawostka
Rivest, Shamir i Adleman opublikowali RSA w 1977 roku, a potem opublikowali liczbę do faktoryzacji jako wyzwanie. Jedno z klasycznych wyzwań zajęło lata i dużo mocy obliczeniowej, aby je rozwiązać. Ktoś nawet wydrukował źródła na koszulce jako żart związany z przepisami eksportowymi.
Podsumowanie
Traktuj Rivest Shamir Adleman (RSA) jak kłódkę z dwoma kluczami, która pozwala nieznajomym przesyłać ci sekrety i pozwala udowodnić, że to ty, bez wcześniejszego spotkania. Proste, przejrzyste, skuteczne.
