Diffie-Hellman algorithm for Go