โดยพื้นฐานแล้วขึ้นอยู่กับเคอร์เนลของคุณดังนั้น " See / proc / crypto " ควรจะเป็น "คำตอบ" หน้า man cryptsetup กล่าวสิ่งนี้:
NOTES ON SUPPORTED CIPHERS, MODES, HASHES AND KEY SIZES
The available combinations of ciphers, modes, hashes and key sizes depend
on kernel support. See /proc/crypto for a list of available options. You
might need to load additional kernel crypto modules in order to get more
options.
For the --hash option, if the crypto backend is libgcrypt, then all algo‐
rithms supported by the gcrypt library are available. For other crypto
backends some algorithms may be missing.
อย่างไรก็ตามฉัน/proc/crypto
ไม่ได้พูดถึงพญานาคใด ๆ หรือ xts (aes) ดังนั้นฉันขอแนะนำให้ดูว่าcryptsetup benchmark
รายงานใดบ้าง(และมันจะแสดงความเร็ว (ram) ด้วย) ตัวอย่างเช่น:
$ cryptsetup benchmark
# Tests are approximate using memory only (no storage IO).
PBKDF2-sha1 292752 iterations per second
PBKDF2-sha256 221362 iterations per second
PBKDF2-sha512 142010 iterations per second
PBKDF2-ripemd160 277124 iterations per second
PBKDF2-whirlpool 155727 iterations per second
# Algorithm | Key | Encryption | Decryption
aes-cbc 128b 164.7 MiB/s 164.5 MiB/s
serpent-cbc 128b 119.5 MiB/s 205.0 MiB/s
twofish-cbc 128b 163.5 MiB/s 208.6 MiB/s
aes-cbc 256b 148.4 MiB/s 147.9 MiB/s
serpent-cbc 256b 128.1 MiB/s 205.3 MiB/s
twofish-cbc 256b 202.3 MiB/s 213.1 MiB/s
aes-xts 256b 165.4 MiB/s 145.3 MiB/s
serpent-xts 256b 150.0 MiB/s 194.5 MiB/s
twofish-xts 256b 206.4 MiB/s 206.9 MiB/s
aes-xts 512b 149.4 MiB/s 147.5 MiB/s
serpent-xts 512b 181.7 MiB/s 195.0 MiB/s
twofish-xts 512b 207.1 MiB/s 208.6 MiB/s
แฮชเป็นสองสามบรรทัดแรก (sha1, sha256, sha512, ripemd160, วังวน) เลขศูนย์อยู่ภายใต้ส่วนหัวอัลกอริทึม
การดูว่าค่าเริ่มต้นคืออะไรให้ความคิดที่ดีว่าสิ่งใดที่ถือว่า "ดีมาก" เช่นกัน:
$ cryptsetup --help|tail -n 8
Default compiled-in key and passphrase parameters:
Maximum keyfile size: 8192kB, Maximum interactive passphrase length 512 (characters)
Default PBKDF2 iteration time for LUKS: 1000 (ms)
Default compiled-in device cipher parameters:
loop-AES: aes, Key 256 bits
plain: aes-cbc-essiv:sha256, Key: 256 bits, Password hashing: ripemd160
LUKS1: aes-xts-plain64, Key: 256 bits, LUKS header hashing: sha1, RNG: /dev/urandom
และการใช้คีย์ขนาดที่สูงกว่า (ด้วย--key-size
) ควรจะแข็งแกร่งกว่านี้หากช้ากว่าเล็กน้อย
--key-size, -s <bits>
Sets key size in bits. The argument has to be a multiple of 8.
The possible key-sizes are limited by the cipher and mode used.
See /proc/crypto for more information. Note that key-size in
/proc/crypto is stated in bytes.