Web - Amazon

We provide Linux to the World


We support WINRAR [What is this] - [Download .exe file(s) for Windows]

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
SITEMAP
Audiobooks by Valerio Di Stefano: Single Download - Complete Download [TAR] [WIM] [ZIP] [RAR] - Alphabetical Download  [TAR] [WIM] [ZIP] [RAR] - Download Instructions

Make a donation: IBAN: IT36M0708677020000000008016 - BIC/SWIFT:  ICRAITRRU60 - VALERIO DI STEFANO or
Privacy Policy Cookie Policy Terms and Conditions
ElGamal - Wikipedia, wolna encyklopedia

ElGamal

Z Wikipedii

ElGamal to jeden z dwóch najważniejszych algorytmów kryptografii asymetrycznej (drugim jest RSA). System jest oparty na trudności problemu logarytmu dyskretnego w ciele liczb całkowitych modulo duża liczba pierwsza. Algorytm w połowie lat 80. XX wieku przedstawił Egipcjanin Taher Elgamal.

Algorytm ElGamala zapewnia szyfrowanie oraz podpisy cyfrowe. Setki modyfikacji algorytmu ElGamala (podobnie jak modyfikacje algorytmu RSA) zapewniają różne inne usługi.

Na koncepcji algorytmu ElGamala jest też oparta kryptografia krzywych eliptycznych – w tym przypadku zamiast grupy multiplikatywnej ciała Zp używamy grupy krzywych eliptycznych.

[edytuj] Szyfrowanie

Generacja klucza: wybieramy dowolną liczbę pierwszą p, dowolny generator α podgrupy multiplikatywnej, tzn taki element, którego rząd jest równy p oraz dowolne k takie, że: 1 < k < p. Liczymy β:

\beta = \alpha^k \mod p

Co potrafimy zrobić szybko za pomocą potęgowania przez podnoszenie do kwadratu.

Zobaczmy, co by było gdyby α było dowolne. Weźmy dla przykładu

p = 41,\ \alpha = 14\ k=16 wówczas:
\beta = 14^{16} \mod\ 41 = 1

Co spowodowałoby, że kryptosystem byłby bezużyteczny (gdyż przy szyfrowaniu, zawsze otrzymywalibyśmy 1).

Następnie publikujemy (p,α,β) jako klucz publiczny, i zachowujemy (p,α,β,k) jako klucz prywatny.

Szyfrowanie: mając do zaszyfrowania wiadomość m przedstawiamy ją jako element grupy [1 < m < p − 1] wybieramy losowo liczbę x i liczymy (modulo p)

(\alpha^x, m\times \beta^x)

Deszyfrowanie: podnosimy otrzymane αx do potęgi k:

\left(\alpha^x\right)^k = \alpha^{kx} = \left(\alpha^k\right)^x = \beta^x

Następnie znajdujemy odwrotność βx (oczywiście nadal modulo p) rozszerzonym algorytmem Euklidesa:

γβx + δp = 1
\gamma \beta^x \equiv 1 \mod p
\gamma \equiv (\beta^x)^{-1} \mod p

W końcu dzielimy m \times \beta^x przez βx, czyli mnożymy przez jej odwrotność – γ:

(m \times \beta^x) \times \gamma \equiv m \times (\beta^x \times \gamma) \equiv m \times 1 \equiv m \mod p

[edytuj] Podpis cyfrowy

Klucz jest generowany w ten sam sposób.

Żeby wygenerować podpis wiadomości m losujemy liczbę r i liczymy:

y = αr(mod p)
s = (H(m) − ky)r − 1 (oczywiscie mod(p-1)), gdzie H jest funkcją haszującą

Podpisem jest para (y,s)

Żeby zweryfikować podpis sprawdzamy równanie:

βyys = αH(m)

Co dla prawidłowego podpisu będzie się zgadzać:

αkyαrs = αH(m)
\alpha^{ky + r\left((H(m)-ky)r^{-1}\right)} = \alpha^{H(m)}
αky + H(m) − ky = αH(m)
αH(m) = αH(m)

Ważne jest zachowanie tajności wylosowanego r. Jeśli r byłoby znane, to można odzyskać klucz prywatny z podpisu:

y^{-1}\left(H(m)-sr\right) = y^{-1}\left(H(m)-(H(m)-ky)r^{-1}r\right)=y^{-1}ky=k

[edytuj] Poziom bezpieczeństwa

Jeżeli rząd grupy multiplikatywnej jest iloczynem liczb pierwszych, spośród których nawet jedna nie jest odpowiednio duża, istnieje efektywna metoda obliczania wykładnika. Nie jest znana 'ogólna' metoda szybkiego liczenia logarytmu dyskretnego, więc nie wiemy jak za pomocą α i αx uzyskać x, które w pełni wystarczyłoby do odszyfrowania wiadomości. Nie ma jednak dowodu, że taka nie istnieje. To ostatnie nie może raczej dziwić, gdyż takich dowodów nie ma dla żadnego znanego szyfru asymetrycznego.

Nie mamy jednak dowodu, że złamanie problemu logarytmu dyskretnego jest jedynym sposobem złamania tego szyfru. Być może istnieje szybki algorytm, który znając α, β, p, αx i m\times\beta^x (czyli klucz publiczny i szyfrogram wiadomości) jest w stanie odzyskać m obchodząc w jakiś sposób ten problem.

Our "Network":

Project Gutenberg
https://gutenberg.classicistranieri.com

Encyclopaedia Britannica 1911
https://encyclopaediabritannica.classicistranieri.com

Librivox Audiobooks
https://librivox.classicistranieri.com

Linux Distributions
https://old.classicistranieri.com

Magnatune (MP3 Music)
https://magnatune.classicistranieri.com

Static Wikipedia (June 2008)
https://wikipedia.classicistranieri.com

Static Wikipedia (March 2008)
https://wikipedia2007.classicistranieri.com/mar2008/

Static Wikipedia (2007)
https://wikipedia2007.classicistranieri.com

Static Wikipedia (2006)
https://wikipedia2006.classicistranieri.com

Liber Liber
https://liberliber.classicistranieri.com

ZIM Files for Kiwix
https://zim.classicistranieri.com


Other Websites:

Bach - Goldberg Variations
https://www.goldbergvariations.org

Lazarillo de Tormes
https://www.lazarillodetormes.org

Madame Bovary
https://www.madamebovary.org

Il Fu Mattia Pascal
https://www.mattiapascal.it

The Voice in the Desert
https://www.thevoiceinthedesert.org

Confessione d'un amore fascista
https://www.amorefascista.it

Malinverno
https://www.malinverno.org

Debito formativo
https://www.debitoformativo.it

Adina Spire
https://www.adinaspire.com