AES-NI 指令是否同时加速 AES-128 和 AES-256?
信息安全
虚拟专用网
AES
表现
2021-08-29 13:22:53
2个回答
是的,AES-NI 加速了 AES-128 和 AES-256,是的,硬件加速的 AES-128 和 AES-256 之间存在性能差异,根据https://software.intel.com/en-us/文章/intel-aes-ni-performance-enhancements-hytrust-datacontrol-case-study#_Toc397546813:
在 Ivy Bridge 上,这里是 Cyber-Block-Chaining (CBC) 和基于 XEX 的带有 128 位和 256 位密钥的密文窃取 (XTS) 模式的调整码本模式的原始数字。
请注意,对于 XTS 模式,只使用了一半的密钥,因此 XTS-512 本质上使用的是 256 位密钥。
# Tests are approximate using memory only (no storage IO). # Algorithm | Key | Encryption | Decryption aes-cbc 128b 581.3 MiB/s 1961.8 MiB/s aes-cbc 256b 431.4 MiB/s 1503.1 MiB/s aes-xts 256b 1665.6 MiB/s 1642.3 MiB/s aes-xts 512b 1318.3 MiB/s 1282.1 MiB/s对于哈斯韦尔:
# Tests are approximate using memory only (no storage IO). # Algorithm | Key | Encryption | Decryption aes-cbc 128b 663.8 MiB/s 2486.8 MiB/s aes-cbc 256b 493.9 MiB/s 2043.6 MiB/s aes-xts 256b 2265.2 MiB/s 2261.1 MiB/s aes-xts 512b 1778.0 MiB/s 1778.7 MiB/s我们做了以下观察:
- 对于 CBC 加密,我们看到 128 位密钥比 256 位密钥提高了 40%。
- 对于 XTS 加密,我们看到 256 位密钥比 512 位密钥提高了 30%。
- 对于 CBC 解密,我们看到 128 位密钥比 256 位密钥提高了 20%。
- 对于 XTS 解密,我们看到 256 位 XTS 密钥比 512 位密钥提高了 30%。
请注意,这是 AES-NI 指令的原始性能。在现实世界中,数据加密/解密时会发生磁盘 I/O 或网络 I/O,这会影响现实世界的性能。
另外,我相信上述数字是针对单核性能的,在使用多核的实现中,即使 AES-256 也可以轻松地使 SSD 和大多数网络的整个 I/O 带宽饱和。
正如这里所指出的,确保为您的目的使用正确的链接模式实际上对吞吐量的影响比密钥大小要大得多。
是的,如果您的设备具有 AES-NI,它会加速并提高应用程序使用您所知道的 AES 加密执行加密和解密的速度。您已经拥有链接上的密钥。
VPN 提供商不知道您是否有 AES-NI。他们停留在没有它的标准情况下。他们推荐更灵活的 AES-128。无论如何,如果你有 AES-NI,AES-128 比 AES-256 快。我认为我们正在谈论一些几乎难以察觉的事情。
其它你可能感兴趣的问题