From 666db37e210c4d880cb1d9cfbfca9c11ed374ba7 Mon Sep 17 00:00:00 2001 From: Aris Adamantiadis Date: Sat, 21 Sep 2013 23:34:50 +0200 Subject: kex: implement curve25519-sha256@libssh.org --- include/libssh/crypto.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'include/libssh/crypto.h') diff --git a/include/libssh/crypto.h b/include/libssh/crypto.h index 5376ca61..eaff2ffd 100644 --- a/include/libssh/crypto.h +++ b/include/libssh/crypto.h @@ -44,6 +44,7 @@ #endif #include "libssh/ecdh.h" #include "libssh/kex.h" +#include "libssh/curve25519.h" enum ssh_key_exchange_e { /* diffie-hellman-group1-sha1 */ @@ -51,7 +52,9 @@ enum ssh_key_exchange_e { /* diffie-hellman-group14-sha1 */ SSH_KEX_DH_GROUP14_SHA1, /* ecdh-sha2-nistp256 */ - SSH_KEX_ECDH_SHA2_NISTP256 + SSH_KEX_ECDH_SHA2_NISTP256, + /* curve25519-sha256@libssh.org */ + SSH_KEX_CURVE25519_SHA256_LIBSSH_ORG }; struct ssh_crypto_struct { @@ -60,6 +63,11 @@ struct ssh_crypto_struct { EC_KEY *ecdh_privkey; ssh_string ecdh_client_pubkey; ssh_string ecdh_server_pubkey; +#endif +#ifdef HAVE_CURVE25519 + ssh_curve25519_privkey curve25519_privkey; + ssh_curve25519_pubkey curve25519_client_pubkey; + ssh_curve25519_pubkey curve25519_server_pubkey; #endif ssh_string dh_server_signature; /* information used by dh_handshake. */ size_t digest_len; /* len of all the fields below */ -- cgit