Ich möchte einen Teil meiner Festplatte verschlüsseln. Aber vorher wollte ich die verschiedenen verfügbaren Algorithmen vergleichen und mich fragen, ob ich aes-xts-256
oder wählen sollte aes-xts-512
.
Hinweis: Ich habe keine aes
Hardwarebeschleunigung. Die Benchmarks wurden ohne große Änderung mehrmals wiederholt. Ich möchte klarstellen, dass diese Benchmarks nur auf meinem Computer gültig sind (Debian, Core 2 Duo). Dies ist kein vollständiger LUKS-TrueCrypt-Vergleich.
TL; DR: Weiter mit Teil 4
1- Cryptsetup
Also habe ich heruntergeladen cryptsetup v1.6.0
, um den neuen cryptsetup benchmark
Befehl zu nutzen.
Befehl
$cryptsetup benchmark
Ergebnisse
# Algorithm | Key | Encryption | Decryption
aes-cbc 128b 128,2 MiB/s 157,2 MiB/s
serpent-cbc 128b 49,6 MiB/s 57,7 MiB/s
twofish-cbc 128b 138,0 MiB/s 183,8 MiB/s
aes-cbc 256b 97,5 MiB/s 121,9 MiB/s
serpent-cbc 256b 51,8 MiB/s 57,7 MiB/s
twofish-cbc 256b 139,0 MiB/s 183,8 MiB/s
aes-xts 256b 156,4 MiB/s 157,8 MiB/s
serpent-xts 256b 55,7 MiB/s 58,7 MiB/s
twofish-xts 256b 161,5 MiB/s 165,9 MiB/s
aes-xts 512b 120,5 MiB/s 120,9 MiB/s
serpent-xts 512b 55,7 MiB/s 58,5 MiB/s
twofish-xts 512b 161,5 MiB/s 165,3 MiB/s
Gedanken
Imcbc
Modusserpent
ist überraschend schnell beim Entschlüsseln!Imxts
Modusserpent
ist eindeutig der schnellste.- Die Schlüsselgröße scheint fast keinen merklichen Einfluss darauf zu haben .
serpent
twofish
aes
verhält sich nicht gut, wenn die Schlüsselgröße erhöht wird.
Updates von VM
2- TrueCrypt
Ich war wirklich überrascht, da aes
bekannt ist, dass es das schnellste ist (auch ohne Hardwarebeschleunigung). Also habe ich heruntergeladen TrueCrypt
, um diese Ergebnisse zu überprüfen. TrueCrypt
Verwendet den xts
Modus standardmäßig, daher gehe ich davon aus, dass er auch in seinen Benchmarks verwendet wird.
Methode
- Tools> Benchmark
- Wählen Sie eine beliebige Puffergröße (hier 5 MB)
- Klicken Sie auf "Benchmark"
Ergebnisse
# Algorithm | Encryption | Decryption
AES 106 MB/s 107 MB/s
Twofish 78 MB/s 76 MB/s
Serpent 41 MB/s 42 MB/s
Gedanken
Diese Ergebnisse entsprechen viel mehr den Erwartungen, stimmen jedoch nicht gut mit cryptsetup
den Ergebnissen überein .
3- Allgemeine Gedanken
cryptsetup
lieferte eine bessere allgemeine Leistung alsTrueCrypt
in diesem Fall. Dies könnte folgendermaßen erklärt werden:cryptsetup
wurde auf meinem System mit Compiler-OptimierungsroutinenTrueCrypt
kompiliert, während es bereits generisch kompiliert wurde;- AFAIK
cryptsetup
verwendet Kernelspace-Kryptomodule, während Benutzerraum-Kryptoroutinen verwendet werdenTrueCrypt
.
- Ich kann jedoch nicht erklären, warum
serpent-xts-512
dies der richtige Weg zu sein scheint,cryptsetup
obwohl esaes-xts
die einzige Chiffre ist, die es wert ist, verwendet zu werden.
4- Frage
cryptsetup
und TrueCrypt
geben völlig unterschiedliche qualitative (relative Verschlüsselungsgeschwindigkeit) und quantitative (tatsächliche Geschwindigkeit jeder Verschlüsselung) Ergebnisse in In-RAM-Benchmarks.
- Ist dir das schon aufgefallen?
- Sollte ich der Geschwindigkeit vertrauen
cryptsetup
und sie verwendenserpent-xts-512
?
serpent
die viel langsamer wurden. Damit ist das Problem mit der Schlange gelöst.Twofish
ist immer noch schneller alsaes
incryptsetup
und langsamer inTrueCrypt
. Und ich habe überhaupt keineaes
Hardwarebeschleunigung ... das ist keine VM-Sache ...