Blog 24/7

kryptografia asymetryczna

TAB. 1Hasłopo polsku
Po angielskupublic-key cryptography
Którą formą pisaćpo polsku Polska nazwa przyjęła się w tekstach i w wyszukiwarce — używaj jej samodzielnie.
Inne formykryptografia klucza publicznego · szyfrowanie asymetryczne
KategoriaKryptografia, tożsamość i uwierzytelnianie

Kryptografia asymetryczna (kryptografia klucza publicznego) to dziedzina kryptografii, w której używa się pary powiązanych kluczy: jawnego klucza publicznego i tajnego klucza prywatnego. NIST definiuje ją jako kryptografię korzystającą z dwóch odrębnych kluczy, z których jeden szyfruje albo podpisuje dane, a drugi je odszyfrowuje albo weryfikuje podpis [1]. Klucze są tak dobrane, że wyznaczenie klucza prywatnego z publicznego jest obliczeniowo niewykonalne [2]. Na tej zasadzie opierają się podpisy cyfrowe, certyfikaty i uzgadnianie kluczy w protokole TLS.

Jak działa

W szyfrowaniu symetrycznym obie strony muszą znać ten sam tajny klucz, więc trzeba go najpierw bezpiecznie przekazać. Kryptografia asymetryczna rozwiązuje ten problem inaczej. Każdy uczestnik ma własną parę kluczy. Klucz publiczny można opublikować, a klucz prywatny zna tylko właściciel. Sekurak opisuje to w przykładzie poczty: klucz publiczny służy do szyfrowania danych, a klucz prywatny do ich odszyfrowania i nie powinien być znany nikomu poza właścicielem [8].

OWASP wymienia dwa główne zastosowania algorytmów asymetrycznych: obliczanie podpisów cyfrowych i ustanawianie materiału kluczowego [3]. Do ochrony poufności dużych ilości danych używa się algorytmów symetrycznych, w których ten sam klucz szyfruje i odszyfrowuje [3]. W praktyce oba rodzaje działają razem: para kluczy asymetrycznych służy do ustanowienia klucza symetrycznego [2], a ten szyfruje właściwą transmisję. Tak działa połączenie HTTPS, co pokazuje schemat poniżej.

RYS. 1Kryptografia asymetryczna i symetryczna w połączeniu TLS

W TLS 1.3 wymiana kluczy odbywa się metodą Diffiego-Hellmana na liczbach albo na krzywych eliptycznych, a wszystkie mechanizmy wymiany oparte na kluczu publicznym zapewniają forward secrecy [4].

Rodzaje

Ta sama para kluczy może służyć różnym celom, ale OWASP zaleca, by jeden klucz miał tylko jedno zastosowanie, na przykład szyfrowanie, uwierzytelnianie albo podpis [3]. Role kluczy w podstawowych operacjach zestawia tabela.

OperacjaKlucz nadawcyKlucz odbiorcyCo zapewnia
Szyfrowaniepubliczny odbiorcyprywatny odbiorcy odszyfrowuje [8]poufność
Podpis cyfrowyprywatny nadawcy podpisujepubliczny nadawcy weryfikuje [1]autentyczność, integralność
Uzgadnianie kluczapara efemerycznapara efemeryczna [4]wspólny klucz sesji

Najczęściej używane rodziny algorytmów to RSA oraz algorytmy na krzywych eliptycznych (ECDSA, EdDSA, ECDH). CERT Polska zaleca w konfiguracji TLS klucze RSA o długości co najmniej 2048 bitów albo klucze ECDSA co najmniej 256-bitowe [7].

W WordPressie

Kryptografia asymetryczna chroni WordPressa w kilku miejscach, choć zwykle niewidocznie.

Podpisy aktualizacji. Od wersji 5.2 z maja 2019 roku aktualizacje WordPressa są podpisywane kluczem przechowywanym offline, a witryna weryfikuje podpis przed ich zastosowaniem [5]. Podpis powstaje algorytmem Ed25519 ze skrótu SHA-384 zawartości pliku [5]; skrót liczy funkcja skrótu (hashowanie). Weryfikację wykonuje funkcja verify_file_signature() w pliku wp-admin/includes/file.php [5]. Ten sam komunikat zachęcał autorów wtyczek do przejścia z przestarzałego rozszerzenia mcrypt na libsodium, z biblioteką sodium_compat dla starszych wersji PHP [5]. Mechanizm dotyczy aktualizacji rdzenia.

HTTPS. Certyfikat witryny wiąże jej klucz publiczny z domeną, a klucz prywatny zostaje na serwerze. CERT Polska zaleca, by klucz prywatny był przechowywany wyłącznie na serwerze, który go używa [7].

Dostęp administracyjny. Logowanie kluczem SSH do serwera i passkeys w panelu działają na tej samej zasadzie: serwer zna tylko klucz publiczny, a dowodem tożsamości jest operacja wykonana kluczem prywatnym.

Klucze bezpieczeństwa i sole z wp-config.php nie są kluczami asymetrycznymi. To losowe sekrety, których WordPress używa przy ciasteczkach logowania; zob. klucze bezpieczeństwa i sole.

Zagrożenia i skutki

Bezpieczeństwo całego schematu zależy od tajności klucza prywatnego i od pewności, do kogo należy klucz publiczny.

  • Wyciek klucza prywatnego pozwala podszyć się pod właściciela: podpisywać w jego imieniu albo odszyfrowywać przeznaczone dla niego dane. NIST w części o odtwarzaniu po kompromitacji podaje, że ujawnienie tajnego albo prywatnego klucza naraża wszystkie chronione nim informacje i procesy [2].
  • Podmiana klucza publicznego. Jeśli nadawca dostanie fałszywy klucz publiczny, zaszyfruje dane dla atakującego albo uzna jego podpis. Przed tym chroni infrastruktura klucza publicznego (PKI). NIST definiuje ją jako strukturę, która wydaje, utrzymuje i unieważnia certyfikaty klucza publicznego [2], a sam certyfikat jako zestaw danych wiążący klucz publiczny z podmiotem dzięki podpisowi zaufanej strony [2].
  • Komputery kwantowe. NIST ostrzega, że wystarczająco duży komputer kwantowy mógłby szybko rozwiązywać problemy matematyczne, na których opiera się obecne szyfrowanie [6]. Część ekspertów przewiduje powstanie takiego urządzenia w ciągu dekady [6].

Dobre praktyki i rozwój

  • Klucze prywatne przechowywać w sejfie kryptograficznym, na przykład HSM albo izolowanej usłudze kryptograficznej, a nigdy jako zwykły tekst [3].
  • Mieć plan postępowania po kompromitacji klucza, obejmujący wymianę kluczy i sprawdzanie unieważnień [3]; zob. rotacja kluczy.
  • Używać kluczy o długości zalecanej w bieżących wytycznych [7].
  • Śledzić przejście na kryptografię postkwantową. 13 sierpnia 2024 roku NIST opublikował pierwsze trzy standardy: FIPS 203 (ML-KEM) jako podstawowy standard szyfrowania oraz FIPS 204 (ML-DSA) i FIPS 205 (SLH-DSA) do podpisów cyfrowych [6]. Nowe algorytmy opierają się na innych problemach matematycznych, które mają być trudne zarówno dla komputerów klasycznych, jak i kwantowych [6]. SLH-DSA pomyślano jako metodę zapasową na wypadek, gdyby ML-DSA okazał się podatny [6].
TAB. 2

Przypisy

8
  1. [1] Asymmetric cryptography — Glossary · NIST CSRC
  2. [2] SP 800-57 Part 1 Rev. 5: Recommendation for Key Management · NIST
  3. [3] Key Management Cheat Sheet · OWASP
  4. [4] RFC 8446: The Transport Layer Security (TLS) Protocol Version 1.3 · IETF
  5. [5] Security in 5.2 · Make WordPress Core
  6. [6] NIST Releases First 3 Finalized Post-Quantum Encryption Standards · NIST
  7. [7] Bezpieczna konfiguracja TLS · CERT Polska
  8. [8] Szyfrowanie poczty w Outlook · Sekurak
TAB. 3

Hasła w tym artykule

15
TAB. 4

Linkują tutaj

17

Wszystkie kategorie → · Hasło w słowniku →

Blog 24/7
05.11CISA i FBI wzywają do zabezpieczenia sterowników chłodzenia po atakach w Europietherecord.media05.11Midnight Blizzard atakowała iPhone'y i Androidy przez zainfekowane strony w Europie i USAsecurityweek.com05.11APT29 kradła dane z iPhone'ów i Androidów przez przejęte i podrobione stronytherecord.media05.11Grupa APT29 przejęła skrypt Plerdy i atakowała niezałatane iPhone'y i Androidythehackernews.com05.11Microsoft wykrył 7,3 mld wiadomości phishingowych w III kwartale 2026microsoft.com05.11DigiCert ujawnia wyciek danych klientów i skanów dokumentów tożsamościbleepingcomputer.com05.11CWPdoor podmienia serwer cwpsrv w Control Web Panel i otwiera tylne wejście do Linuksableepingcomputer.com05.11Brytyjskie NCSC ostrzega, że narzędzia AI zwiększyły liczbę wykrywanych luk zero-daythehackernews.com05.11Skaner RootEvidence sprawdza starą lukę w Cisco IOS i dodaje nagłówki Opt-Outisc.sans.edu05.11Włamanie do portalu grantowego Norad, zagrożone dane 20 614 użytkownikówhelpnetsecurity.com