elgamal: signature stuff. untested.