VeraCrypt fehlende Hash-Algorithmen

Knossab

Newbie
Registriert
März 2022
Beiträge
5
Moin liebe Community!
Ich beschäftige mich gerade mit dem Thema Sicherheit. Und besonders bei einem Laptop ist es mir wichtig daß das ganze System ordentlich verschlüsselt ist. Aus diesem Grund habe ich mich für VeraCrypt (VC) entschieden und möchte damit auch das komplette System verschlüsseln.
Als Verschlüsselungskette möchte ich gerne AES(Twofish(Serpent)) mit dem Hash-Algorithmus Whirlpool verwenden.

Wenn ich mit der VC-Installation beginne dann wähle ich "Gesamtes Laufwerk verschlüsseln" an.
Danach bei den "Verschlüsselungsmethoden" kann ich auch AES(Twofish(Serpent)) auswählen. Unten bei Hash-Algorithmus steht mit dann jedoch nur SHA-256 und RIPEMD-160 zur Auswahl.

Woran liegt das? Wie ist es mir möglich, mein gesamtes Laufwerk (System) mit AES(Twofish(Serpent) & Whirlpool zu verschlüsseln?

Würde mich über Hilfe von euch sehr freuen.
Vielen Dank und liebe Grüße
 
Knossab schrieb:
AES(Twofish(Serpent))
AES reicht. der code ist gut auditiert und mit gescheitem passwort + pim + keyfile. AES ist nicht in Polynomialzeit knackbar. Verschenk nicht performance wo es nicht sein muss
Knossab schrieb:
Whirlpool zu verschlüsseln?
fast. SHA, MD%, Whirlpool und co haben nichts mit verschluesselung zu tun -> Lesestoff zum einsteigen
https://de.wikipedia.org/wiki/Hashfunktion
es geht dabei in erster linue um die konsistenzppruefung - sha256 ist mehr als ausreichend. Im prinzip reicht sogar sha1 oder md5 :)
 
  • Gefällt mir
Reaktionen: andy_0
Aus Performance Gründen rate ich dir dazu das System mit AES zu verschlüsseln und eine SHA Variante für das Hashing zu nutzen.

Wieso? AES ist, wie schon erwähnt, erwiesenermaßen hinreichend sicher. Das gleiche gilt für SHA. Beide haben den Vorteil daß sie üblicherweise spezielle Optimierungen im Prozessor genießen und damit sehr schnell d.h. mit wenig Einbußen durchgeführt werden können.

Es gibt so gut wie keinen Grund eine Kettenverschlüsselung einzusetzen. Stelle lieber sicher, dass dein Passwort sicher genug ist. Was nützt die beste Verschlüsselung, wenn sie so langsam ist, dass du sie dann doch wieder entfernst.
 
  • Gefällt mir
Reaktionen: el.com und madmax2010
Hi MadMax & Andy.
Vielen Dank für euer Input und eure Hilfe.
Dann werde ich mir das mit AES anschauen.

Aber trotzdem aus Neugier:
Wenn ich bei der Installation auf Gesamtes Laufwerk verschlüsseln klicke, kann ich -selbst wenn ich jetzt nur AES auswähle- bei Hash nur zwischen SHA-256 & RIPEMD-160 wählen...

Gehe ich jedoch bei der Installation statt auf Gesamtes Laufwerk verschlüsseln auf "Die Windows-Systempartition verschlüsseln" kann ich selbst bei AES zwischen SHA-512, SHA-256, Whirlpool, Streebog, RIPEMD-160 etc. wählen.
Warum wird mir dies beim Gesamten Laufwerk nicht angezeigt?
 
Knossab schrieb:
Warum wird mir dies beim Gesamten Laufwerk nicht angezeigt?
Vermutlich weil der VC Bootloader dafür anders arbeiten muss. Gerade bei Systemen die noch per BIOS oder CSM gestartet werden läuft hier die CPU noch im 16 Bit Modus...
 
  • Gefällt mir
Reaktionen: andy_0
Ich kann es dir nicht sicher sagen, es werden schlichtweg technische Themen sein. Bei der Vollverschlüsselung muss der jeweilige Algorithmus auch außerhalb von Windows laufen, da ja zuerst VeraCrypt startet, den Container (Festplatte) entschlüsselt und dann das darin liegende Windows startet. Und solch eine Implementierung, womöglich in Assembler damit es schnell ist, ist sehr aufwändig.

Mit anderen Worten: AES als Vollverschlüsselung und AES als "Container unter Windows" sind zwar der gleiche Algorithmus, wurden in der Anwendung aber vermutlich zweimal implementiert.
 
Vielen Dank für eure Antworten. Dies kann natürlich gut sein mit dem BIOS. Dann weiß ich zumindest dass ich bei der Einrichtung nichts falsch eingestellt habe und es einen technischen Hintergrund hat :)

Eine letzte Frage:
Ich verfüge über ein Laptop welcher nur 1 SSD hat. Also auf dieser SSD werden die Daten gespeichert und darauf ist auch Windows.

Was ist nun der Unterschied zwischen "Gesamtes Laufwerk verschlüsseln" und "Die Windows-Systempartition verschlüsseln"?
 
Bei der Unterscheidung kommt es drauf an, ob auf dem Laufwerk/ der Partition ein zu bootendes Windows installiert ist. Wenn ja: muss VeraCrypt im BIOS/UEFI vor Windows starten. Wenn nicht, wird das Laufwerk / die Partition einfach verschlüsselt und du kannst es dann mit VeraCrypt in Windows wieder entschlüsseln.

Mit anderen Worten: bei deiner Konfiguration (eine SSD, keine weiteren Partitionen) musst du Windows Systempartition verschlüsseln nutzen. Genaueres sagt dir das VeraCrypt Handbuch (https://www.veracrypt.fr/en/System Encryption.html).
 
Knossab schrieb:
Was ist nun der Unterschied zwischen "Gesamtes Laufwerk verschlüsseln" und "Die Windows-Systempartition verschlüsseln"?

Wenn Du nur eine Partition hast, dürfte das wohl identisch sein. Hast Du aber eine separate Daten-Partition, also z.B. C:\ als Windows-Partition und D:\ als Datenpartition sollte er im ersten Fall alles verschlüsseln, im zweiten nur C:\. Habe mich aber zugegebenermaßen noch nicht mit VeraCrypt beschäftigt, mir reicht BitLocker für meinen Laptop.

Ich hoffe Du hast ein Backup deiner Daten, bevor Du mit den Experimenten anfängst. Wärst nicht der erste, der sich hier meldet, bei dem die VeraCrypt-Experimente schief gelaufen sind.
 
  • Gefällt mir
Reaktionen: BeBur
Wie steht ihr zu der Kombination: AES(Twofish(Serpent)) mit SHA-256? Kann man dies so sicher kombinieren?
Oder verwende ich SHA-256 besser mit der AES Verschlüsselung? Nur technisch gesehen.
 
madmax2010 schrieb:
fast. SHA, MD%, Whirlpool und co haben nichts mit verschluesselung zu tun -> Lesestoff zum einsteigen
https://de.wikipedia.org/wiki/Hashfunktion
es geht dabei in erster linue um die konsistenzppruefung - sha256 ist mehr als ausreichend. Im prinzip reicht sogar sha1 oder md5 :)

Das ist nicht ganz richtig. Eine Hashfunktion bzw. eine Key Derivation Function (KDF) ist zwar nicht das gleiche wie ein Verschlüsselungsalgorithmus, sie dient hier aber in erster Linie zur Generierung eines Header Keys und ist somit unerlässlicher Bestandteil des Verschlüsselungskonzepts. MD5 gilt schon seit Jahren als unsicher und sollte keineswegs mehr verwendet werden, da mit überschaubarem Aufwand Hashkollisionen erzeugt werden können.

Bei der Datenträgerverschlüsselung gibt es immer min. zwei Keys: Den Master Key, mit dem der Datenträger (die Nutzlast) verschlüsselt wird und den Header Key, mit dem der Master Key verschlüsselt wird. Der Master Key wird nämlich zusammen mit Salt, Byte Offsets, Checksummen und einer Reihe anderer Metadaten im Volume Header gespeichert. Es wäre aber naturgemäß unsinnig den Master Key im Klartext zu hinterlegen, denn dann könnte man sich die Verschlüsselung auch gleich sparen. Also wird dieser selbst verschlüsselt abgelegt, und genau dazu dient die KDF, die letztlich auf Hashfunktionen wie SHA-256 oder RIPEMD-160 aufbaut. Das hat den charmanten Vorteil, dass man jederzeit das Volume-Passwort ändern kann, ohne dafür jedes Mal das ganze Volume neu zu verschlüsseln (denn den Master Key kann man nicht ändern ohne alle Daten komplett neu verschlüsseln zu müssen — das kann bei sehr großen Datenträgern im Terabyte-Bereich Tage dauern). Es geht hierbei also nicht nur um Konsistenzprüfungen, sondern darum, aus Passwort und Salt einen zuverlässigen Header Key zu erzeugen.

Die Sache mit der Kaskadierung der Algorithmen würde ich lassen. AES-256 gilt nach wie vor als sicher und es sind keine praxistauglichen Angriffe bekannt. Wenn du Kaskaden wie AES(Twofish(Serpent)) benutzt, verschenkst du massig Systemressourcen und der Durchsatz wird in den Keller rutschen, weil die CPU dadurch enorm beansprucht wird. Alle modernen CPUs haben integrierte Befehlssätze (Hardwarebeschleunigung) für AES und SHA-2, aber meist nicht für andere Algorithmen wie Twofish, Serpent, oder andere Exoten.

Testen kannst du das selber ganz einfach: Bevor du dich für eine Verschlüsselung entscheidest, lass den VeraCrypt Benchmark laufen. Den findest du im Hauptfenster unter Tools > Benchmark. Da wirst du sehen, dass AES mit weitem Abstand vorne liegt. Deine Kaskaden werden irgendwo auf den ganz unteren Rängen landen. Auf meiner Hardware (Intel Core i5-6600K) schafft AES es auf 4,1 GiB/s, gefolgt von Camelia mit nur 1,5 GiB/s, während AES(Twofish(Serpent)) ganz magere 460 MiB/s schafft.

//edit: Nachtrag zur ursprünglichen Frage vom OP:
Ich glaube die Limitierung der Hashfunktionen bei der Systemverschlüsselung hat mit der Größe des Bootloaders zu tun. Der liegt nämlich, zusammen mit dem Volume Header im ersten logischen Drive Track. Damit das aber alles da rein passt, muss der Bootloader schlank gehalten werden. Je mehr Algorithmen und Hashfunktionen man da rein programmiert, desto größer wird der Bootloader. Ich denke die Entwickler waren besorgt darüber, dass bei zu vielen Algorithmen der Bootloader nicht mehr in den Sektor passt.
 

Anhänge

  • vc-benchmark.png
    vc-benchmark.png
    22,5 KB · Aufrufe: 158
Zuletzt bearbeitet:
Zurück
Oben