Szyfrowanie kluczem asymetrycznym to proces przekształcania tekstu w celu ukrycia jego znaczenia za pomocą wspólnego klucza publicznego. Tekst można odszyfrować tylko za pomocą tajnego klucza prywatnego, który różni się od klucza publicznego, ale jest z nim matematycznie powiązany. Podstawowe zastosowania szyfrowania kluczem asymetrycznym to symetryczna wymiana kluczy, uwierzytelnianie oparte na certyfikatach i podpisy cyfrowe.
Zaletą szyfrowania asymetrycznego nad szyfrowaniem za pomocą klucza symetrycznego, w którym ten sam klucz jest używany do szyfrowania i odszyfrowywania wiadomości, jest to, że bezpieczne wiadomości mogą być wysyłane między dwiema stronami za pośrednictwem niezabezpieczonego kanału komunikacyjnego bez początkowego udostępniania tajnych informacji. Wadą jest to, że szyfrowanie i odszyfrowywanie jest powolne, a szyfrogram może potencjalnie zostać zhakowany przez kryptografa, jeśli ma wystarczająco dużo czasu i mocy obliczeniowej.
Kryptografia klucza asymetrycznego lub kryptografia klucza publicznego zrewolucjonizowała kryptologię. Opublikowane w 1976 r. Martin Hellman i Whitfield Diffie opisują system kryptograficzny z dwoma kluczami, w którym jeden klucz jest używany do szyfrowania, a inny, ale powiązany drugi klucz jest używany do deszyfrowania. Od tego czasu stało się to podstawową częścią zabezpieczania komunikacji w Internecie. Szyfrowanie kluczem asymetrycznym jest podstawą narzędzi, takich jak program Pretty Good Privacy Program (PGP), protokół Secure Sockets Layer (SSL) i protokół Transport Layer Security (TLS).
Poufność wiadomości, a także autentyczność nadawcy można zagwarantować za pomocą szyfrowania kluczem asymetrycznym. Wyobraź sobie, że Alicja chciałaby przekazać Bobowi poufne informacje. Bob ma opublikowany klucz publiczny, który udostępnił Alicji za pomocą niezabezpieczonych kanałów. Alicja używa algorytmu kryptograficznego i klucza publicznego Boba, aby zamienić swoją wiadomość tekstową w tekst zaszyfrowany, gwarantując poufność jej wiadomości. Tylko Bob może odszyfrować jej wiadomość za pomocą uzupełniającego algorytmu i swojego klucza prywatnego. Bob może następnie odpowiedzieć wiadomością zaszyfrowaną jego kluczem prywatnym, a Alicja może mieć pewność, że wiadomość jest autentyczna, jeśli jej klucz publiczny może ją odszyfrować.
Siła szyfrowania kluczem asymetrycznym jest powiązana z długością kluczy i trudnością obliczeń matematycznych łączących oba klucze. Ron Rivest, Adi Shamir i Leonard Adleman opracowali algorytm RSA w 1978 roku, który jest obecnie najczęściej używanym algorytmem. Klucze publiczne i prywatne mają wspólny moduł iloczynu dwóch dużych odrębnych liczb pierwszych. Aby zagwarantować bezpieczeństwo szyfrowania wiadomości, długość kluczy musiała się zwiększyć. Jest to odpowiedź na wzrost mocy obliczeniowej hakerów, którzy mogli łamać słabsze kody za pomocą obliczeń brute force. Złożoność algorytmów sprawia, że szyfrowanie kluczem asymetrycznym jest bardzo powolne i najlepiej nadaje się do mniejszych wiadomości, takich jak udostępnianie kluczy sesji używanych w podpisach cyfrowych.