1.0.14
版本发布时间: 2017-09-22 07:21:36
jedisct1/libsodium最新发布版本:1.0.20-RELEASE(2024-05-25 21:50:27)
- iOS binaries should now be compatible with WatchOS and TVOS.
- WebAssembly is now officially supported. Special thanks to @facekapow and @pepyakin who helped to make it happen.
- Internal consistency checks failing and primitives used with dangerous/out-of-bounds/invalid parameters used to call abort(3). Now, a custom handler that doesn't return can be set with the
set_sodium_misuse()
function. It still aborts by default or if the handler ever returns. This is not a replacement for non-fatal, expected runtime errors. This handler will be only called in unexpected situations due to potential bugs in the library or in language bindings. -
*_MESSAGEBYTES_MAX
macros (and the corresponding_messagebytes_max()
symbols) have been added to represent the maximum message size that can be safely handled by a primitive. Language bindings are encouraged to check user inputs against these maximum lengths. - The test suite has been extended to cover more edge cases.
-
crypto_sign_ed25519_pk_to_curve25519()
now rejects points that are not on the curve, or not in the main subgroup. - Further changes have been made to ensure that smart compilers will not optimize out code that we don't want to be optimized.
- Visual Studio solutions are now included in distribution tarballs.
- The
sodium_runtime_has_*
symbols for CPU features detection are now defined as weak symbols, i.e. they can be replaced with an application-defined implementation. This can be useful to disable AVX* when temperature/power consumption is a concern. -
crypto_kx_*()
now aborts if called with no non-NULL pointers to store keys to. - SSE2 implementations of
crypto_verify_*()
have been added. - Passwords can be hashed using a specific algorithm with the new
crypto_pwhash_str_alg()
function. - Due to popular demand, base64 encoding (
sodium_bin2base64()
) and decoding (sodium_base642bin()
) have been implemented. - A new
crypto_secretstream_*()
API was added to safely encrypt files and multi-part messages. - The
sodium_pad()
andsodium_unpad()
helper functions have been added in order to add & remove padding. - An AVX512 optimized implementation of Argon2 has been added (written by Ondrej Mosnáček, thanks!)
- The
crypto_pwhash_str_needs_rehash()
function was added to check if a password hash string matches the given parameters, or if it needs an update. - The library can now be compiled with recent versions of emscripten/binaryen that don't allow multiple variables declarations using a single
var
statement.
1、 libsodium-1.0.14.tar.gz 1.79MB
2、 libsodium-1.0.14.tar.gz.minisig 311B
3、 libsodium-1.0.14.tar.gz.sig 566B