Elgamal crypto system