|
|
|
Steklov Institute St. Petersburg
|
Technische Universität München
|
State University St. Petersburg
|
Joint Advanced Student School (JASS)
Course 1: Algorithms in IT Security
St. Petersburg - Wednesday, March 30 through Saturday, April 9, 2005
Andreas Meier
The ElGamal Cryptosystem
Abstract
Taher Elgamal rst described the ElGamal Cryptosystem [6] in an article
published in the proceedings of the CRYPTO '84, a conference on the advances
of cryptology.
The proposed algorithm belongs to the family of public key cryptographic
algorithms. Therefore it makes use of a key separated into a public and a
private part. A fundamental aspect of this system is, that the knowledge of
the private part makes the decryption easy. If the private key is unknown, it
is virtually impossible to decrypt the message in acceptable time.
The security of ElGamal is based on the discrete logarithm problem. To
encrypt and respectively decrypt a message, a discrete power is executed.
This operation is ecient to compute. An attacker that seeks to decrypt an
intercepted message may try to recover the private key. To this end a logarithm
needs to be computed. No actual method exists for this, given certain
requirements on the initial group are met. Under these circumstances, the
encryption is secure.
Today the ElGamal algorithm is used in many cryptographic products. The
open-source software GnuPG uses ElGamal as standard for signatures. On
behalf of this software and its problems with ElGamal [10] discovered in late
2003 we will show the importance of correct implementation of cryptographic
algorithms.
This paper will present the ElGamal Cryptosystem and will show how it is
used for the encryption and decryption of secret messages as well as for signing
messages in order to make them authentic. Variants of the algorithm will
be shown that aim to make the algorithm more secure. Furthermore, issues
in the design and implementations of the algorithm will be discussed.
|