ฉันต้องการเข้ารหัสส่วนหนึ่งของ HDD ของฉัน แต่ก่อนหน้านั้นฉันต้องการสร้างมาตรฐานของอัลกอริทึมต่าง ๆ ที่สงสัยว่าฉันควรเลือก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
ทำงานไม่ดีเมื่อเพิ่มขนาดของคีย์
อัพเดตจาก 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
ใช้โมดูล kernelspace crypto ในขณะที่TrueCrypt
ใช้รูทีน crypto userspace
- อย่างไรก็ตามฉันไม่สามารถอธิบายได้ว่าทำไม
serpent-xts-512
ถึงเป็นวิธีที่จะไปด้วยcryptsetup
ในขณะaes-xts
ที่ตัวเลขเดียวที่คุ้มค่าใช้
4- คำถาม
cryptsetup
และTrueCrypt
ให้คุณภาพที่แตกต่างกันโดยสิ้นเชิง (ความเร็วการเข้ารหัสสัมพัทธ์) และปริมาณ (ความเร็วจริงของการเข้ารหัสแต่ละอัน) ส่งผลให้เกิดการวัดประสิทธิภาพแบบ in-RAM
- นั่นเป็นสิ่งที่คุณสังเกตเห็นแล้วใช่ไหม
- ฉันควรเชื่อถือ
cryptsetup
และใช้serpent-xts-512
รหัสลับเพื่อความเร็วหรือไม่
serpent
ซึ่งกลายเป็นช้ากว่ามาก ดังนั้นปัญหาเกี่ยวกับพญานาคจึงได้รับการแก้ไขTwofish
ยังคงเป็นที่เร็วกว่าaes
ในและช้าลงในcryptsetup
TrueCrypt
และฉันไม่มีaes
การเร่งความเร็วฮาร์ดแวร์เลย ... นี่ไม่ใช่สิ่ง VM ...