我有一台配备 C2D T7300 CPU/4 GB RAM 的 T61。我有 SL 6.3,并且在安装过程中勾选了加密 VG。如果我在上面启动“普通”Windows XP,它的速度会很慢..所以..我需要一点性能提升:)
大声思考/问题:kcryptd 可能会占用约 20% (!) 的 CPU,但需要加密..所以我在想如何加密仅该 1 个用户的主目录(并且不需要 AES256,只需一个非常非常轻的加密,这样窃贼就无法访问笔记本上的数据,我不是在防御“CIA”:D或至少是较轻的加密)
更新:我投票给:
aes-ecb-null -s 128
所以在安装之前我必须手动创建分区。据我所知,使用这个而不使用默认值确实可以提高性能。
更新2: https://access.redhat.com/knowledge/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Security_Guide/sect-Security_Guide-LUKS_Disk_Encryption.html- 所以看起来他们正在使用 512 位 aes-xts-plain64。
答案1
Linux 下存在三种主要的存储加密可能性。从最低级别到最高级别、从最快到最慢、从最不灵活到最灵活排序:
- DM-隐秘加密整个文件系统(或更一般地任何存储设备)。您可以获得最佳性能,但您必须在组织存储分区时决定使用它,并且每个分区都有一个密钥。
- 加密文件系统加密用户的主目录。每个用户都有自己的密钥。加密是在内核中执行的,但加密是在文件级别而不是在块级别,这会减慢速度。
- 环境管理系统加密一些文件。这可以由普通用户设置,因为它只需要管理员提供保险丝。您可以轻松拥有具有不同密钥的多个文件系统。它比其他两个慢。
考虑到您的限制,dm-crypt 显然是正确的选择。通过仅加密需要加密的文件而不是操作系统,可以获得更好的性能。如果您还没有真正开始使用新系统,重新安装会更简单,但您也可以通过从 Live CD 启动来在现有系统上工作,例如系统救援光盘。
创建一个系统分区和一个单独的分区,如果您不想加密整个主目录而只加密某些选定的文件,/home
甚至可以创建一个单独的分区。/encrypted
为您要加密的一个文件系统创建一个 dmcrypt 卷。
选择最快的密码可能会有所收获。 AES-128 而不是 AES-256 应该会给您带来非常轻微的性能提升,而不会影响安全性。选择 CBC 而不是 XTS 作为密码模式,因为您不需要完整性:cryptsetup luksCreate -c aes-cbc-sha256 -s 128
。您甚至可以选择aes-cbc-plain
作为密码:它是不安全的,但前提是攻击者可以在您的系统上植入选定的文件,这对您的用例来说并不重要;不知道性能上是否有任何提升。哈希值 ( ) 的选择-h
仅影响安装磁盘时验证密码所需的时间,因此请不要吝啬。