Chcę zaszyfrować część mojego dysku twardego. Ale wcześniej chciałem przetestować inny dostępny algorytm, zastanawiając się, czy powinienem wybrać aes-xts-256czy aes-xts-512.
Uwaga: nie mam aesakceleracji sprzętowej. Testy zostały powtórzone wiele razy bez większych zmian. Chciałbym wyraźnie powiedzieć, że te testy porównawcze są ważne tylko na moim komputerze (Debian, duet Core 2). To nie jest zamierzone pełne porównanie LUKS-TrueCrypt.
TL; DR: przejdź do części 4
1- Cryptsetup
Pobrałem więc, cryptsetup v1.6.0aby skorzystać z nowego cryptsetup benchmarkpolecenia.
Komenda
$cryptsetup benchmark
Wyniki
# 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
Myśli
Wcbctrybieserpentzaskakująco szybko odszyfrowuje!Wxtstrybieserpentjest zdecydowanie najszybszy.- Rozmiar klucza wydaje się nie mieć prawie żadnego zauważalnego wpływu .
serpenttwofish aesnie zachowuje się dobrze po zwiększeniu rozmiaru klucza.
Aktualizacje poza maszyną wirtualną
2 - TrueCrypt
Byłem naprawdę zaskoczony, ponieważ aeswiadomo, że jest najszybszy (nawet bez przyspieszenia sprzętowego). Pobrałem więc, TrueCryptaby dokładnie sprawdzić te wyniki. TrueCryptużywa xtsdomyślnie trybu, więc zakładam, że używa go również w testach porównawczych.
metoda
- Narzędzia> Benchmark
- Wybierz dowolny rozmiar bufora (tutaj, 5 MB)
- Kliknij „Benchmark”
Wyniki
# Algorithm | Encryption | Decryption
AES 106 MB/s 107 MB/s
Twofish 78 MB/s 76 MB/s
Serpent 41 MB/s 42 MB/s
Myśli
Wyniki te odpowiadają znacznie więcej niż oczekiwano, ale nie pasują dobrze do cryptsetupwyników.
3- Ogólne myśli
cryptsetupzapewnia lepszą ogólną wydajność niżTrueCryptw tym przypadku. Można to wyjaśnić w następujący sposób:cryptsetupzostał skompilowany w moim systemie za pomocą procedur optymalizacji kompilatora, podczas gdyTrueCryptzostał już skompilowany w sposób ogólny;- AFAIK
cryptsetupużywa modułówTrueCryptkryptograficznych przestrzeni jądra, podczas gdy używa procedur kryptograficznych przestrzeni użytkownika.
- Nie potrafię jednak wyjaśnić, dlaczego
serpent-xts-512wydaje się, że jest to właściwy sposób,cryptsetuppodczasaes-xtsgdy jedyny warty użycia szyfr.
4-pytanie
cryptsetupi TrueCryptpodać całkowicie różne jakościowe (względne prędkości szyfrowania) i ilościowe (rzeczywiste prędkości każdego szyfru) wyniki testów porównawczych w pamięci RAM.
- Czy to już zauważyłeś?
- Czy powinienem ufać
cryptsetupi używaćserpent-xts-512szyfru dla szybkości?
serpentktóre stały się znacznie wolniejsze. Problem z wężem został rozwiązany.Twofishjest jeszcze szybsza niżaeswcryptsetupi wolniejTrueCrypt. I wcale nie mamaesakceleracji sprzętowej ... to nie jest sprawa VM ...