diff options
author | Matt Johnston <matt@ucc.asn.au> | 2013-11-08 23:11:43 +0800 |
---|---|---|
committer | Matt Johnston <matt@ucc.asn.au> | 2013-11-08 23:11:43 +0800 |
commit | 79ac024fca717a1d3bf7da156ef3d38c7c87ec0d (patch) | |
tree | 564ad8f3d1279fb855243279e20076389ad8392a /kex.h | |
parent | 8b205d8b07d5e48bba360e32f381920cab286c72 (diff) | |
download | dropbear-79ac024fca717a1d3bf7da156ef3d38c7c87ec0d.tar.gz |
curve25519
Diffstat (limited to 'kex.h')
-rw-r--r-- | kex.h | 19 |
1 files changed, 19 insertions, 0 deletions
@@ -47,6 +47,13 @@ void kexecdh_comb_key(struct kex_ecdh_param *param, buffer *pub_them, sign_key *hostkey); #endif +#ifdef DROPBEAR_CURVE25519 +struct kex_curve25519_param *gen_kexcurve25519_param(); +void free_kexcurve25519_param(struct kex_curve25519_param *param); +void kexcurve25519_comb_key(struct kex_curve25519_param *param, buffer *pub_them, + sign_key *hostkey); +#endif + #ifndef DISABLE_ZLIB int is_compress_trans(); int is_compress_recv(); @@ -92,6 +99,18 @@ struct kex_ecdh_param { }; #endif +#ifdef DROPBEAR_CURVE25519 +#define CURVE25519_LEN 32 +struct kex_curve25519_param { + unsigned char priv[CURVE25519_LEN]; + unsigned char pub[CURVE25519_LEN]; +}; + +/* No header file for curve25519_donna */ +int curve25519_donna(unsigned char *out, const unsigned char *secret, const unsigned char *other); +#endif + + #define MAX_KEXHASHBUF 2000 #endif /* _KEX_H_ */ |