Kryptografia klucza publicznego: Różnice pomiędzy wersjami
[wersja przejrzana] | [wersja przejrzana] |
Usunięta treść Dodana treść
m →Zobacz też: dodany link |
m Ujednoznacznienie linku z AES na Advanced Encryption Standard przy pomocy Popups, WP:SK |
||
Linia 1:
[[
[[
'''Kryptografia asymetryczna''' to rodzaj [[kryptografia|kryptografii]], w którym używa się zestawów dwu lub więcej powiązanych ze sobą kluczy, umożliwiających wykonywanie różnych czynności kryptograficznych.
Najważniejsze zastosowania kryptografii asymetrycznej – [[szyfr]]owanie i [[podpis cyfrowy|podpisy cyfrowe]] – zakładają istnienie 2 kluczy – [[klucz prywatny|prywatnego]] i [[klucz publiczny|publicznego]], przy czym klucza prywatnego nie da się łatwo odtworzyć na podstawie publicznego. W niektórych innych zastosowaniach kluczy może być więcej.
[[Algorytm]]y mające zastosowanie w kryptografii asymetrycznej wykorzystują [[funkcja jednokierunkowa|operacje jednokierunkowe]] - takie, które da się łatwo przeprowadzić w jedną stronę a bardzo trudno w drugą. Np. [[mnożenie]] jest łatwe, a [[faktoryzacja]] trudna (na czym opiera się [[RSA (kryptografia)|RSA]]). [[Potęga|Potęgowanie]] [[Kongruencja|modulo]] jest łatwe, a [[logarytm dyskretny|logarytmowanie dyskretne]] jest trudne (na czym opierają się [[ElGamal]], [[Digital Signature Algorithm|DSA]] i [[
== Historia ==
Kryptografia asymetryczna została oficjalnie wynaleziona przez cywilnych badaczy [[Martin Hellman|Martina Hellmana]], [[Whitfield Diffie|Whitfielda Diffie]] i niezależnie przez [[Ralph Merkle|Ralpha Merkle]] w [[1976]] roku. Dopiero pod koniec XX wieku [[Wielka Brytania|brytyjska]] służba wywiadu elektronicznego [[Government Communications Headquarters|GCHQ]] ujawniła, że pierwsza koncepcja systemu szyfrowania z kluczem publicznym została opracowana przez jej pracownika [[James Ellis|Jamesa Ellisa]] już w 1965 roku, a działający system stworzył w 1973 roku [[Clifford Cocks]], również pracownik GCHQ. Odkrycia te były jednak objęte klauzulą tajności do 1997 roku. Obecnie kryptografia asymetryczna jest szeroko stosowana do wymiany informacji poprzez kanały o niskiej poufności jak np. [[Internet]]. Stosowana jest także w systemach elektronicznego uwierzytelniania, obsługi [[Podpis elektroniczny|podpisów cyfrowych]], do szyfrowania poczty ([[OpenPGP]]) itd.
== Szyfrowanie ==
Klucz publiczny używany jest do [[szyfr|zaszyfrowania]] informacji, klucz prywatny do jej odczytu. Ponieważ klucz prywatny jest w wyłącznym posiadaniu adresata informacji, tylko on może ją odczytać. Natomiast klucz publiczny jest udostępniony każdemu, kto zechce zaszyfrować wiadomość.
Ponieważ kryptografia asymetryczna jest o wiele wolniejsza od symetrycznej, prawie nigdy nie szyfruje się wiadomości za pomocą kryptosystemów asymetrycznych. Zamiast tego szyfruje się jedynie [[klucz (kryptografia)|klucz]] jakiegoś [[kryptografia symetryczna|szyfru symetrycznego]], takiego jak np. [[Advanced Encryption Standard|AES]]. Takie protokoły, łączące elementy kryptografii symetrycznej i asymetrycznej, nazywa się hybrydowymi.
== Podpisy cyfrowe ==
Strona uwierzytelniająca wylicza [[funkcja skrótu|skrót]] ([[język angielski|ang.]] ''hash'') podpisywanej wiadomości. Następnie szyfruje ten skrót swoim kluczem prywatnym i jako [[podpis cyfrowy]] dołączana do oryginalnej wiadomości. Dowolna osoba posiadająca klucz publiczny może sprawdzić autentyczność podpisu, poprzez odszyfrowanie skrótu za pomocą klucza publicznego nadawcy i porównanie go z własnoręcznie wyliczonym na podstawie wiadomości.
Linia 28 ⟶ 25:
== Zależności między kluczem publicznym i prywatnym ==
We wszystkich kryptosystemach uzyskanie klucza prywatnego na podstawie publicznego musi być [[poziom bezpieczeństwa|obliczeniowo trudne]].
W [[RSA (kryptografia)|RSA]] zależność między kluczem publicznym i prywatnym jest symetryczna – uzyskanie klucza publicznego na podstawie prywatnego jest równie trudne jak uzyskanie prywatnego na podstawie publicznego. Składowe kluczy <math>d</math> i <math>e</math> obliczane są przy użyciu dwóch dużych i zbliżonych długością liczb pierwszych (<math>p</math> i <math>q</math>) generowanych w sposób możliwie przypadkowy. <math>d</math> i <math>e</math> otrzymuje się na podstawie równania (<math>d</math> jest losowane, <math>e</math> obliczane lub odwrotnie):
: <math>d\cdot e \equiv 1 \pmod{ (p-1)(q-1) }</math>
Iloczyn <math>p</math> i <math>q</math> jest częścią klucza oznaczaną przez <math>n</math>.
Linia 49 ⟶ 45:
* [[Transport Layer Security]]
* [[Kryptografia kwantowa]]
{{Link FA|vi}}▼
[[Kategoria:Kryptologia]]
[[af:Publiekesleutelkriptografie]]
|