Cryptsetup 1.6.5 Release Notes ============================== Changes since version 1.6.4 * Allow LUKS header operation handling without requiring root privilege. It means that you can manipulate with keyslots as a regular user, only write access to device (or image) is required. This requires kernel crypto wrapper (similar to TrueCrypt device handling) to be available (CRYPTO_USER_API_SKCIPHER kernel option). If this kernel interface is not available, code fallbacks to old temporary keyslot device creation (where root privilege is required). Note that activation, deactivation, resize and suspend operations still need root privilege (limitation of kernel device-mapper backend). * Fix internal PBKDF2 key derivation function implementation for alternative crypto backends (kernel, NSS) which do not support PBKDF2 directly and have issues with longer HMAC keys. This fixes the problem for long keyfiles where either calculation is too slow (because of internal rehashing in every iteration) or there is a limit (kernel backend seems to not support HMAC key longer than 20480 bytes). (Note that for recent version of gcrypt, nettle or openssl the internal PBKDF2 code is not compiled in and crypto library internal functions are used instead.) * Support for Python3 for simple Python binding. Python >= 2.6 is now required. You can set Python compiled version by setting --with-python_version configure option (together with --enable-python). * Use internal PBKDF2 in Nettle library for Nettle crypto backend. Cryptsetup compilation requires Nettle >= 2.6 (if using Nettle crypto backend). * Allow simple status of crypt device without providing metadata header. The command "cryptsetup status" will print basic info, even if you do not provide detached header argument. * Allow to specify ECB mode in cryptsetup benchmark. * Add some LUKS images for regression testing. Note that if image with Whirlpool fails, the most probable cause is that you have old gcrypt library with flawed whirlpool hash. Read FAQ section 8.3 for more info. Cryptsetup API NOTE: The direct terminal handling for passphrase entry will be removed from libcryptsetup in next major version (application should handle it itself). It means that you have to always either provide password in buffer or set your own password callback function trhough crypt_set_password_callback(). See API documentation (or libcryptsetup.h) for more info.