Benchmark data for cryptsetup
~$ sudo cryptsetup benchmark
[sudo] password for user:
# Tests are approximate using memory only (no storage IO).
PBKDF2-sha1 475760 iterations per second for 256-bit key
PBKDF2-sha256 621931 iterations per second for 256-bit key
PBKDF2-sha512 466448 iterations per second for 256-bit key
PBKDF2-ripemd160 323235 iterations per second for 256-bit key
PBKDF2-whirlpool 229950 iterations per second for 256-bit key
argon2i 4 iterations, 188711 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
argon2id 4 iterations, 190209 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
# Algorithm | Key | Encryption | Decryption
aes-cbc 128b 85.4 MiB/s 105.6 MiB/s
serpent-cbc 128b 30.7 MiB/s 134.4 MiB/s
twofish-cbc 128b 77.8 MiB/s 112.6 MiB/s
aes-cbc 256b 68.8 MiB/s 77.1 MiB/s
serpent-cbc 256b 36.0 MiB/s 132.9 MiB/s
twofish-cbc 256b 85.7 MiB/s 112.6 MiB/s
aes-xts 256b 93.8 MiB/s 84.4 MiB/s
serpent-xts 256b 107.4 MiB/s 103.4 MiB/s
twofish-xts 256b 89.9 MiB/s 100.9 MiB/s
aes-xts 512b 59.8 MiB/s 70.7 MiB/s
serpent-xts 512b 102.4 MiB/s 87.5 MiB/s
twofish-xts 512b 75.4 MiB/s 81.2 MiB/s
~$ sudo cryptsetup benchmark
# Tests are approximate using memory only (no storage IO).
PBKDF2-sha1 496484 iterations per second for 256-bit key
PBKDF2-sha256 633963 iterations per second for 256-bit key
PBKDF2-sha512 491827 iterations per second for 256-bit key
PBKDF2-ripemd160 323235 iterations per second for 256-bit key
PBKDF2-whirlpool 234475 iterations per second for 256-bit key
argon2i 4 iterations, 238965 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
argon2id 4 iterations, 253195 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
# Algorithm | Key | Encryption | Decryption
aes-cbc 128b 92.6 MiB/s 104.1 MiB/s
serpent-cbc 128b 38.2 MiB/s 135.6 MiB/s
twofish-cbc 128b 86.2 MiB/s 111.3 MiB/s
aes-cbc 256b 73.4 MiB/s 82.1 MiB/s
serpent-cbc 256b 37.8 MiB/s 131.9 MiB/s
twofish-cbc 256b 87.5 MiB/s 118.6 MiB/s
aes-xts 256b 97.0 MiB/s 103.8 MiB/s
serpent-xts 256b 126.2 MiB/s 127.8 MiB/s
twofish-xts 256b 106.7 MiB/s 112.4 MiB/s
aes-xts 512b 80.4 MiB/s 81.3 MiB/s
serpent-xts 512b 123.7 MiB/s 130.9 MiB/s
twofish-xts 512b 110.5 MiB/s 109.3 MiB/s
~$ sudo cryptsetup benchmark
# Tests are approximate using memory only (no storage IO).
PBKDF2-sha1 497426 iterations per second for 256-bit key
PBKDF2-sha256 623410 iterations per second for 256-bit key
PBKDF2-sha512 470635 iterations per second for 256-bit key
PBKDF2-ripemd160 319298 iterations per second for 256-bit key
PBKDF2-whirlpool 229950 iterations per second for 256-bit key
argon2i 4 iterations, 192896 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
argon2id 4 iterations, 220839 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
# Algorithm | Key | Encryption | Decryption
aes-cbc 128b 81.4 MiB/s 97.9 MiB/s
serpent-cbc 128b 26.6 MiB/s 74.1 MiB/s
twofish-cbc 128b 81.4 MiB/s 107.9 MiB/s
aes-cbc 256b 70.7 MiB/s 73.2 MiB/s
serpent-cbc 256b 36.0 MiB/s 135.0 MiB/s
twofish-cbc 256b 86.7 MiB/s 63.6 MiB/s
aes-xts 256b 64.7 MiB/s 68.1 MiB/s
serpent-xts 256b 93.8 MiB/s 95.3 MiB/s
twofish-xts 256b 107.3 MiB/s 100.6 MiB/s
aes-xts 512b 78.1 MiB/s 75.3 MiB/s
serpent-xts 512b 115.9 MiB/s 122.1 MiB/s
twofish-xts 512b 105.9 MiB/s 95.0 MiB/s
pi@PI:~$ sudo cryptsetup benchmark
# Tests are approximate using memory only (no storage IO).
PBKDF2-sha1 147936 iterations per second for 256-bit key
PBKDF2-sha256 242277 iterations per second for 256-bit key
PBKDF2-sha512 158299 iterations per second for 256-bit key
PBKDF2-ripemd160 115177 iterations per second for 256-bit key
PBKDF2-whirlpool 22021 iterations per second for 256-bit key
argon2i 4 iterations, 110020 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
argon2id 4 iterations, 140072 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
# Algorithm | Key | Encryption | Decryption
aes-cbc 128b 25.2 MiB/s 49.2 MiB/s
serpent-cbc 128b N/A N/A
twofish-cbc 128b N/A N/A
aes-cbc 256b 21.0 MiB/s 37.0 MiB/s
serpent-cbc 256b N/A N/A
twofish-cbc 256b N/A N/A
aes-xts 256b 55.5 MiB/s 48.1 MiB/s
serpent-xts 256b N/A N/A
twofish-xts 256b N/A N/A
aes-xts 512b 41.5 MiB/s 36.3 MiB/s
serpent-xts 512b N/A N/A
twofish-xts 512b N/A N/A
pi@PI:~$ sudo cryptsetup benchmark
# Tests are approximate using memory only (no storage IO).
PBKDF2-sha1 148439 iterations per second for 256-bit key
PBKDF2-sha256 235741 iterations per second for 256-bit key
PBKDF2-sha512 159649 iterations per second for 256-bit key
PBKDF2-ripemd160 113580 iterations per second for 256-bit key
PBKDF2-whirlpool 22110 iterations per second for 256-bit key
argon2i 4 iterations, 120439 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
argon2id 4 iterations, 125033 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
# Algorithm | Key | Encryption | Decryption
aes-cbc 128b 26.1 MiB/s 48.0 MiB/s
serpent-cbc 128b N/A N/A
twofish-cbc 128b N/A N/A
aes-cbc 256b 20.8 MiB/s 36.7 MiB/s
serpent-cbc 256b N/A N/A
twofish-cbc 256b N/A N/A
aes-xts 256b 53.5 MiB/s 47.6 MiB/s
serpent-xts 256b N/A N/A
twofish-xts 256b N/A N/A
aes-xts 512b 40.5 MiB/s 35.1 MiB/s
serpent-xts 512b N/A N/A
twofish-xts 512b N/A N/A
pi@PI:~$ sudo cryptsetup benchmark
# Tests are approximate using memory only (no storage IO).
PBKDF2-sha1 150657 iterations per second for 256-bit key
PBKDF2-sha256 237449 iterations per second for 256-bit key
PBKDF2-sha512 160824 iterations per second for 256-bit key
PBKDF2-ripemd160 114573 iterations per second for 256-bit key
PBKDF2-whirlpool 21830 iterations per second for 256-bit key
argon2i 4 iterations, 113299 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
argon2id 4 iterations, 123833 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
# Algorithm | Key | Encryption | Decryption
aes-cbc 128b 26.3 MiB/s 49.2 MiB/s
serpent-cbc 128b N/A N/A
twofish-cbc 128b N/A N/A
aes-cbc 256b 20.8 MiB/s 36.6 MiB/s
serpent-cbc 256b N/A N/A
twofish-cbc 256b N/A N/A
aes-xts 256b 55.3 MiB/s 48.5 MiB/s
serpent-xts 256b N/A N/A
twofish-xts 256b N/A N/A
aes-xts 512b 42.1 MiB/s 35.4 MiB/s
serpent-xts 512b N/A N/A
twofish-xts 512b N/A N/A
[user@hp_t610 ~]$ sudo cryptsetup benchmark
# Tests are approximate using memory only (no storage IO).
PBKDF2-sha1 280367 iterations per second for 256-bit key
PBKDF2-sha256 300969 iterations per second for 256-bit key
PBKDF2-sha512 283705 iterations per second for 256-bit key
PBKDF2-ripemd160 245453 iterations per second for 256-bit key
PBKDF2-whirlpool 135966 iterations per second for 256-bit key
argon2i 4 iterations, 125647 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
argon2id 4 iterations, 148535 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
# Algorithm | Key | Encryption | Decryption
aes-cbc 128b 51.7 MiB/s 61.4 MiB/s
serpent-cbc 128b 20.6 MiB/s 42.4 MiB/s
twofish-cbc 128b 50.3 MiB/s 69.5 MiB/s
aes-cbc 256b 46.6 MiB/s 53.8 MiB/s
serpent-cbc 256b 32.0 MiB/s 42.9 MiB/s
twofish-cbc 256b 71.8 MiB/s 69.9 MiB/s
aes-xts 256b 69.3 MiB/s 69.6 MiB/s
serpent-xts 256b 35.8 MiB/s 41.5 MiB/s
twofish-xts 256b 59.3 MiB/s 67.3 MiB/s
aes-xts 512b 54.4 MiB/s 54.2 MiB/s
serpent-xts 512b 41.3 MiB/s 41.4 MiB/s
twofish-xts 512b 65.4 MiB/s 67.0 MiB/s
[user@hp_t610 ~]$ sudo cryptsetup benchmark
# Tests are approximate using memory only (no storage IO).
PBKDF2-sha1 283092 iterations per second for 256-bit key
PBKDF2-sha256 302706 iterations per second for 256-bit key
PBKDF2-sha512 284629 iterations per second for 256-bit key
PBKDF2-ripemd160 247305 iterations per second for 256-bit key
PBKDF2-whirlpool 137248 iterations per second for 256-bit key
argon2i 4 iterations, 171872 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
argon2id 4 iterations, 184537 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
# Algorithm | Key | Encryption | Decryption
aes-cbc 128b 58.0 MiB/s 70.6 MiB/s
serpent-cbc 128b 32.1 MiB/s 42.3 MiB/s
twofish-cbc 128b 71.8 MiB/s 70.9 MiB/s
aes-cbc 256b 44.2 MiB/s 55.0 MiB/s
serpent-cbc 256b 32.1 MiB/s 42.5 MiB/s
twofish-cbc 256b 71.1 MiB/s 70.3 MiB/s
aes-xts 256b 68.7 MiB/s 68.2 MiB/s
serpent-xts 256b 41.9 MiB/s 41.4 MiB/s
twofish-xts 256b 66.2 MiB/s 67.2 MiB/s
aes-xts 512b 54.1 MiB/s 54.5 MiB/s
serpent-xts 512b 41.4 MiB/s 40.8 MiB/s
twofish-xts 512b 65.3 MiB/s 67.1 MiB/s
[user@hp_t610 ~]$ sudo cryptsetup benchmark
# Tests are approximate using memory only (no storage IO).
PBKDF2-sha1 281875 iterations per second for 256-bit key
PBKDF2-sha256 301314 iterations per second for 256-bit key
PBKDF2-sha512 286496 iterations per second for 256-bit key
PBKDF2-ripemd160 246375 iterations per second for 256-bit key
PBKDF2-whirlpool 136533 iterations per second for 256-bit key
argon2i 4 iterations, 179442 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
argon2id 4 iterations, 178899 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
# Algorithm | Key | Encryption | Decryption
aes-cbc 128b 57.6 MiB/s 70.1 MiB/s
serpent-cbc 128b 31.8 MiB/s 42.9 MiB/s
twofish-cbc 128b 71.0 MiB/s 70.2 MiB/s
aes-cbc 256b 47.3 MiB/s 54.7 MiB/s
serpent-cbc 256b 31.8 MiB/s 43.3 MiB/s
twofish-cbc 256b 71.9 MiB/s 70.7 MiB/s
aes-xts 256b 68.7 MiB/s 69.7 MiB/s
serpent-xts 256b 41.1 MiB/s 41.8 MiB/s
twofish-xts 256b 65.9 MiB/s 66.7 MiB/s
aes-xts 512b 54.1 MiB/s 53.7 MiB/s
serpent-xts 512b 42.0 MiB/s 40.8 MiB/s
twofish-xts 512b 66.5 MiB/s 67.6 MiB/s
The Raspberry Pi 3B+ and the newer RPi 4B does not have a hardware accelerated AES for encryption, so don’t expect fast performance with them.
# Tests are approximate using memory only (no storage IO).
PBKDF2-sha1 2359001 iterations per second for 256-bit key
PBKDF2-sha256 4882775 iterations per second for 256-bit key
PBKDF2-sha512 2084644 iterations per second for 256-bit key
PBKDF2-ripemd160 1085482 iterations per second for 256-bit key
PBKDF2-whirlpool 969109 iterations per second for 256-bit key
argon2i 8 iterations, 1048576 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
argon2id 8 iterations, 1048576 memory, 4 parallel threads (CPUs) for 256-bit key (requested 2000 ms time)
# Algorithm | Key | Encryption | Decryption
aes-cbc 128b 1695.8 MiB/s 5723.9 MiB/s
serpent-cbc 128b 116.6 MiB/s 868.1 MiB/s
twofish-cbc 128b 252.7 MiB/s 548.3 MiB/s
aes-cbc 256b 1305.8 MiB/s 4854.5 MiB/s
serpent-cbc 256b 122.9 MiB/s 861.3 MiB/s
twofish-cbc 256b 263.1 MiB/s 548.1 MiB/s
aes-xts 256b 4630.4 MiB/s 4645.8 MiB/s
serpent-xts 256b 751.9 MiB/s 778.6 MiB/s
twofish-xts 256b 505.5 MiB/s 513.7 MiB/s
aes-xts 512b 4179.1 MiB/s 4167.7 MiB/s
serpent-xts 512b 771.2 MiB/s 782.7 MiB/s
twofish-xts 512b 517.0 MiB/s 521.1 MiB/s