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.