最近我尝试将 200GB 复制到 1TB 外部/USB2/加密磁盘,花了 36 小时。磁盘未加密时的相同副本花费的时间不超过 1 小时。
我正在使用带有默认密码和 ext4 文件系统的 dm-crypt (LUKS)。我想知道我可以做些什么来优化性能。
答案1
最新的 Intel 和 AMD 处理器有一个加密加速器,称为AES-NI。当加密大量数据时,这可以提供明显的加速。由您决定是否值得购买更新的处理器来提高加密速度。
默认密码有些保守。创建加密卷时,选择 AES 作为密码(通常是默认值),并选择 128 作为密钥大小(而不是 256)。使用 128 位密钥可以显着提高速度,而不会实际降低安全性。特别是,如果您的密码短语的熵少于 128 位(即 20 个随机可打印字符,如果密码短语不是随机的,则远远超过这一数字),则将密钥大小增加到超过 128 位不会增加安全性。请注意,您需要在创建卷时决定密钥大小,这不是您之后可以更改的内容。
无论磁盘是否加密,文件系统的相对性能都是相同的。
答案2
获取支持的处理器AES-NI,如果您还没有的话。
如果缺乏这一点,您可能会尝试切换到不同的密码,例如 Blowfish,但我不知道这是否有帮助。 Blowfish 加密密码块的速度更快,但我读到 AES 的初始化速度非常快,并且由于 dm-crypt 单独加密每个磁盘块(因此您不必从一开始就解密整个磁盘来访问数据)中间),需要为每个磁盘块重新初始化密码可能会给 AES 带来优势。不过我还没有做过性能比较。