Add diffie-hellman key exchange algorithm