I see 3 alternatives: use the original NaCl, use the unofficial fork libsodium, or use TweetNaCl.
The latter shares the same authors as the original NaCl, with the advantage of being much smaller.
I don't like the fact that TinySSH modified TweetNaCl, and
added back MD5:
/*
Based on tweetnacl 20140427 (http://tweetnacl.cr.yp.to software.html)
- updated int/uint types to crypto_int/crypto_uint
- added crypto_stream_chacha20
- added crypto_hash_sha256
- added crypto_hash_md5
*/
I mean they use TweetNaCl because it has "state-of-the-art crypto", but then they add back MD5. Something is wrong here ...
It appears to be used only in tinysshd-printkey to print the key's fingerprint.
The fingerprint is 47 characters when printed, the key itself is 64. Since the key is so short does the fingerprint still server a useful purpose, or would it be enough to print only the key?
Comments
I see 3 alternatives: use the original NaCl, use the unofficial fork libsodium, or use TweetNaCl. The latter shares the same authors as the original NaCl, with the advantage of being much smaller.
I don't like the fact that TinySSH modified TweetNaCl, and added back MD5:
I mean they use TweetNaCl because it has "state-of-the-art crypto", but then they add back MD5. Something is wrong here ...Not sure why they added that back but the website states that
It is actually used in the code though. I didn't look into for what it was used though.That seems strange indeed. Some clarification is needed. Perhaps it's part of the whole NIST suite that's disabled right now?
It appears to be used only in tinysshd-printkey to print the key's fingerprint.
The fingerprint is 47 characters when printed, the key itself is 64. Since the key is so short does the fingerprint still server a useful purpose, or would it be enough to print only the key?