Das bekannteste Public-Key-Verfahren, welches auf dem DLP basiert, ist das Verschlüsselungsverfahren nach T. ElGamal:
A führt die folgenden Schritte durch:
B führt die folgenden Schritte durch:
A führt die folgenden Schritte durch:
Ein Nachteil der ElGamal-Verschlüsselung besteht in der ,,Ciphertext-Expansion'',
der Kryptotext
ist nämlich doppelt
so lang, wie der Klartext
. Da Public-Key-Verfahren üblicherweise
nur auf kleinen Mengen von Klartext angewendet werden (z.B. auf einen
Session-Key für symmetrische Verschlüsselung), ist dies meistens nicht
kritisch. Andererseits ist die Text-Expansion die Folge einer anderen,
vorteilhaften Eigenschaft: Da bei jeder Verschlüsselung für
eine (andere) Zufallszahl gewählt wird, werden bei verschiedenen Verschlüsselungen
mit ansonsten gleichen Parametern gleiche Klartexte auf unterschiedliche
Kryptotexte abgebildet. Diese Eigenschaft erschwert den ,,Wörterbuch-Angriff'',
bei dem große Mengen an Klartext und korrespondierendem Kryptotext
vorausberechnet werden. Mithin ist es kritisch, daß für jede Verschlüsselung
ein anderes
gewählt wird. Um das zu sehen, beachte man, daß
ist, wenn
konstant gewählt wird; wenn einem Angreifer bereits z.B.
bekannt ist, kann er daraus
berechnen.