Rozszerzenie tematu liczb pierwszych i rozkładu na czynniki. System RSA opiera bezpieczeństwo na asymetrii: mnożenie dwóch dużych liczb pierwszych p×q=n jest błyskawiczne, ale rozkład dużej liczby n z powrotem na p i q jest obliczeniowo bardzo trudny. Ta asymetria to fundament szyfrowania w internecie. Ronald Rivest, Adi Shamir i Leonard Adleman opublikowali system RSA w 1978 r., za co w 2002 r. otrzymali Nagrodę Turinga.

Dam Ci liczbę — oceń, czy jest pierwsza (to z nich RSA buduje klucze), czy złożona.
Co się właśnie stało?
Zwiększyłeś liczbę cyfr liczb pierwszych p i q. Mnożenie p·q pozostało błyskawiczne, ale próba odtworzenia p i q z samego n stała się nieporównywalnie trudniejsza — to właśnie ta asymetria chroni Twoje dane w internecie.
System RSA:
Ronald Rivest, Adi Shamir i Leonard Adleman opublikowali w 1978 r. system RSA — pierwszy praktyczny, powszechnie stosowany system kryptografii klucza publicznego. Klucz publiczny (do szyfrowania, może być jawny) zawiera iloczyn n = p × q dwóch tajnych, dużych liczb pierwszych; klucz prywatny (do odszyfrowania) wymaga znajomości p i q osobno.
Dlaczego to jest bezpieczne?
Ponieważ rozłożenie bardzo dużej liczby n z powrotem na czynniki pierwsze jest przy obecnej wiedzy matematycznej i mocy obliczeniowej praktycznie niewykonalne w rozsądnym czasie (dla liczb rzędu setek cyfr) — nawet znając n publicznie, atakujący nie jest w stanie w praktyce odtworzyć p i q. Stąd:
gdzie d to liczba cyfr p i q — mnożenie rośnie łagodnie (wielomianowo) z d, a faktoryzacja rośnie gwałtownie (sub-wykładniczo) z d.
Gdzie to spotykasz?
RSA jest dziś fundamentem szyfrowania w internecie — HTTPS (kłódka w przeglądarce), bankowość elektroniczna, podpisy cyfrowe. Za to osiągnięcie Rivest, Shamir i Adleman otrzymali w 2002 r. Nagrodę Turinga — najważniejsze wyróżnienie w informatyce, odpowiednik Nobla dla tej dziedziny.
Po co Ci to na maturze:
Liczby pierwsze i rozkład na czynniki pierwsze to standardowy temat matury z matematyki — RSA pokazuje, że ta „szkolna" matematyka ma bardzo realne zastosowanie: chroni każde logowanie i każdą transakcję online.
Zapamiętaj: mnożenie dużych liczb pierwszych jest szybkie, a faktoryzacja ich iloczynu — bardzo trudna. Ta asymetria to fundament bezpieczeństwa RSA i większości dzisiejszej komunikacji internetowej.
Mnożenie dużych liczb pierwszych jest szybkie: . Odwrotne zadanie — rozkład na i — jest dla dużych liczb obliczeniowo bardzo trudne.
Moduł jest jawny (klucz publiczny), a tajne. Szyfrowanie i deszyfrowanie korzystają z arytmetyki modulo :
Dopóki nie znamy szybkiej faktoryzacji, odtworzenie klucza prywatnego z publicznego jest praktycznie niewykonalne.
Oznaczenia: liczby pierwsze, moduł, wykładnik publiczny, prywatny, wiadomość, szyfrogram.
Uczysz? Umieść ten eksperyment na swojej stronie.
Darmowy widget — wklej na stronę szkoły, bloga lub notatki. Linkuje do pełnej wersji.
Bo mnożenie dużych liczb pierwszych jest szybkie, ale rozłożenie iloczynu z powrotem na czynniki pierwsze jest obliczeniowo bardzo trudne.
Iloczyn n=p×q dwóch tajnych, dużych liczb pierwszych — może być jawny, bo trudno z niego odtworzyć p i q.
Ronald Rivest, Adi Shamir i Leonard Adleman, w 1978 r. — Nagroda Turinga 2002.