W 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 i kluczy obliczane są przy użyciu dwóch dużych i zbliżonych długością liczb pierwszych ( i ), generowanych w sposób możliwie przypadkowy. i otrzymuje się na podstawie równania ( jest losowane, obliczane, lub odwrotnie):
Iloczyn i jest częścią klucza oznaczaną przez
Klucz publiczny i prywatny tworzą odpowiednio pary i Liczby i nie są potrzebne poza procesem generowania kluczy i zwykle są kasowane, jednakże istnieje wariant algorytmu, w którym wchodzą one w skład klucza prywatnego (są wykorzystywane w celu zwiększenia szybkości działania kryptosystemu).
W systemie ElGamal wybierana jest liczba pierwsza generator następnie losowana jest liczba Kluczem prywatnym jest kluczem publicznym zaś w grupie multiplikatywnej liczb całkowitych modulo p. 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 na logarytmie dyskretnym, takich jak kryptografia krzywych eliptycznych. W tych metodach grupę Zp zastępuje się inną grupą, np. utworzoną z punktów leżących na krzywej eliptycznej.
Przypisy