www.libssh2.org | Daily snapshots | Mailing list archive | Docs | Examples | github

Archive Index This month's Index

Subject: ed25519 and curve25519 for key exchange

ed25519 and curve25519 for key exchange

From: Clemens Gruber <clemensgru_at_gmail.com>
Date: Wed, 02 Apr 2014 21:06:42 +0200

Hi,

I am currently playing around with Daniel J. Bernstein's public-key
signature system. It looks great in comparison to ECDSA and it is very
fast, which would be a benefit on all embedded systems. Besides that
is's also not using the NIST curves..

OpenSSH introduced support for ed25519 public keys with version 6.5:
http://www.openssh.com/txt/release-6.5
libssh supports using curve25519 for key exchange, see:
http://git.libssh.org/projects/libssh.git/tree/doc/curve25519-sha256@libssh.org.txt

More info about Ed25519: http://ed25519.cr.yp.to
There is also a paper: http://ed25519.cr.yp.to/ed25519-20110926.pdf

So my question is: Did anyone already think about implementing support
for ed25519 keys and curve25519 key exchange in libssh2 to be compatible
with OpenSSH >= 6.5 ?

In the process of that, implementing Salsa-20 / ChaCha (djbs stream
cipher) and Poly1305-AES (a MAC) could also be useful.

Please share your opinion about adding those to libssh2. As far as I
know, neither OpenSSL nor libgcrypt support them (yet), but using djb's
NaCl library for that purpose might be an option:
http://nacl.cace-project.eu

Happy Hacking!

Clemens
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel
Received on 2014-04-02

the libssh2 team