mirror of
https://gitlab.com/cryptsetup/cryptsetup.git
synced 2025-12-12 03:10:08 +01:00
Add 2.0.6 release notes.
This commit is contained in:
97
docs/v2.0.6-ReleaseNotes
Normal file
97
docs/v2.0.6-ReleaseNotes
Normal file
@@ -0,0 +1,97 @@
|
|||||||
|
Cryptsetup 2.0.6 Release Notes
|
||||||
|
==============================
|
||||||
|
Stable bug-fix release.
|
||||||
|
All users of cryptsetup 2.0.x should upgrade to this version.
|
||||||
|
|
||||||
|
Cryptsetup 2.x version introduces a new on-disk LUKS2 format.
|
||||||
|
|
||||||
|
The legacy LUKS (referenced as LUKS1) will be fully supported
|
||||||
|
forever as well as a traditional and fully backward compatible format.
|
||||||
|
|
||||||
|
Please note that authenticated disk encryption, non-cryptographic
|
||||||
|
data integrity protection (dm-integrity), use of Argon2 Password-Based
|
||||||
|
Key Derivation Function and the LUKS2 on-disk format itself are new
|
||||||
|
features and can contain some bugs.
|
||||||
|
|
||||||
|
Please do not use LUKS2 without properly configured backup or in
|
||||||
|
production systems that need to be compatible with older systems.
|
||||||
|
|
||||||
|
Changes since version 2.0.5
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
* Fix support of larger metadata areas in LUKS2 header.
|
||||||
|
|
||||||
|
This release properly supports all specified metadata areas, as documented
|
||||||
|
in LUKS2 format description (see docs/on-disk-format-luks2.pdf in archive).
|
||||||
|
|
||||||
|
Currently, only default metadata area size is used (in format or convert).
|
||||||
|
Later cryptsetup versions will allow increasing this metadata area size.
|
||||||
|
|
||||||
|
* If AEAD (authenticated encryption) is used, cryptsetup now tries to check
|
||||||
|
if the requested AEAD algorithm with specified key size is available
|
||||||
|
in kernel crypto API.
|
||||||
|
This change avoids formatting a device that cannot be later activated.
|
||||||
|
|
||||||
|
For this function, the kernel must be compiled with the
|
||||||
|
CONFIG_CRYPTO_USER_API_AEAD option enabled.
|
||||||
|
Note that kernel user crypto API options (CONFIG_CRYPTO_USER_API and
|
||||||
|
CONFIG_CRYPTO_USER_API_SKCIPHER) are already mandatory for LUKS2.
|
||||||
|
|
||||||
|
* Fix setting of integrity no-journal flag.
|
||||||
|
Now you can store this flag to metadata using --persistent option.
|
||||||
|
|
||||||
|
* Fix cryptsetup-reencrypt to not keep temporary reencryption headers
|
||||||
|
if interrupted during initial password prompt.
|
||||||
|
|
||||||
|
* Adds early check to plain and LUKS2 formats to disallow device format
|
||||||
|
if device size is not aligned to requested sector size.
|
||||||
|
Previously it was possible, and the device was rejected to activate by
|
||||||
|
kernel later.
|
||||||
|
|
||||||
|
* Fix checking of hash algorithms availability for PBKDF early.
|
||||||
|
Previously LUKS2 format allowed non-existent hash algorithm with
|
||||||
|
invalid keyslot preventing the device from activation.
|
||||||
|
|
||||||
|
* Allow Adiantum cipher construction (a non-authenticated length-preserving
|
||||||
|
fast encryption scheme), so it can be used both for data encryption and
|
||||||
|
keyslot encryption in LUKS1/2 devices.
|
||||||
|
|
||||||
|
For benchmark, use:
|
||||||
|
# cryptsetup benchmark -c xchacha12,aes-adiantum
|
||||||
|
# cryptsetup benchmark -c xchacha20,aes-adiantum
|
||||||
|
|
||||||
|
For LUKS format:
|
||||||
|
# cryptsetup luksFormat -c xchacha20,aes-adiantum-plain64 -s 256 <device>
|
||||||
|
|
||||||
|
The support for Adiantum will be merged in Linux kernel 4.21.
|
||||||
|
For more info see the paper https://eprint.iacr.org/2018/720.
|
||||||
|
|
||||||
|
Unfinished things & TODO for next releases
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
* Authenticated encryption should use new algorithms from CAESAR competition
|
||||||
|
https://competitions.cr.yp.to/caesar-submissions.html.
|
||||||
|
AEGIS and MORUS are already available in kernel 4.18.
|
||||||
|
|
||||||
|
For more info about LUKS2 authenticated encryption, please see our paper
|
||||||
|
https://arxiv.org/abs/1807.00309
|
||||||
|
|
||||||
|
Please note that authenticated encryption is still an experimental feature
|
||||||
|
and can have performance problems for high-speed devices and device
|
||||||
|
with larger IO blocks (like RAID).
|
||||||
|
|
||||||
|
* Authenticated encryption do not set encryption for a dm-integrity journal.
|
||||||
|
|
||||||
|
While it does not influence data confidentiality or integrity protection,
|
||||||
|
an attacker can get some more information from data journal or cause that
|
||||||
|
system will corrupt sectors after journal replay. (That corruption will be
|
||||||
|
detected though.)
|
||||||
|
|
||||||
|
* There are examples of user-defined tokens inside misc/luks2_keyslot_example
|
||||||
|
directory (like a simple external program that uses libssh to unlock LUKS2
|
||||||
|
using remote keyfile).
|
||||||
|
|
||||||
|
* The python binding (pycryptsetup) contains only basic functionality for LUKS1
|
||||||
|
(it is not updated for new features) and will be REMOVED in version 2.1
|
||||||
|
in favor of python bindings to the libblockdev library.
|
||||||
|
See https://github.com/storaged-project/libblockdev/releases that
|
||||||
|
already supports LUKS2 and VeraCrypt devices handling through libcryptsetup.
|
||||||
@@ -1176,6 +1176,9 @@ Specify integrity algorithm to be used for authenticated disk encryption in LUKS
|
|||||||
|
|
||||||
\fBWARNING: This extension is EXPERIMENTAL\fR and requires dm-integrity
|
\fBWARNING: This extension is EXPERIMENTAL\fR and requires dm-integrity
|
||||||
kernel target (available since kernel version 4.12).
|
kernel target (available since kernel version 4.12).
|
||||||
|
For native AEAD modes, also enable "User-space interface for AEAD cipher algorithms"
|
||||||
|
in "Cryptographic API" section (CONFIG_CRYPTO_USER_API_AEAD .config option).
|
||||||
|
|
||||||
For more info, see \fIAUTHENTICATED DISK ENCRYPTION\fR section.
|
For more info, see \fIAUTHENTICATED DISK ENCRYPTION\fR section.
|
||||||
.TP
|
.TP
|
||||||
.B "\-\-integrity\-no\-journal"
|
.B "\-\-integrity\-no\-journal"
|
||||||
|
|||||||
Reference in New Issue
Block a user