HDDの一部を暗号化したい。しかしその前に、私はaes-xts-256
またはを選択する必要があるかどうか疑問に思って、利用可能な別のアルゴリズムをベンチマークしたかったaes-xts-512
。
注:aes
ハードウェアアクセラレーションはありません。ベンチマークはほとんど変更されずに複数回繰り返されました。これらのベンチマークは私のコンピューター(Debian、コア2デュオ)でのみ有効であることを明確に述べたいと思います。これは完全なLUKS-TrueCryptの比較を意図したものではありません。
TL; DR:パート4に進む
1-Cryptsetup
そこでcryptsetup v1.6.0
、新しいcryptsetup benchmark
コマンドを使用するためにダウンロードしました。
コマンド
$cryptsetup benchmark
結果
# 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
考え
ではcbc
モード、serpent
復号化で驚くほど速いです!ではxts
モード、serpent
明らかに最速です。- キーサイズは、にほとんど影響を与えないようです。
serpent
twofish
aes
キーのサイズを大きくすると、正常に動作しません。
VMからの更新
2- TrueCrypt
aes
(ハードウェアアクセラレーションがなくても)最速であることが知られているので、本当に驚きました。そこで、ダウンロードTrueCrypt
してこれらの結果を再確認しました。TrueCrypt
はxts
デフォルトでモードを使用するため、ベンチマークでも使用すると想定しています。
方法
- ツール>ベンチマーク
- バッファサイズを選択します(ここでは5MB)。
- 「ベンチマーク」をクリックします
結果
# Algorithm | Encryption | Decryption
AES 106 MB/s 107 MB/s
Twofish 78 MB/s 76 MB/s
Serpent 41 MB/s 42 MB/s
考え
これらの結果は、予想される結果にはるかに対応していますが、の結果とはあまり一致していませんcryptsetup
。
3-一般的な考え
cryptsetup
TrueCrypt
この場合よりも一般的なパフォーマンスが向上しました。これは次のように説明できます。cryptsetup
私のシステムでは、コンパイラー最適化ルーチンを使用しTrueCrypt
てコンパイルされていますが、すでに一般的な方法でコンパイルされています。- AFAIK
cryptsetup
はカーネルTrueCrypt
空間暗号モジュールを使用し、ユーザー空間暗号ルーチンを使用します。
- しかし、私は理由を説明することはできません
serpent-xts-512
と移動するための方法であると考えられるcryptsetup
一方でaes-xts
のみ暗号価値を使用します。
4-質問
cryptsetup
そして、TrueCrypt
完全に異なる質的(相対暗号速度)および定量的(各暗号の実際の速度)で-RAMベンチマークで結果を与えます。
- それはあなたがすでに気づいたものですか?
- 速度を上げる
cryptsetup
ためにserpent-xts-512
暗号を信頼して使用する必要がありますか?
serpent
たが、遅くなりました。蛇の問題は解決しました。はまだでTwofish
より高速で、aes
ではcryptsetup
低速ですTrueCrypt
。そして、私はaes
ハードウェアアクセラレーションをまったく持っていません...これはVMのことではありません...