Verschüsselte Volumes von LUKS1 auf LUKS2 konvertieren

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/sda1Code-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 argon2idCode-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.

Cruiz
Cruizhttps://curius.de
Moin, meine Name ist Gerrit und ich betreibe diesen Blog seit 2014. Der Schutz der digitalen Identität, die einen immer größeren Raum unseres Ichs einnimmt ist mir ein Herzensanliegen, das ich versuche tagtäglich im Spannungsfeld digitaler Teilhabe und Sicherheit umzusetzen. Die Tipps, Anleitungen, Kommentare und Gedanken hier entspringen den alltäglichen Erfahrungen.
  1. Kleiner Hinweis zu luksChangeKey.

    Mit Argon2 sollte man (leider immer noch) vorsichtig sein.
    GRUB unterstützt nur PBKDF2 in der aktuellen Version 2.12, obwohl es längst einen Fix gäbe. Seit über 6 Jahren wird das nicht gelöst: https://savannah.gnu.org/bugs/?55093. Und das, obwohl Argon2 bei LUKS2 der Standard ist.

    https://wiki.archlinux.org/title/GRUB#LUKS2
    https://wiki.archlinux.org/title/Dm-crypt/Device_encryption#Encrypting_devices_with_cryptsetup

    Hattest du Glück und deine Distro hatte einen Fork von GRUB mit dem Fix eingebaut?

    • Das gilt nur, wenn man auf eine unverschlüsselte Boot-Partition verzichtet. Ich habe noch eine, weil mich der Delay bei GRUB und das englische Tastaturlayout aufgeregt hat.

Kommentarfunktion ist geschlossen.

Weitere Artikel