www.wikidata.de-de.nina.az
Das Elgamal Verschlusselungsverfahren oder Elgamal Kryptosystem auch al Dschamal Kryptosystem ist ein im Jahr 1985 vom Kryptologen Taher Elgamal entwickeltes Public Key Verschlusselungsverfahren das auf der Idee des Diffie Hellman Schlusselaustauschs aufbaut Das Elgamal Verschlusselungsverfahren beruht wie auch das Diffie Hellman Protokoll auf Operationen in einer zyklischen Gruppe endlicher Ordnung Das Elgamal Verschlusselungsverfahren ist beweisbar IND CPA sicher unter der Annahme dass das Decisional Diffie Hellman Problem in der zugrundeliegenden Gruppe schwierig ist Taher Elgamal 2010 Erfinder des VerfahrensVerwandt mit dem hier beschriebenen Verschlusselungsverfahren aber nicht mit diesem identisch ist das Elgamal Signaturverfahren Elgamal unterliegt keinem Patent Inhaltsverzeichnis 1 Beschreibung 1 1 Parametererzeugung 1 2 Schlusselerzeugung 1 3 Verschlusselung 1 4 Entschlusselung 2 Gruppenwahl 3 Ein konkretes Beispiel 3 1 Schlusselerzeugung 3 2 Verschlusselung 3 3 Entschlusselung 4 Sicherheit 4 1 Sicherheit gegen Schlusselextraktion 4 1 1 Beweis 4 2 Sicherheit gegen Klartextextraktion 4 2 1 Beweis 4 3 Semantische Sicherheit 4 3 1 Beweis 4 4 Unsicherheit gegenuber Angriffen mit gewahlten Chiffraten 4 5 Sicherheit gegen Angriffe mit nicht adaptiv gewahlten Chiffraten 4 5 1 Beweis 4 6 Unsicherheit gegenuber Quantencomputern 5 Sonstige Eigenschaften 5 1 Homomorphe Verschlusselung 5 2 Rerandomisierbarkeit 5 3 Ununterscheidbarkeit von Empfangern 5 3 1 Beweis 5 4 Verschlusseln fur mehrere Empfanger 5 5 Nachtragliches Uberverschlusseln mit bekanntem privatem Schlussel 6 Sicherheitsprobleme bei Protokollabweichungen 6 1 Mehrfache Benutzung des Verschlusselungszufalls 6 2 Probleme mit Untergruppen 7 Literatur 8 EinzelnachweiseBeschreibung BearbeitenWie alle asymmetrischen Kryptosysteme verwendet auch das Elgamal Kryptosystem einen offentlichen und einen geheimen Schlussel Der offentliche Schlussel dient der Verschlusselung und kann veroffentlicht werden wahrend der geheime Schlussel der Entschlusselung dient und nur den Empfangern der Nachricht bekannt sein darf Das heisst der Empfanger der Nachricht muss einmalig ein Schlusselpaar aus offentlichen und privaten Schlusseln erzeugen Anschliessend kann jeder mithilfe des offentlichen Schlussels beliebig oft eine Nachricht verschlusseln und an den Empfanger senden In der folgenden Beschreibung wird wie in der Kryptografie davon ausgegangen dass ein Sender eine Nachricht an einen Empfanger senden will Parametererzeugung Bearbeiten Der Empfanger wahlt eine endliche zyklische Gruppe G g displaystyle mathbb G langle g rangle nbsp mit primer Ordnung q displaystyle q nbsp und Erzeuger g displaystyle g nbsp so dass q displaystyle q nbsp gross genug ist um die gewunschte Sicherheit zu bieten G displaystyle mathbb G nbsp wird veroffentlicht Im Folgenden wird G displaystyle mathbb G nbsp wie in der Kryptographie ublich multiplikativ geschrieben d h die Gruppenoperation wird durch einen Malpunkt dargestellt statt wie in weiten Teilen der Mathematik ublich durch ein Plus und die mehrfache Anwendung derselben wird als Exponent statt als Faktor dargestellt Beim Exponenten handelt es sich prinzipiell um eine ganze Zahl allerdings sind im hier betrachteten Fall Exponenten die ganzzahlige Vielfache von q displaystyle q nbsp sind unerheblich fur das Ergebnis weswegen es alternativ legitim ist Exponenten als Elemente des Restklassenkorpers Z q displaystyle mathbb Z q nbsp aufzufassen Der hierdurch mogliche Exponent 0 fuhrt zwar dazu dass die Verschlusselung den unveranderten Klartext enthalt tritt aber nur mit vernachlassigbarer Wahrscheinlichkeit auf und verursacht dadurch bei echt zufalliger Wahl der Exponenten keine Probleme Es ist moglich dass mehrere Parteien die gleiche Gruppe benutzen in einigen Anwendungen ist die benutzte Gruppe sogar standardisiert Schlusselerzeugung Bearbeiten Der Empfanger wahlt zufallig einen Exponenten a Z q displaystyle a leftarrow mathbb Z q nbsp Dies ist der private Schlussel des Empfangers Der Empfanger berechnet das Gruppenelement g a G displaystyle left g a right in mathbb G nbsp als seinen offentlichen Schlussel und gibt diesen bekannt Verschlusselung Bearbeiten Der Sender mochte die Nachricht m G displaystyle m in mathbb G nbsp versenden Der Sender wahlt zufallig einen Exponenten r Z q displaystyle r leftarrow mathbb Z q nbsp Der Sender berechnet das Gruppenelement c 0 g r G displaystyle c 0 g r in mathbb G nbsp Der Sender berechnet das Chiffrat c 1 g a r m G displaystyle c 1 left g a right r cdot m in mathbb G nbsp Man beachte Der Sender kennt den offentlichen Schlussel g a displaystyle left g a right nbsp des Empfangers Der Sender versendet c 0 c 1 displaystyle c 0 c 1 nbsp an den Empfanger Entschlusselung Bearbeiten Der Empfanger berechnet den Klartext m displaystyle m nbsp als c 0 a c 1 g r a g a r m g r a a r m g 0 m 1 m m displaystyle c 0 a cdot c 1 left g r right a cdot left g ar cdot m right g ra ar cdot m g 0 cdot m 1 cdot m m nbsp Man beachte a displaystyle a nbsp ist der private Schlussel des Empfangers und nur ihm bekannt Gruppenwahl BearbeitenAls Wahl fur die endliche zyklische Gruppe G displaystyle mathbb G nbsp haben sich zwei Varianten durchgesetzt Untergruppen von multiplikativen Restklassengruppen und von elliptischen Kurven uber endlichen Korpern Klassisch ist hierbei die erstere Variante Fur p displaystyle p nbsp prim ist Z p Z displaystyle mathbb Z p mathbb Z nbsp ein Korper genauer Restklassenkorper und die Elemente der Einheitengruppe also der multiplikativen Gruppe des Selben sind alle Zahlen ungleich Null konkret G 1 p 1 displaystyle G lbrace 1 dots p 1 rbrace nbsp Die Ordnung der Gruppe ist daher p 1 displaystyle p 1 nbsp Da p displaystyle p nbsp prim ist ist p 1 displaystyle p 1 nbsp aber durch Zwei teilbar und die Einheitengruppe somit fur p gt 3 displaystyle p gt 3 nbsp keine Gruppe primer Ordnung Sei nun q displaystyle q nbsp ein Teiler von p 1 displaystyle p 1 nbsp dann besitzt die Einheitengruppe eine Untergruppe mit Ordnung q displaystyle q nbsp Handelt es sich bei q displaystyle q nbsp um eine Primzahl besitzt diese Untergruppe somit prime Ordnung und ist fur die Verwendung potentiell geeignet In der Praxis hat sich etabliert p displaystyle p nbsp so zu wahlen dass p 1 2 q textstyle frac p 1 2 q nbsp geeignet ist p displaystyle p nbsp wird dann als sichere Primzahl q displaystyle q nbsp als Sophie Germain Primzahl bezeichnet In diesem Fall handelt es sich dann bei der Untergruppe um die Untergruppe der quadratischen Reste fur die gilt dass jedes Element g displaystyle g nbsp als h 2 displaystyle h 2 nbsp mit einem anderen Element h displaystyle h nbsp geschrieben werden kann Analoge Probleme gelten auch fur die Benutzung von elliptischen Kurven uber endlichen Korpern Auch diese besitzen zunachst keine prime Ordnung sodass auch hier zunachst ein geeigneter Erzeuger einer Untergruppe primer Ordnung gesucht werden muss Die konkreten Probleme die die Nutzung einer Gruppe mit nicht primer Ordnung implizieren werden im Abschnitt Probleme mit Untergruppen naher behandelt und sind unabhangig von der konkret benutzten Gruppe Unabhangig von der Sicherheit ist die Wahl der Gruppe auch anderweitig wichtig Lediglich Elemente der benutzten Unter Gruppe konnen ver und entschlusselt werden da das Chiffrat ansonsten auch ohne Kenntnis des privaten und sogar des offentlichen Schlussels Informationen uber den Klartext offenbaren wurde Dies hat zur Folge dass es in der Regel notwendig ist Klartexte zuvor zu Elementen der Untergruppe zu konvertieren was nicht immer trivial ist Der wohl einfachste Fall ergibt sich bei der Benutzung der Restklasse einer sicheren Primzahl p 2 q 1 displaystyle p 2q 1 nbsp Fur alle ganzen Zahlen n displaystyle n nbsp zwischen 0 displaystyle 0 nbsp inklusive und q displaystyle q nbsp exklusiv gilt dass entweder n displaystyle n nbsp oder p n displaystyle p n nbsp Teil der Untergruppe primer Ordnung ist so dass einfach das funktionierende Element benutzt werden kann Ein konkretes Beispiel BearbeitenDie hier als G displaystyle mathbb G nbsp verwendete Untergruppe der Quadrate von Z 23 displaystyle mathbb Z 23 times nbsp displaystyle times nbsp 1 2 3 4 6 8 9 12 13 16 181 1 2 3 4 6 8 9 12 13 16 182 2 4 6 8 12 16 18 1 3 9 133 3 6 9 12 18 1 4 13 16 2 84 4 8 12 16 1 9 13 2 6 18 36 6 12 18 1 13 2 8 3 9 4 168 8 16 1 9 2 18 3 4 12 13 69 9 18 4 13 8 3 12 16 2 6 112 12 1 13 2 3 4 16 6 18 8 913 13 3 16 6 9 12 2 18 8 1 416 16 9 2 18 4 13 6 8 1 3 1218 18 13 8 3 16 6 1 9 4 12 2Die Potenzen der Elemente in G displaystyle mathbb G nbsp g x displaystyle g x nbsp 0 1 2 3 4 5 6 7 8 9 101 1 1 1 1 1 1 1 1 1 1 12 1 2 4 8 16 9 18 13 3 6 123 1 3 9 4 12 13 16 2 6 18 84 1 4 16 18 3 12 2 8 9 13 66 1 6 13 9 8 2 12 3 18 16 48 1 8 18 6 2 16 13 12 4 9 39 1 9 12 16 6 8 3 4 13 2 1812 1 12 6 3 13 18 9 16 8 4 213 1 13 8 12 18 4 6 9 2 3 1616 1 16 3 2 9 6 4 18 12 8 1318 1 18 2 13 4 3 8 6 16 12 9Als Gruppe wahlen wir die Untergruppe der Quadrate von G Z 23 displaystyle G mathbb Z 23 times nbsp mit g 2 displaystyle g 2 nbsp als Erzeuger so dass gilt g G G displaystyle langle g rangle mathbb G subset G nbsp Da 23 eine sichere Primzahl ist gibt es nur eine grosse Untergruppe die 11 Elemente enthalt hierbei handelt es sich um die sogenannte Untergruppe der quadratischen Reste oder einfacher die Untergruppe der Quadrate Der Name hat seinen Ursprung darin dass diese Gruppe genau die Elemente enthalt die als Quadrat eines anderen Elements geschrieben werden konnen Hierbei handelt es sich stets um exakt die Halfte aller Gruppenelemente so dass diese Untergruppe genau dann prime Ordnung hat wenn der Modulus eine Sichere Primzahl ist was in unserem Beispiel nach Konstruktion ja der Fall ist Da 5 5 2 mod 23 displaystyle 5 cdot 5 equiv 2 pmod 23 nbsp ist ist 2 displaystyle 2 nbsp ein quadratischer Rest und folglich Teil der Untergruppe Da fur alle Elemente ausser dem Neutralelement hier 1 displaystyle 1 nbsp in Gruppen primer Ordnung gilt dass sie die gesamte Gruppe Erzeugen hat 2 displaystyle 2 nbsp selbst prime Ordnung und ist damit ein geeigneter Erzeuger Das Rechnen mit Elementen aus Z 23 displaystyle mathbb Z 23 times nbsp verlauft anschaulich fast genau so wie das Rechnen mit ganzen Zahlen nur dass im Anschluss an jede Operation stets modulo 23 gerechnet wird siehe erste Tabelle Wichtig zu verstehen ist hierbei aber dass G displaystyle mathbb G nbsp nur 11 Elemente enthalt und nicht etwa 22 oder 23 Das Berechnen von Potenzen funktioniert analog zur normalen Potenzrechnung so gilt etwa g 3 g g g displaystyle g 3 g cdot g cdot g nbsp Allein aus der endlichen Grosse der Gruppe folgt allerdings bereits dass sich Elemente ab einem gewissen Punkt wiederholen mussen Da bei den hier betrachteten Gruppen primer Ordnung q displaystyle q nbsp jedes Element ausser der 1 die nur sich selbst erzeugt ein Erzeuger der gesamten Gruppe ist gilt dass der Zyklus alle Element umfasst und Lange p displaystyle p nbsp hat Da somit fur alle Gruppenelemente h displaystyle h nbsp gilt dass h q 1 h 0 displaystyle h q 1 h 0 nbsp und damit fur alle Exponenten x displaystyle x nbsp gilt dass h q x 1 h x h x displaystyle h q x 1 cdot h x h x nbsp ist es zur Berechnung beliebiger Potenzen ausreichend die Potenz zum Exponenten modulo q 11 displaystyle q 11 nbsp zu rechnen So gilt zum Beispiel 2 27 2 2 11 5 2 5 9 displaystyle 2 27 2 2 cdot 11 5 equiv 2 5 equiv 9 nbsp Siehe die zweite Tabelle fur die Potenzen aller Elemente von G displaystyle mathbb G nbsp Schlusselerzeugung Bearbeiten Der Empfanger zieht einen zufalligen Exponenten a 5 displaystyle a 5 nbsp Dies ist der private Schlussel des Empfangers Der Empfanger berechnet das Gruppenelement g a 2 5 9 mod 23 displaystyle g a 2 5 equiv 9 mod 23 nbsp als seinen offentlichen Schlussel und gibt diesen bekannt Verschlusselung Bearbeiten Der Sender mochte die Nachricht m 8 displaystyle m 8 nbsp versenden 8 G displaystyle 8 in mathbb G nbsp wegen 13 2 169 8 mod 23 displaystyle 13 2 169 equiv 8 mod 23 nbsp Der Sender zieht einen zufalligen Exponenten r 7 displaystyle r 7 nbsp Der Sender berechnet das Chiffrat c displaystyle c nbsp wie folgt c 0 g r 2 7 13 mod 23 displaystyle c 0 g r 2 7 equiv 13 mod 23 nbsp c 1 g a r m 9 7 8 9 mod 23 displaystyle c 1 left g a right r cdot m 9 7 cdot 8 equiv 9 mod 23 nbsp c c 0 c 1 13 9 displaystyle c c 0 c 1 13 9 nbsp Der Sender sendet das Chiffrat c displaystyle c nbsp an den Empfanger Entschlusselung Bearbeiten Der Empfanger berechnet den Klartext m displaystyle m nbsp wie folgt m c 0 a c 1 13 5 9 13 11 5 9 13 6 9 6 9 8 mod 23 displaystyle m c 0 a cdot c 1 13 5 cdot 9 equiv 13 11 5 cdot 9 equiv 13 6 cdot 9 equiv 6 cdot 9 equiv 8 mod 23 nbsp Man beachte dass zur Entschlusselung zwar eigentlich eine Invertierung also Potenzierung mit 1 im Exponenten von c 0 a displaystyle c 0 a nbsp notig ist diese aber durch einfache Subtraktion des geheimen Schlussels a displaystyle a nbsp von der Gruppenordnung q displaystyle q nbsp ohne Mehraufwand gemeinsam mit der ohnehin notigen Potenzierung durchgefuhrt werden kann Da das Addieren oder Subtrahieren von q displaystyle q nbsp im Exponenten keine Auswirkung auf das Ergebnis hat konnen so negative Exponenten a displaystyle a nbsp durch positive q a displaystyle q a nbsp ersetzt werden Im Beispiel also 13 5 13 11 5 13 6 mod 23 displaystyle 13 5 equiv 13 11 5 13 6 mod 23 nbsp Sicherheit BearbeitenUnter einer Standardannahme versteht man in der Kryptografie die Vermutung dass ein gut untersuchtes mathematisches Problem schwer zu losen ist Lasst sich zeigen dass das Brechen eines Kryptografieverfahrens aquivalent zum Losen eines dieser Probleme ist so ist sichergestellt dass dieses mindestens genauso schwer ist Die Sicherheit von Elgamal hangt eng mit mehreren Standardannahmen zusammen Im Folgenden ist mit einem erfolgversprechenden Angreifer ein Angreifer gemeint dessen Laufzeit durch ein beliebige aber feste polynomielle Funktion im Logarithmus der Gruppenordnung q displaystyle q nbsp beschrankt ist er ist effizient und dessen Erfolgswahrscheinlichkeit relativ zum Logarithmus der Gruppenordnung q displaystyle q nbsp mindestens so gross ist wie das Inverse einer beliebigen aber festen polynomiellen Funktion er hat nicht vernachlassigbare Erfolgswahrscheinlichkeit Sicherheit gegen Schlusselextraktion Bearbeiten Das Berechnen des geheimen Schlussels a displaystyle a nbsp aus dem offentlichen Schlussel g a G displaystyle left g a right in mathbb G nbsp ist genau das Problem diskrete Logarithmen zu ziehen Zwar existieren hierfur Algorithmen die wesentlich performanter als Brute Force sind jedoch sind auch diese entweder zu ineffizient um das Problem in hinreichend grossen Gruppen zu losen oder benotigen universelle Quantencomputer Es ist wichtig die Grenzen dieser Aussage zu verstehen Prinzipiell ist die Existenz von Angriffen denkbar die es nicht notig machen den geheimen Schlussel zu kennen um Klartexte zu extrahieren was zur Folge hat dass die Aussage fur sich alleine weitgehend wertlos ist Die Annahme dass diskrete Logarithmen schwer zu ziehen sind ist eine Standardannahme in der Kryptographie Beweis Bearbeiten Das Problem den geheimen Schlussel aus dem offentlichen zu extrahieren ist genau das Problem diskrete Logarithmen zu ziehen Da wir davon ausgehen dass kein erfolgversprechender Angreifer hierzu in der Lage ist DLog Annahme gibt es auch keinen erfolgversprechenden Angreifer der den privaten Schlussel extrahieren kann Sicherheit gegen Klartextextraktion Bearbeiten Der Sicherheitsbegriff der die praktische Unmoglichkeit bedeutet zufallig gewahlte Klartexte zu extrahieren heisst OW CPA kurz fur One Way under Chosen Plaintext Attacks einweg unter Angriffen mit gewahlten Klartexten Konkret besagt dieser dass es keinen effizienten Angreifer gibt der eine nicht vernachlassigbare Erfolgswahrscheinlichkeit hat zu einem gegebenen offentlichen Schlussel und einem Chiffrat mit zufalligem Klartext den Klartext zu finden Die OW CPA Sicherheit von ElGamal ist aquivalent zur Computational Diffie Hellman Vermutung CDH Diese besagt dass es keinen effizienten Angreifer gibt der eine nicht vernachlassigbare Erfolgswahrscheinlichkeit hat zu einem gegebenen Trippel g g x g y G 3 displaystyle g g x g y in mathbb G 3 nbsp das Gruppenelement g x y G displaystyle g xy in mathbb G nbsp zu finden Im Unterschied zum Diskreten Logarithmus Problems ist nicht gefordert die Exponenten x y displaystyle x y nbsp zu bestimmen Es genugt g x y displaystyle g xy nbsp bestimmen zu konnen um die Nachricht zu entschlusseln Erneut ist es wichtig zu verstehen dass OW CPA Sicherheit fur nahezu alle praktischen Anwendungsfalle nicht ausreichend ist So erlaubt OW CPA beispielsweise einen signifikanten Anteil des Klartexts zu lernen oder zu uberprufen ob ein Chiffrat einen bestimmten Klartext enthalt Die CDH Annahme ist eine starkere also gewagtere Annahme als die dass es schwer ist diskrete Logarithmen zu ziehen stellt allerdings ebenfalls eine nicht ernsthaft in Frage gestellte kryptographische Standardannahme dar Beweis Bearbeiten Zum Beweis der OW CPA Sicherheit werden wir einen Angreifer auf die Sicherheit von ElGamal benutzen um einen Angreifer fur das Computational Diffie Hellman Problem zu bauen Hierzu fuhren wir zwei Sicherheitsspiele aus Eines in der Rolle des Angreifers mit einem CDH Verifizierer und eines mit einem beliebigen Angreifer auf die OW CPA Sicherheit von ElGamal in der Rolle des Herausforderers Erhalte G g x g y G 2 displaystyle mathbb G g x g y in mathbb G 2 nbsp mit x displaystyle x nbsp und y displaystyle y nbsp unbekannt vom CDH Herausforderer Ziehe einen zufalligen Exponenten r Z q displaystyle r leftarrow mathbb Z q nbsp Ubergebe G g x g y g r displaystyle mathbb G g x g y g r nbsp Gruppe offentlicher Schlussel Chiffrat an den OW CPA Angreifer Diese Werte sind ununterscheidbar vom solchen in einem echten OW CPA spiel da in beiden Fallen alle Werte echt zufallig gewahlt wurden Erhalte vom OW CPA Angreifer einen vermeintlichen Klartext m G displaystyle m in mathbb G nbsp Berechne h g r m 1 displaystyle h g r cdot m 1 nbsp Ubergebe h displaystyle h nbsp an den CDH Herausforderer Falls der OW CPA Angreifer erfolgversprechend ist wird er mit einer nicht vernachlassigbaren Wahrscheinlichkeit den eindeutig bestimmten korrekten Klartext m displaystyle m nbsp ausgeben so dass g r g x y m displaystyle g r g xy cdot m nbsp womit h displaystyle h nbsp die korrekte Antwort im CDH Spiel ist Da die Laufzeit des Simulators im Wesentlichen als Summe der nach Annahme polynomiellen Laufzeit des OW CPA Angreifers und einiger klar effizient Operationen gegeben ist ist sie ebenfalls polynomiell Da der Simulator ausserdem genau dann Erfolg im CDH Spiel hat wenn der OW CPA Angreifer Erfolg hat ist er genau dann ein erfolgversprechender Angreifer wenn der OW CPA Angreifer es ist Da wir davon ausgehen dass es keinen erfolgversprechenden CDH Angreifer gibt CDH Annahme wir aber gezeigt haben dass die Existenz eines erfolgversprechenden OW CPA Angreifers die Existenz eines Solchen impliziert kann es keinen erfolgversprechenden OW CPA Angreifer geben womit ElGamal OW CPA sicher ist Semantische Sicherheit Bearbeiten IND CPA oder auch semantische Sicherheit bezeichnet den schwachsten Sicherheitsbegriff der in der modernen Kryptographie als akzeptabel fur zumindest einzelne Anwendungen betrachtet wird und bedeutet anschaulich dass ein Angreifer aus dem Chiffrat keinerlei Information uber den Klartext gewinnen kann Im Gegensatz zum vorherigen Abschnitt darf der Angreifer hier auch keine Teilinformation extrahieren konnen Bei dem hier relevanten Fall asymmetrischer Verschlusselung kann dieser Begriff wie folgt definiert werden Der Angreifer erhalt einen offentlichen Schlussel und darf im Anschluss zwei Klartexte wahlen die er dem Herausforderer gibt Letzterer wahlt nun mit einem Munzwurf einen der beiden Klartexte verschlusselt ihn mit dem Verfahren und gibt das Chiffrat zuruck an den Angreifer Existiert kein effizienter Angreifer der nun mit einer nicht vernachlassigbar besseren Wahrscheinlichkeit als 1 2 textstyle frac 1 2 nbsp was durch reines raten erreichbar ist entscheiden kann welchen der beiden gewahlten Klartexte das Chiffrat enthalt so ist das Verfahren semantisch sicher Diese Eigenschaft ist fur ElGamal aquivalent zur Decisional Diffie Hellman Vermutung Diese besagt dass es keinen praktikablen Algorithmus gibt der fur zufallige x y z Z p displaystyle x y z leftarrow mathbb Z p nbsp in der Lage ist g x g y g x y G displaystyle g x g y g xy in mathbb G nbsp signifikant besser von g x g y g z G displaystyle g x g y g z in mathbb G nbsp zu unterscheiden als er dies durch reines Raten konnte Zwar ist diese Annahme noch einmal starker also gewagter als die CDH Annahme allerdings ist auch sie in der Kryptographie als Standardannahme akzeptiert Beweis Bearbeiten Dieser Beweis verlauft ahnlich dem zur OW CPA Sicherheit ab allerdings unterscheiden sich die Spiele Unser Simulator hat nun die Rolle des Angreifers in einem Decisional Diffie Hellman Spiel DDH und die des Herausforderers in einem IND CPA Spiel Erhalte G g x g y g z G 3 displaystyle mathbb G g x g y g z in mathbb G 3 nbsp mit x y z displaystyle x y z nbsp unbekannt vom DDH Herausforderer Ubergebe G g x displaystyle mathbb G g x nbsp Gruppe offentlicher Schlussel an den IND CPA Angreifer Diese Werte sind ununterscheidbar vom solchen in einem echten IND CPA spiel da in beiden fallen alle Werte echt zufallig gewahlt wurden Erhalte vom IND CPA Angreifer zwei verschiedene Klartexte m 0 m 1 G displaystyle m 0 m 1 in mathbb G nbsp Ziehe eine zufalliges Bit b B displaystyle b leftarrow mathbb B nbsp Ubergebe c g y g z m b displaystyle c g y g z cdot m b nbsp als Chiffrat an den IND CPA Angreifer Erhalte ein bit b B displaystyle b in mathbb B nbsp vom IND CPA Angreifer Ubergebe b b b displaystyle b b b nbsp an den DDH HerausfordererFur die Analyse ergeben sich nun zwei Falle Falls x y z displaystyle xy z nbsp so ist die IND CPA Simulation perfekt Es sei 1 2 ϵ textstyle frac 1 2 epsilon nbsp die Erfolgswahrscheinlichkeit des IND CPA Angreifers Da der Simulator genau dann die korrekte Antwort 1 im DDH Spiel gibt wenn der IND CPA Angreifer falsch rat liegt der Simulator in diesem Fall mit der Wahrscheinlichkeit 1 2 ϵ textstyle frac 1 2 epsilon nbsp richtig Dieser Fall tritt mit Wahrscheinlichkeit 1 2 textstyle frac 1 2 nbsp ein Falls x y z displaystyle xy neq z nbsp ist dann ist c displaystyle c nbsp ein Chiffrat von Zufall Der IND CPA Angreifer kann in diesem Fall inharent keine bessere Strategie als raten haben womit er b displaystyle b nbsp mit der Wahrscheinlichkeit 1 2 textstyle frac 1 2 nbsp korrekt bzw falsch rat Da der Simulator genau dann die korrekte Antwort 0 im DDH Spiel gibt wenn der IND CPA Angreifer falsch rat liegt der Simulator in diesem Fall mit der Wahrscheinlichkeit 1 2 textstyle frac 1 2 nbsp richtig Dieser Fall tritt insgesamt betrachtet mit einer Wahrscheinlichkeit von 1 2 textstyle frac 1 2 nbsp ein Man beachte dass im letzteren Fall c textstyle c nbsp zwar durch reinen Zufall mit einer Wahrscheinlichkeit von je 1 G textstyle frac 1 mathbb G nbsp eine Verschlusselung von m 0 textstyle m 0 nbsp oder m 1 textstyle m 1 nbsp sein kann sich diese Falle allerdings gegenseitig aufheben und damit nicht ins Gewicht fallen Als gewichteter Durchschnitt der Erfolgswahrscheinlichkeit des Simulators im DDH Spiel ergibt sich somit 1 2 1 2 ϵ 1 2 1 2 1 2 ϵ 2 textstyle frac 1 2 times left frac 1 2 epsilon right frac 1 2 times frac 1 2 frac 1 2 frac epsilon 2 nbsp Falls der IND CPA Angreifer erfolgversprechend ware so ware ϵ displaystyle epsilon nbsp nicht vernachlassigbar und damit auch ϵ 2 textstyle frac epsilon 2 nbsp Da die Laufzeit des Simulators klar polynomiell in p displaystyle p nbsp ist und das Gleiche nach Annahme auch fur den IND CPA Angreifer gilt stellt der Simulator genau einen erfolgversprechenden DDH Angreifer dar falls der IND CPA Angreifer erfolgversprechend ist Da wir davon ausgehen dass es keinen erfolgversprechenden DDH Angreifer gibt DDH Annahme wir aber gezeigt haben dass die Existenz eines erfolgversprechenden IND CPA Angreifers die Existenz eines Solchen impliziert kann es keinen erfolgversprechenden IND CPA Angreifer geben womit ElGamal IND CPA sicher ist Unsicherheit gegenuber Angriffen mit gewahlten Chiffraten Bearbeiten IND CCA bezeichnet einen weiteren in der modernen Kryptographie etablierten Sicherheitsbegriff der unter anderem sicherstellt dass ein Angreifer kein Chiffrat manipuliert ohne dass entweder die Entschlusselung fehlschlagt oder der neue Klartext in keinerlei erkennbarer Relation zum Alten steht Wahrend dies in aller Regel eine wunschenswerte oder gar notwendige Eigenschaft ist kann sie in speziellen Anwendungsfallen zu stark sein da sie mit einigen in diesen Anwendungsfallen wunschenswerten Eigenschaften inkompatibel ist Dies ist auch bei ElGamal der Fall Aufgrund seiner Homomorphie und Rerandomisierbarkeit kann das Verfahren inharent keine IND CCA Sicherheit bieten Sicherheit gegen Angriffe mit nicht adaptiv gewahlten Chiffraten Bearbeiten IND CCA1 bezeichnet eine abgeschwachte Variante von IND CCA welches auch als IND CCA2 bezeichnet wird die nicht im Widerspruch zu Homomorphie steht Unter der Annahme dass das Decisional Diffie Hellman Problem auch dann schwer bleibt wenn dem Angreifer temporarer Zugriff auf ein bestimmtes Orakel Computational Static Diffie Hellman oracle CSDH Orakel gewahrt wird erfullt ElGamal diesen Sicherheitsbegriff Es muss betont werden dass es sich bei dieser Annahme einerseits nicht um eine etablierte kryptographische Standardannahme handelt sie aber andererseits im generischen Gruppenmodell fur idealisierte Gruppen bewiesen wurde was ein starkes Indiz aber kein Beweis fur die Sicherheit in den tatsachlich benutzten Gruppen darstellt 1 Beweis Bearbeiten Der Beweis verlauft weitgehend analog zu dem zur IND CPA Sicherheit unterscheidet sich aber dahingehend dass der IND CCA1 Angreifer temporaren Zugriff auch ein Entschlusselungsorakel erhalt Zunachst ist es allerdings notwendig das DDHCSDH Spiel zu definieren Der DDHCSDH Herausforderer zieht einen zufalligen Exponenten x Z q displaystyle x leftarrow mathbb Z q nbsp und ubergibt g x displaystyle g x nbsp an den Angreifer Der Angreifer darf polynomiell oft ein Gruppenelement h G displaystyle h in mathbb G nbsp an den Herausforderer ubergeben der mit h x displaystyle h x nbsp antwortet Der Herausforderer zieht ein zufalliges Bit b B displaystyle b in mathbb B nbsp und zwei zufallige Exponenten y z Z q displaystyle y z in mathbb Z q nbsp mit x y z displaystyle xy neq z nbsp Falls b 0 displaystyle b 0 nbsp ubergibt er dem Angreifer das Tupel g y g z displaystyle g y g z nbsp ansonsten g y g x y displaystyle g y g x cdot y nbsp Der Angreifer antwortet mit einem Bit b B displaystyle b in mathbb B nbsp und gewinnt genau dann wenn b b displaystyle b b nbsp Offensichtlich kann ein Angreifer durch Raten eine Erfolgswahrscheinlichkeit von 50 erreichen Als erfolgversprechend betrachten wir daher nur effiziente Angreifer deren Erfolgswahrscheinlichkeit mehr als nur vernachlassigbar hoher als 50 ist Die DDHCSDH Annahme besagt dass es keine derartigen Angreifer gibt Damit konnen wir nun den Beweis zur DDH Sicherheit anpassen Zunachst verandern wir unseren Simulator wie folgt Erhalte G g x G displaystyle mathbb G g x in mathbb G nbsp mit x displaystyle x nbsp unbekannt vom DDHCSDH Herausforderer Unterschied zum DDH Beweis Der Simulator erhalt noch kein g y displaystyle g y nbsp oder g z displaystyle g z nbsp Ubergebe G g x displaystyle mathbb G g x nbsp Gruppe offentlicher Schlussel an den IND CCA1 Angreifer Beantworte Entschlusselungsanfragen Unterschied zum DDH Beweis gesamte Phase Erhalte ein Chiffrat g a g b displaystyle g a g b nbsp mit a b displaystyle a b nbsp unbekannt vom IND CCA1 Angreifer Ubergebe g a displaystyle g a nbsp als Orakel Anfrage an den DDHCSDH Herausforderer Erhalte g x a displaystyle g xa nbsp vom DDHCSDH Herausforderer Ubergebe g b g x a 1 displaystyle g b cdot left g xa right 1 nbsp an den IND CCA1 Angreifer Erhalte vom IND CCA1 Angreifer zwei verschiedene Klartexte m 0 m 1 G displaystyle m 0 m 1 in mathbb G nbsp Erhalte g y g z G 2 displaystyle g y g z in mathbb G 2 nbsp mit y z displaystyle y z nbsp unbekannt vom DDHCSDH Herausforderer Unterschied zum DDH Beweis Im DDH Beweis erhalt der Simulator diese Werte bereits am Anfang Ziehe eine zufalliges Bit b B displaystyle b leftarrow mathbb B nbsp Ubergebe c g y g z m b displaystyle c g y g z cdot m b nbsp als Chiffrat an den IND CCA1 Angreifer Erhalte ein bit b B displaystyle b in mathbb B nbsp vom IND CPA Angreifer Ubergebe b b b displaystyle b b b nbsp an den DDH HerausfordererDie weitere Argumentation ist exakt analog zu der des IND CPA Beweises Die Existenz eines erfolgversprechenden Angreifers auf die IND CCA1 Sicherheit von ElGamal impliziert die Existenz eines erfolgversprechenden Angreifers auf das DDHCSDH Spiel Da die DDHCSDH Annahme einen solchen Angreifer ausschliesst bedeutet dies dass es keinen erfolgversprechenden Angreifer auf die IND CCA1 Sicherheit von ElGamal gibt und ElGamal damit IND CCA1 sicher ist Unsicherheit gegenuber Quantencomputern Bearbeiten Quantencomputer sind mit einer Variante des Shor Algorithmus in der Lage diskrete Logarithmen in beliebigen zyklischen Gruppen endlicher Ordnung zu ziehen Dies hat zur Folge dass ein mit hinreichend vielen verschrankbaren Qubits ausgestatteter Quantencomputer effizient in der Lage ware jegliche Variante von ElGamal vollumfanglich zu brechen indem er den geheimen Schlussel aus dem offentlichen berechnet Sonstige Eigenschaften BearbeitenElGamal bietet neben seiner Sicherheit auch weitere Eigenschaften die in manchen Zusammenhangen nutzlich sein konnen Homomorphe Verschlusselung Bearbeiten Es seien c c displaystyle c c nbsp Chiffrate der Klartexte m m displaystyle m m nbsp mit den Verschlusselungszufallen r r displaystyle r r nbsp fur den Offentlichen Schlussel g a displaystyle left g a right nbsp Dann konnen diese ohne Kenntnis des geheimen Schlussels durch komponentenweise Verknupfung mit der Gruppenoperation zu einem Chiffrat von m m displaystyle m cdot m nbsp verknupft werden c 0 c 1 c 0 c 1 c 0 c 0 c 1 c 1 g r g r g a r m g a r m g r r g a r a r m m g r r g a r r m m displaystyle c 0 c 1 cdot c 0 c 1 c 0 cdot c 0 c 1 cdot c 1 left g r cdot g r g ar cdot m cdot g ar cdot m right left g r r g ar ar cdot m cdot m right left g r r g a r r cdot m cdot m right nbsp Rerandomisierbarkeit Bearbeiten Es sei c c 0 c 1 displaystyle c c 0 c 1 nbsp ein Chiffrat eines Klartextes m displaystyle m nbsp mit Verschlusselungszufall r displaystyle r nbsp fur den Offentlichen Schlussel g a displaystyle left g a right nbsp Dann kann ohne Kenntnis des geheimen Schlussels ein Chiffrat c displaystyle c nbsp mit demselben Klartext berechnet werden dem dies auch im direkten Vergleich nicht angesehen werden kann Es sei r displaystyle r nbsp ein frisch zufallig gewahlter Exponent c 0 c 1 g r g a r g r g r g a r m g a r g r r g a r a r m g r r g a r r m displaystyle c 0 c 1 cdot left g r left g a right r right left g r cdot g r g ar cdot m cdot g ar right left g r r g ar ar cdot m right left g r r g a r r cdot m right nbsp In gewisser Weise handelt es sich hierbei um die Nutzung der Homomorphie Eigenschaft mit einem neu erzeugtem Chiffrat dessen Klartext das neutrale Element 1 ist Ununterscheidbarkeit von Empfangern Bearbeiten ElGamal Chiffrate bieten Anonymitat in dem Sinne dass einem Chiffrat selbst bei vom Angreifer gewahltem Klartext nicht angesehen werden kann fur welchen von mehreren offentlichen Schlusseln aus derselben Gruppe es erstellt wurde 2 Ein asymmetrisches Verschlusselungsverfahren ist im hier verwendeten Sinne anonym unter Angriffen mit gewahlten Klartexten wenn es keinen erfolgversprechenden Angreifer gibt der folgendes Spiel besser als durch blosses Raten Erfolgswahrscheinlichkeit 1 2 textstyle frac 1 2 nbsp gewinnen kann Der Herausforderer erzeugt zwei Schlusselpaare und ubergibt die offentlichen Schlussel dem Angreifer Der Angreifer ubergibt dem Herausforderer einen gultigen Klartext m displaystyle m nbsp Der Herausforderer wahlt zufallig einen der beiden offentlichen Schlussel verschlusselt m displaystyle m nbsp mit ihm und ubergibt das Chiffrat an den Angreifer Der Angreifer ubergibt dem Herausforderer seine Vermutung mit welchem Schlussel das Chiffrat erzeugt wurde und gewinnt genau dann wenn er recht hat Beweis Bearbeiten Der Beweis erfolgt erneut durch Reduktion mit dem folgenden Simulator Erhalte G g x g y g z G 3 displaystyle mathbb G g x g y g z in mathbb G 3 nbsp mit x y z displaystyle x y z nbsp unbekannt vom DDH Herausforderer Ziehe ein zufalliges Bit b B displaystyle b leftarrow mathbb B nbsp und ein zufalliges Gruppenelement h G displaystyle h leftarrow mathbb G nbsp Falls b 0 displaystyle b 0 nbsp ubergebe g x h displaystyle g x h nbsp an den Angreifer ansonsten h g x displaystyle h g x nbsp Erhalte einen Klartext m G displaystyle m in mathbb G nbsp vom Angreifer Ubergebe g y g z m displaystyle g y g z cdot m nbsp an den Angreifer Erhalte ein bit b B displaystyle b in mathbb B nbsp vom Angreifer Ubergebe b b b displaystyle b b b nbsp an den DDH HerausfordererDie weitere Analyse verlauft nahezu identisch zu der zur semantischen Sicherheit Auch hier ergeben sich zwei Falle Falls x y z displaystyle xy neq z nbsp dann ist g y g z displaystyle g y g z nbsp mit uberwaltigender Wahrscheinlichkeit fur keinen der beiden offentlichen Schlussel ein Chiffrat von m displaystyle m nbsp sondern in beiden Fallen von reinem Zufall Der Angreifer kann in diesem Fall inharent keine bessere Strategie als raten haben womit er b displaystyle b nbsp mit der Wahrscheinlichkeit 1 2 textstyle frac 1 2 nbsp korrekt bzw falsch rat Da der Simulator genau dann die korrekte Antwort 0 im DDH Spiel gibt wenn der IND CPA Angreifer falsch rat liegt der Simulator in diesem Fall mit der Wahrscheinlichkeit 1 2 textstyle frac 1 2 nbsp richtig Falls x y z displaystyle xy z nbsp so ist die Simulation perfekt Es sei 1 2 ϵ textstyle frac 1 2 epsilon nbsp die Erfolgswahrscheinlichkeit des Angreifers den offentlichen Schlussel korrekt zu erraten Da der Simulator genau dann die korrekte Antwort 1 im DDH Spiel gibt wenn der Angreifer richtig rat liegt der Simulator in diesem Fall mit der Wahrscheinlichkeit 1 2 ϵ textstyle frac 1 2 epsilon nbsp richtig Da beide Falle mit Wahrscheinlichkeit 1 2 textstyle frac 1 2 nbsp auftreten ergibt sich fur die Erfolgswahrscheinlichkeit des Simulators im DDH Spiel 1 2 1 2 1 2 ϵ 1 2 ϵ 2 textstyle frac 1 2 left frac 1 2 frac 1 2 epsilon right frac 1 2 frac epsilon 2 nbsp Falls der Angreifer erfolgversprechend ware so ware ϵ displaystyle epsilon nbsp nicht vernachlassigbar und damit auch ϵ 2 textstyle frac epsilon 2 nbsp nicht Da die Laufzeit des Simulators klar polynomiell im Sicherheitsparameter ist und das Gleiche nach Annahme auch fur den Angreifer gilt stellt der Simulator genau einen erfolgversprechenden DDH Angreifer dar falls der Angreifer auf die Ununterscheidbarkeit des Empfangers erfolgversprechend ist Da wir davon ausgehen dass es keinen erfolgversprechenden DDH Angreifer gibt DDH Annahme wir aber gezeigt haben dass die Existenz eines erfolgversprechenden Empfanger Unterscheiders die Existenz eines Solchen impliziert kann es keinen erfolgversprechenden Angreifer geben der einem ElGamal Chiffrat mit bekanntem oder gar gewahltem Klartext ansieht fur welchen Empfanger es bestimmt ist Verschlusseln fur mehrere Empfanger Bearbeiten Es seien g x 0 g x 1 g x n displaystyle g x 0 g x 1 dots g x n nbsp offentliche Schlussel verschiedener Empfanger Das Produkt dieser Schlussel ist nun seinerseits ein offentlicher Schlussel dessen privater Schlussel die Summe der privaten Schlussel ist Dies ermoglicht es eine Nachricht so fur mehrere Empfanger zu verschlusseln dass diese nur gemeinsam in der Lage sind das Chiffrat zu entschlusseln Diese Entschlusselung kann ferner in beliebiger Reihenfolge erfolgen Wir betrachten nun den Fall fur nur zwei Parteien Es sei g y g x 0 x 1 g x 0 g x 1 displaystyle g y g x 0 x 1 g x 0 cdot g x 1 nbsp und c c 0 c 1 g r g y r m displaystyle c c 0 c 1 g r g yr cdot m nbsp ein Chiffrat von m displaystyle m nbsp mit Verschlusselungszufall r displaystyle r nbsp Beide Parteien konnen nun g r x 0 displaystyle g r cdot x 0 nbsp beziehungsweise g r x 1 displaystyle g r cdot x 1 nbsp berechnen Werden diese Werte nun in beliebiger Reihenfolge mit c 1 displaystyle c 1 nbsp multipliziert so ergibt sich g y r m g r x 0 g r x 1 g x 0 x 1 r g r x 0 g r x 1 m g r x 0 x 1 x 0 x 1 m g 0 m m displaystyle g yr cdot m cdot g r cdot x 0 cdot g r cdot x 1 g x 0 x 1 r cdot g rx 0 cdot g rx 1 cdot m g r x 0 x 1 x 0 x 1 cdot m g 0 cdot m m nbsp Zu beachten ist in diesem Zusammenhang auch dass ein teilweise Entschlusseltes Chiffrat ein gultiges Chiffrat bezuglich der verbleibenden Schlussel darstellt So gilt g y r m g r x 0 g x 0 x 1 r g r x 0 m g r x 0 x 1 x 0 m g r x 1 displaystyle g yr cdot m cdot g r cdot x 0 g x 0 x 1 r cdot g rx 0 cdot m g r x 0 x 1 x 0 cdot m g rx 1 nbsp was zusammen mit c 0 displaystyle c 0 nbsp ein regulares Chiffrat fur den offentlichen Schlussel g x 1 displaystyle g x 1 nbsp mit Zufall r displaystyle r nbsp darstellt Diese Eigenschaft kann insbesondere im Zusammenspiel mit der Rerandomisierbarkeit und Zero Knowledge Beweisen beim Entwurf komplexer Protokolle nutzlich sein Nachtragliches Uberverschlusseln mit bekanntem privatem Schlussel Bearbeiten Wahrend fur das zuvor beschriebene Verschlusseln fur mehrere Empfanger nur die offentlichen Schlussel benotigt werden mussen diese jedoch bereits zum Zeitpunkt der Verschlusselung vorliegen Ist andererseits der geheime Schlussel bekannt so kann dieser auch nachtraglich hinzugefugt werden Es sei wieder c c 0 c 1 g r g r x m displaystyle c c 0 c 1 left g r g rx cdot m right nbsp ein Chiffrat eines Klartextes m displaystyle m nbsp mit Verschlusselungszufall r displaystyle r nbsp fur den Offentlichen Schlussel g a displaystyle left g a right nbsp Ferner sei g y displaystyle g y nbsp ein weiterer offentlicher Schlussel zu dem der private Schlussel y displaystyle y nbsp gehort Eine Partei die diesen privaten Schlussel und das Chiffrat kennt kann nun g r y g r y displaystyle left g r right y g ry nbsp berechnen und dies mit c 1 displaystyle c 1 nbsp multiplizieren was ihr das Chiffrat c c 0 c 1 g r g r x g r y m g r g r x y m displaystyle c c 0 c 1 left g r g rx cdot g ry cdot m right left g r g r x y cdot m right nbsp gibt welches die zuvor beschriebene Struktur eines Chiffrats mit auf mehreren Parteien aufgeteilten Schlussel hat Zu beachten ist in diesem Zusammenhang dass g y displaystyle g y nbsp kein altbekannter Schlussel sein muss sondern frisch erzeugt werden kann Wie auch schon die regulare Aufteilung eines Schlussels ist diese Eigenschaft in erster Linie beim Einsatz in komplexeren Protokollen im Zusammenspiel mit weiteren Primitiven nutzlich Sicherheitsprobleme bei Protokollabweichungen BearbeitenAuch wenn Elgamal sicher ist gilt diese Aussage nur fur den Fall dass das Verfahren korrekt implementiert wurde Durch schlechte Wahl der Parameter oder Fehler in der Implementierung konnen unsichere Spezialfalle auftreten Mehrfache Benutzung des Verschlusselungszufalls Bearbeiten Aus Effizienzgrunden konnte der Sender auf die Idee kommen fur mehrere Nachrichten m 0 m 1 displaystyle m 0 m 1 dots nbsp an den gleichen Empfanger mehrfach denselben Zufall r displaystyle r nbsp zu verwenden In diesem Fall ware die vergleichsweise aufwendige Exponentiation in der Gruppe nur einmal notwendig und es wurde eine Gruppenoperation pro Nachricht verbleiben Ein derartiges Vorgehen ist allerdings hochst unsicher was bereits daran erkannt werden kann dass gleiche Klartext auf gleiche Chiffrate abgebildet wurden was unvereinbar mit IND CPA Sicherheit ist Daruber hinaus genugt dem Angreifer ein einziges Klartext Chiffrat Paar um alle anderen Nachrichten zu entschlusseln Sei m 0 c 0 c 1 displaystyle m 0 c 0 c 1 nbsp das dem Angreifer bekannte Klartext Chiffrat Paar und c 0 c 1 displaystyle c 0 c 1 nbsp ein weiteres Chiffrat mit demselben Zufall In diesem Fall gilt c 0 c 0 displaystyle c 0 c 0 nbsp und c 1 m 0 c 1 g a r m 1 m 0 g a r m 0 m 1 textstyle frac c 1 cdot m 0 c 1 frac left g ar cdot m 1 right cdot m 0 g ar cdot m 0 m 1 nbsp Selbst wenn kein Klartext Chiffrat Paar vorliegt sind die Folgen allerdings potentiell desastros da nach wie vor der Quotient der Klartexte gleich dem Quotienten der Chiffrate ist und damit erhebliche Information uber die Relation der Klartexte offentlich wird c 1 c 1 g a r m 0 g a r m 1 m 0 m 1 textstyle frac c 1 c 1 frac g ar cdot m 0 g ar cdot m 1 frac m 0 m 1 nbsp Anschaulich lasst sich all dies dadurch erklaren dass die eigentliche Verschlusselung bei ElGamal der eines One Time Pads ahnelt Die DDH Annahme besagt dass g a r displaystyle g ar nbsp ununterscheidbar von Zufall ist selbst wenn g a displaystyle g a nbsp und g r displaystyle g r nbsp bekannt sind Die eigentlich Verschlusselung findet dann dadurch statt dass der Klartext mit diesem pseudozufalligen Element maskiert wird Die mehrfache Verwendung desselben Zufalls hat nun zur Folge dass das maskierende Element mehrfach verwendet wird was der bekanntermassen unsicheren mehrfachen Verwendung des Verschlusselungszufalls bei One Time Pads entspricht Probleme mit Untergruppen Bearbeiten Fur die Sicherheit vom ElGamal muss in der verwendeten Gruppe die DDH Annahme gelten Eine notwendige Bedingung hierfur ist dass die Ordnung q displaystyle q nbsp von G displaystyle mathbb G nbsp prim ist so dass die triviale Gruppe die einzige echte Untergruppe von G displaystyle mathbb G nbsp ist Ist dem nicht so kann dies fatale Folgen haben Fur jeden Teiler n displaystyle n nbsp der Gruppenordnung q displaystyle q nbsp existiert eine Untergruppe von G displaystyle mathbb G nbsp mit der Ordnung n displaystyle n nbsp Ein Element h G displaystyle h in mathbb G nbsp ist genau dann ein Element dieser Untergruppe falls h n 1 displaystyle h n 1 nbsp womit sich fur jedes Element leicht uberprufen lasst in welchen Untergruppen es vorhanden ist Dies ermoglicht Unterscheidungsangriffe gegen ElGamal Seien der offentliche Schlussel g a displaystyle g a nbsp und das erste Element eines Chiffrats g r displaystyle g r nbsp Erzeuger der gesamten Gruppe G displaystyle mathbb G nbsp In diesem Fall offenbart das Chiffrat fur alle bekannten Faktoren von q displaystyle q nbsp ob der Klartext in der Untergruppe mit der jeweiligen Ordnung liegt Dieses Problem tritt insbesondere bei der Verwendung von Restklassengruppen auf wenn eine einfache Primzahl p displaystyle p nbsp als Modulus verwendet wird Da 0 kein Element der multiplikativen Gruppe ist ist die Gruppenordnung in diesem Fall p 1 displaystyle p 1 nbsp Die korrekte Gegenmassnahme stellt in diesem Fall die Verwendung einer Untergruppe primer Ordnung dar wobei sichergestellt sein muss dass diese Untergruppe nach wie vor gross genug ist um anderweitigen Angriffen zu widerstehen In der Praxis wird bei korrekter Verwendung in aller Regel p displaystyle p nbsp als sichere Primzahl gewahlt und die Untergruppe der Quadrate der zugehorigen Einheitengruppe des Primkorpers verwendet Wichtig ist hierbei aber dass der Erzeuger tatsachlich ein Quadrat ist da ansonsten dem Chiffrat angesehen werden kann ob es sich beim Klartext um ein Quadrat handelt Wahrend dies auf den ersten Blick nicht besonders schlimm erscheinen mag gibt es unter der DDH Annahme beweisbar sichere Protokolle die hierdurch vollumfanglich gebrochen werden 3 Ein weiteres Problem mit Untergruppen das bei nicht primer Ordnung auftreten kann betrifft Elemente die nur sehr kleine Untergruppen erzeugen Falls der Empfanger bei der Schlusselerzeugung einen Exponenten a displaystyle a nbsp wahlt sodass sein offentlicher Schlussel g a displaystyle g a nbsp nur eine sehr kleine Untergruppe erzeugt so wird auch die durch den Verschlusselungszufall erzeugte Maske g a r displaystyle left g a right r nbsp in dieser Untergruppe liegen Effektiv bedeutet dies dass sie sich durch vollstandige Suche leicht finden lasst und das Chiffrat in der Folge leicht entschlusselt werden kann Dieser kann beispielsweise wie folgt aussehen Der Empfanger wahlt die Gruppe G Z 13 displaystyle mathbb G mathbb Z 13 times nbsp mit Erzeuger g 2 displaystyle g 2 nbsp Der Empfanger wahlt a 4 displaystyle a 4 nbsp und berechnet A 2 4 3 mod 13 displaystyle A equiv 2 4 equiv 3 mod 13 nbsp als seinen offentlichen SchlusselAllerdings gilt 3 1 3 9 displaystyle langle 3 rangle lbrace 1 3 9 rbrace nbsp bzw 3 3 1 mod 13 displaystyle 3 3 equiv 1 mod 13 nbsp D h 3 displaystyle 3 nbsp erzeugt die Untergruppe der Ordnung 3 Denn nach dem Hauptsatz uber endlich erzeugte abelsche Gruppen zerfallt G displaystyle mathbb G nbsp gemass Z 13 Z 3 Z 4 displaystyle mathbb Z 13 times cong mathbb Z 3 times mathbb Z 4 nbsp Die Folge hiervon ist dass der Sender den Klartext m displaystyle m nbsp nur noch mit einem von drei Gruppenelementen 1 3 9 displaystyle lbrace 1 3 9 rbrace nbsp multipliziert egal welcher Exponent k displaystyle k nbsp gewahlt wird Insbesondere ist in einem von drei Fallen das Chiffrat identisch zum Klartext Hat p 1 displaystyle p 1 nbsp keine grossen Faktoren lasst sich dieser Angriff sogar auf alle Elemente von G displaystyle mathbb G nbsp ausweiten Durch potenzieren des Gruppenelements mit den verschiedenen Faktoren der Gruppenordnung lasst sich jedes Gruppenelement in alle Untergruppen abbilden in denen dann der Modulus relativ zur Untergruppenordnung bestimmt werden kann durch kombinieren dieser Moduli relativ zu den Untergruppenordnungen lasst sich dann der Modulus des ursprunglichen Elements in Erfahrung bringen Pohlig Hellman Algorithmus Literatur BearbeitenTaher ElGamal A public key cryptosystem and a signature scheme based on discrete logarithms Juli 1985 englisch Johannes Buchmann Einfuhrung in die Kryptographie 3 erweiterte Auflage Springer Berlin u a 2004 ISBN 3 540 40508 9 Dietmar Watjen Kryptographie 1 Auflage Spektrum Akademischer Verlag Heidelberg 2004 ISBN 3 8274 1431 8 Alfred J Menezes Paul C van Oorschot Scott A Vanstone Handbook of Applied Cryptography 5 Auflage CRC Press 2001 ISBN 0 8493 8523 7 8 4 ElGamal public key encryption S 294 englisch Auch online verfugbar Mit Beschreibung des Algorithmus Einzelnachweise Bearbeiten Helger Lipmaa On the CCA1 Security of Elgamal and Damgard s Elgamal 2008 englisch Mihir Bellare Alexandra Boldyreva Anand Desai David Pointcheval Key Privacy in Public Key Encryption Florian Weber On Generators of Diffie Hellman Groups englisch Abgerufen von https de wikipedia org w index php title Elgamal Verschlusselungsverfahren amp oldid 237075975