Beste Möglichkeit, verschiedene Verschlüsselungslösungen auf meinem System zu vergleichen

Beste Möglichkeit, verschiedene Verschlüsselungslösungen auf meinem System zu vergleichen

Ich möchte verschiedene Verschlüsselungslösungen für die Verschlüsselung meines Systems vergleichen, möglicherweise verschiedene Lösungen für verschiedene Teile des Systems wie /usroder . Insbesondere schaue ich mir dm-crypt-Partitionen, Container, truecrypt, ecryptfs und encfs mit unterschiedlichen Parametern an. Aus mehreren Gründen denke ich, dass es nicht ausreicht, /homenur die Rohsequenz-Lese- und Schreibgeschwindigkeiten zu messen :dd

  • Seq Lesen/Schreiben führt bei mir zu unterschiedlichen CPU-Lasten, zum Beispiel belastet ecryptfs nur einen Kern (bis zu 100 %), wohingegen dm-crypt schneller ist, aber beide Kerne belastet, sodass ecryptfs in der Praxis schneller sein kann, wenn das System durch andere Anwendungen belastet ist (vielleicht auch nicht, aber wie kann ich das vergleichen?)
  • es dreht sich alles um eine SSD, daher möchte ich einen Benchmark haben, der angibt, bei welcher Option das System reaktionsschneller ist. Ich sollte also auch einige zufällige Lese-/Schreibtests oder etwas in der Art einbinden (weiß aber nicht, wie das geht)
  • Das Benchmarking einer Lösung für /usrkann andere Benchmarks erfordern als für /home, da die E/A-Eigenschaften unterschiedlich sein können

Ich sollte hinzufügen, dass meine CPU keine AES-Anweisungen unterstützt, was also ein Leistungseinschränkungsfaktor ist. Ich möchte keinen Teil des Systems isolieren, sondern die verschiedenen Verschlüsselungslösungen für die SSD in meinem speziellen System vergleichen. Was ist also in meinem Fall die beste Benchmarking-Methode und wie geht man dabei im Detail vor?

Antwort1

Wie wäre es mit dem eingebauten cryptsetup benchmark?

# Tests are approximate using memory only (no storage IO).
PBKDF2-sha1       633198 iterations per second
PBKDF2-sha256     329326 iterations per second
PBKDF2-sha512     216647 iterations per second
PBKDF2-ripemd160  474039 iterations per second
PBKDF2-whirlpool  248713 iterations per second
#  Algorithm | Key |  Encryption |  Decryption
     aes-cbc   128b   707.0 MiB/s  3120.9 MiB/s
 serpent-cbc   128b    98.3 MiB/s   307.2 MiB/s
 twofish-cbc   128b   195.0 MiB/s   381.7 MiB/s
     aes-cbc   256b   513.8 MiB/s  2373.9 MiB/s
 serpent-cbc   256b    97.4 MiB/s   315.1 MiB/s
 twofish-cbc   256b   198.8 MiB/s   383.9 MiB/s
     aes-xts   256b  2706.1 MiB/s  2634.1 MiB/s
 serpent-xts   256b   318.0 MiB/s   310.4 MiB/s
 twofish-xts   256b   370.5 MiB/s   380.1 MiB/s
     aes-xts   512b  2083.2 MiB/s  2073.8 MiB/s
 serpent-xts   512b   323.0 MiB/s   311.4 MiB/s
 twofish-xts   512b   375.9 MiB/s   380.2 MiB/s

Normalerweise möchten Sie eine der AES-Chiffren verwenden. Auch wenn Ihr System AES-NI heute nicht unterstützt, kann es sein, dass Ihre nächste Box ...

Antwort2

Sehen obbonnie++liefert Ihnen die Tests/Ergebnisse, nach denen Sie suchen. Bonnie++ ist möglicherweise in den Repos Ihrer Distribution verfügbar.

Dieser Artikel,SSD Linux Benchmarking: Vergleich von Dateisystemen und Verschlüsselungsmethodenkönnte für Sie auch interessant sein.

Antwort3

Die Lösungen, die Sie erwähnen, unterscheiden sich erheblich in dem, was sie tatsächlich tun - dm-crypt ist eine vollständige Dateisystemverschlüsselung, während ecryptfs/encfs über dem Dateisystem liegen. Wenn Sie Sicherheit wollen, entscheiden Siezuerst wasdu wirklich willst und nurwie dannum es anzugehen.

Seien Sie jedoch nicht überrascht, wenn Ihre CPU zum Flaschenhals wird. Ich gehe davon aus, dass ihre Leistung, da sie AES-NI nicht unterstützt, in der Größenordnung von z. B. einem Intel Core2 Duo liegt, den ich vor etwa einem Jahr zufällig getestet habe. Die Geschwindigkeit der im Kernel integrierten Kryptomodule betrug je nach verwendeter Verschlüsselung und Blockgröße (Twofish, AES, Serpent und Camellia mit Blockgrößen von 128/192/256b) etwa 38 MB/s ± 10 MB/s.

verwandte Informationen