Я хочу зашифровать часть моего жесткого диска. Но перед этим я хотел сравнить другой доступный алгоритм, задаваясь вопросом, должен ли я выбрать aes-xts-256
или aes-xts-512
.
Примечание: у меня нет aes
аппаратного ускорения. Тесты были повторены несколько раз без особых изменений. Я хотел бы четко заявить, что эти тесты действительны только на моем компьютере (Debian, core 2 duo). Это не предназначено для полного сравнения 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
не ведет себя хорошо, когда размер ключа увеличивается.
Обновления вне ВМ
2- TrueCrypt
Я был очень удивлен, как aes
известно, самый быстрый (даже без аппаратного ускорения). Поэтому я скачал, TrueCrypt
чтобы перепроверить эти результаты. TrueCrypt
использует xts
режим по умолчанию, поэтому я предполагаю, что он также использует его в своих тестах.
метод
- Инструменты> Тест
- Выберите любой размер буфера (здесь, 5 МБ)
- Нажмите на «Benchmark»
Результаты
# 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
дают совершенно разные качественные (относительная скорость шифрования) и количественные (фактическая скорость каждого шифра) результаты в тестах в оперативной памяти.
- Это то, что вы уже заметили?
- Должен ли я доверять
cryptsetup
и использоватьserpent-xts-512
шифр для скорости?
serpent
что стало намного медленнее. Так что проблема со змеем решена.Twofish
все еще быстрее, чемaes
вcryptsetup
и медленнее вTrueCrypt
. И у меня нетaes
аппаратного ускорения вообще ... это не вещь ВМ ...