# ElGamal # pri_key = private key # g = generator or high order element (not needed) # p = prime # (m_1,m2) = couple of numbers < p def elgamal_decrypt(pri_key,g,p,(m1,m2)): return Mod(m2,p)*Mod(m1,p)^(-pri_key)