Kernel 4.12 brachte, ohne große Aufmerksamkeit zu erregen das neue LUKS2 Format. Die meisten Distributionen setzen es bei Neuinstallation ein, aber viele Programme verschlüsseln noch mit LUKS1. Eine Konversion ist jedoch leicht möglich.
Aufgrund eines Kommentars hier im Blog (siehe: LUKS Volumes mit einem Wiederherstellungsschlüssel versehen) hatte ich mir das mal angesehen. Mein System ist ja noch relativ neu und deshalb natürlich mit LUKS2 verschlüsselt. Auf die externen Festplatten trifft dies jedoch nicht zu. Hier scheinen selbst aktuelle Versionen von Partition Manager und GNOME Disks noch auf LUKS1 zu setzen.
Prüfen lässt sich das leicht mit cryptsetup. Natürlich wie immer das richtige Device ansteuern. Im vorliegenden Fall war dies /dev/sda1.
# cryptsetup luksDump /dev/sda1
Code-Sprache: PHP (php)
Es kommt in etwa folgende Ausgabe:
LUKS header information for /dev/sda1
Version: 1
Cipher name: aes
Cipher mode: xts-plain64
Hash spec: sha256
Payload offset: 4096
MK bits: 512
MK digest: 87 51 d5 12 69 a7 4e 5d 6a 56 b3 f6 5e 6b 5d ef 21 81 d6 ce
MK salt: b9 9f 9e bf 34 da ba 5f 33 10 f5 e3 c2 7b 1f 33
9e f4 6d 1c e6 cd bc 8b 48 ad 34 56 98 79 cd ce
MK iterations: 126517
UUID: 3c4624a7-2e5b-4aa3-a7b8-76e4d8dc0aa8
Key Slot 0: ENABLED
Iterations: 2024276
Salt: 93 5c b6 24 c5 47 e2 71 23 dd 57 3a d3 4a 58 9a
94 28 f9 be 41 b7 63 28 b1 8b e2 bf 84 4a 39 a6
Key material offset: 8
AF stripes: 4000
Key Slot 1: DISABLED
Key Slot 2: DISABLED
Key Slot 3: DISABLED
Key Slot 4: DISABLED
Key Slot 5: DISABLED
Key Slot 6: DISABLED
Key Slot 7: DISABLED
Sehr prominent ist oben die Version angegeben.
Die folgenden Anleitungen können bei fehlerhafter Anwendung zu Datenverlust führen. Es ist deshalb zwingend vorher ein Backup anzulegen und die Hinweise sind sorgsam zu lesen und umzusetzen.
Anschließend die Konversion in LUKS2 vornehmen:
# cryptsetup convert /dev/sda1 --type luks2
Code-Sprache: PHP (php)
Hiernach die Abfrage bestätigen und das war es auch schon. Bei einer erneuten Abfrage sollte Version 2 in der entsprechenden Zeile stehen.
Wer mag kann zusätzlich sein Passwort in von PBKDF auf Argon2 konvertieren. PBKDF2 ist nicht unbedingt unsicher, aber Argon2 macht einem Angreifer einen Brute Force Angriff deutlich schwerer.
# cryptsetup luksChangeKey /dev/sda1 --pbkdf argon2id
Code-Sprache: PHP (php)
Zur Bestätigung muss das alte und neue Kennwort eingeben werden. Bei Bedarf kann man auch das alte Kennwort als neues Kennwort nutzen.