Kryptografia klucza publicznego: Różnice pomiędzy wersjami
[wersja przejrzana] | [wersja przejrzana] |
Usunięta treść Dodana treść
drobne merytoryczne, jęz. |
|||
Linia 5:
Najważniejsze zastosowania kryptografii asymetrycznej – [[szyfr]]owanie i [[podpis cyfrowy|podpisy cyfrowe]] – zakładają istnienie 2 kluczy – '''prywatnego''' i '''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]]
== Historia ==
Kryptografia asymetryczna została oficjalnie wynaleziona przez cywilnych badaczy [[Martin Hellman|Martina Hellmana]], [[Whitfield Diffie|Whitfielda Diffie]] w [[1976]] roku. Prawie równolegle prototyp podobnego systemu stworzył [[Ralph Merkle]] – w 1974 roku zaproponował algorytm wymiany kluczy, nazwany [[Puzzle
== Szyfrowanie ==
Linia 22:
W innych kryptosystemach (np. w [[ElGamal]]), podpisywanie cyfrowe jest zupełnie niezależne od szyfrowania. Niektóre, jak [[Digital Signature Algorithm|DSA]], umożliwiają tylko podpisywanie, nie da się w nich zaś w oczywisty sposób szyfrować. Podpis tej samej wiadomości w RSA jest zawsze identyczny. W ElGamalu i DSA każdy kolejny podpis tej samej wiadomości zwykle jest inny – co ma znaczenie w niektórych zastosowaniach.
Rząd [[Stany Zjednoczone|Stanów Zjednoczonych]] usiłował swego czasu ograniczyć stosowanie silnej kryptografii do szyfrowania, jednak musiał pozwolić na silne podpisy cyfrowe. [[RSA (kryptografia)|RSA]] nie dawała możliwości udostępnienia tylko jednej z tych funkcji, dlatego promowany był system podpisów cyfrowych [[Digital Signature Algorithm|DSA]]. Jak się jednak okazało, losowość tych podpisów można wykorzystać do implementacji
== Zależności między kluczem publicznym i prywatnym ==
Linia 28:
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{
Iloczyn <math>p</math> i <math>q</math> jest częścią klucza oznaczaną przez <math>n.</math>
Klucz publiczny i prywatny tworzą odpowiednio pary <math>(e, n)</math> i <math>(d, n).</math>
W systemie [[ElGamal]] wybierana jest [[liczba pierwsza]] <math>p,</math>
Klucz publiczny może być obliczony na podstawie prywatnego, co zresztą ma miejsce podczas generacji kluczy.
Bardzo podobnie wygląda sytuacja w innych systemach opartych o [[logarytm dyskretny]], takich jak [[kryptografia krzywych eliptycznych]]. W tych metodach grupę Zp zastępuje się inną [[grupa (matematyka)|grupą]], np. utworzoną z punktów leżących na [[krzywa eliptyczna|krzywej eliptycznej]].
== Przypisy ==▼
{{Przypisy}}▼
== Zobacz też ==
* [[
* [[Infrastruktura klucza publicznego|PKI]]
* [[Secure Shell|SSH]]
* [[Transport Layer Security]]
▲* [[Kryptologia kwantowa]]
▲== Przypisy ==
▲{{Przypisy}}
{{Kontrola autorytatywna}}
|