For faster navigation, this Iframe is preloading the Wikiwand page for AES指令集.

AES指令集

高级加密标准指令集现已经集成到许多处理器中。应用程序执行高级加密标准(AES)时,使用该指令集提高加密和解密的速度(以及对侧信道攻击的抵抗能力)。

x86架构

[编辑]

高级加密标准指令集(或称英特尔高级加密标准新指令,简称AES-NI)是一个x86指令集架构的扩展,用于IntelAMD微处理器,由Intel在2008年3月提出。[1]该指令集的目的是改进应用程序使用高级加密标准(AES)执行加密和解密的速度。

指令

[编辑]
指令 描述[2]
AESENC 执行一轮AES加密流
AESENCLAST 执行最后一轮AES加密流
AESDEC 执行一轮AES解密流
AESDECLAST 执行最后一轮AES解密流
AESKEYGENASSIST 协助生成AES轮回密钥
AESIMC 协助AES逆列混合
PCLMULQDQ 无进位乘法(CLMUL英语CLMUL instruction set[3]

Intel

[编辑]

Intel支持AES-NI的处理器[4]

  • Intel Westmere架构处理器,具体如下:
    • Intel Westmere-EP (Xeon 56XX)(也称Gulftown至强5600系列DP服务器型号)处理器。
    • Intel Clarkdale处理器(酷睿i3、奔腾和赛扬除外)。
    • Intel Arrandale处理器(赛扬、奔腾、酷睿i3、酷睿i5-4XXM除外)。
  • Intel Sandy Bridge处理器。
    • 桌面:全部,奔腾、赛扬、酷睿i3除外[5][6]
    • 移动:酷睿i7和酷睿i5全部。一些供应商发售的BIOS配置已禁用该扩展[7],需要更新BIOS才能启用它。[8]
  • Intel Ivy Bridge处理器
    • 仅所有i5、i7、至强和i3-2115C[9]
  • Intel Haswell处理器。(i3-4000M[10]、奔腾和赛扬除外)
  • Intel Skylake(和以後)處理器。

AMD

[编辑]

其他架构中的硬件加速

[编辑]

在最新的SPARC处理器(T4、T5、M5及之后)和最新的ARM处理器中也有非特权的处理器指令提供AES支持。2011年推出的SPARC T4处理器有用户级指令实现AES轮回。[12]这些指令补充了更高级别的加密命令。2011年宣布的ARMv8-A处理器架构也有指令实现AES轮回,这包括ARM Cortex-A53和A57,但不包括以前的v7处理器(如Cortex A5、7、8、9、11、15)。[13]2012年8月,IBM宣布[14]即将到来的Power7+架构有望提供AES支持。这些架构中的命令不能直接与AES-NI命令兼容,但可实现类似的功能。

IBM z9或更晚的主机处理器支持AES作为单操作码(KM、KMC)AES ECB/CBC指令,使用IBM的CryptoExpress硬件。[15]这些单指令的AES版本比Intel NI更容易使用,但不能被扩展实现为基于AES轮回函数的其他算法,例如Whirlpool散列算法。

x86 CPU的支持

[编辑]

VIA x86 CPUAMD Geode和Marvell Kirkwood(ARM,mv_cesa在Linux中)使用基于驱动程序的AES加速处理(另见Crypto API (Linux)英语Crypto API (Linux))。下列产品支持AES硬件加速,虽然不支持AES-NI指令集:

ARM架构

[编辑]

其他架构

[编辑]

性能

[编辑]

在《AES-NI 性能分析》中,Patrick Schmid和Achim Roos 指出:“...少数已使用英特尔 AES-NI 进行优化的应用程序表现出了傲人成绩”。 [23] 一次使用Crypto++函式庫执行的性能分析显示,相比没有加速的Pentium 4, AES/GCM英语Galois/Counter_Mode的吞吐量从大约每字节28.0周期显著提升至每字节3.5周期。 [24][25]

软件支持

[编辑]

大多数现代编译器能够利用AES指令。

许多安全和加密软件支持AES指令集,包括下列核心基础设施:

参考

[编辑]

参考资料

[编辑]
  1. ^ Intel Software Network. Intel. [2008-04-05]. (原始内容存档于2008-04-07). 
  2. ^ Shay Gueron. Intel Advanced Encryption Standard (AES) Instruction Set White Paper. Intel. 2010 [2012-09-20]. (原始内容存档于2012-10-29). 
  3. ^ Carry-Less Multiplication. Intel. [2016-05-14]. (原始内容存档于2016-04-25). 
  4. ^ Intel® Product Specification Advanced Search. [2019-03-22]. (原始内容存档于2019-09-18). 
  5. ^ AnandTech - The Sandy Bridge Review: Intel Core i7-2600K, i5-2500K and Core i3-2100 Tested. [2016-05-14]. (原始内容存档于2015-04-24). 
  6. ^ Compare Intel® Products. [2016-05-14]. (原始内容存档于2016-04-25). 
  7. ^ AES-NI support in TrueCrypt (Sandy Bridge problem). [2016-05-14]. (原始内容存档于2014-08-08). 
  8. ^ Some products can support AES New Instructions with a Processor Configuration update, in particular, i7-2630QM/i7-2635QM, i7-2670QM/i7-2675QM, i5-2430M/i5-2435M, i5-2410M/i5-2415M. Please contact OEM for the BIOS that includes the latest Processor configuration update.. [2016-05-14]. (原始内容存档于2011-08-13). 
  9. ^ 存档副本. [2016-05-14]. (原始内容存档于2016-03-22). 
  10. ^ 存档副本. [2016-05-14]. (原始内容存档于2017-09-04). 
  11. ^ Following Instructions. AMD. November 22, 2010 [2011-01-04]. (原始内容存档于2010-11-26). 
  12. ^ Dan Anderson. SPARC T4 OpenSSL Engine. Oracle. 2011 [2012-09-20]. (原始内容存档于2012-11-03). 
  13. ^ Richard Grisenthwaite. ARMv8-A Technology Preview (PDF). ARM. 2011 [2012-09-20]. (原始内容 (PDF)存档于2018-06-10). 
  14. ^ Timothy Prickett Morgan. All the sauce on Big Blue's hot chip: More on Power7+. The Register. 2012 [2012-09-20]. (原始内容存档于2012-08-24). 
  15. ^ IBM System z10 cryptography. IBM. [2014-01-27]. (原始内容存档于2014-02-01). 
  16. ^ AMD Geode™ LX Processor Family Technical Specifications. AMD. [2016-05-14]. (原始内容存档于2014-01-30). 
  17. ^ VIA Padlock Security Engine. VIA. [2011-11-14]. (原始内容存档于2011-05-15). 
  18. ^ 18.0 18.1 Cryptographic Hardware Accelerators页面存档备份,存于互联网档案馆) on OpenWRT.org
  19. ^ VIA Eden-N Processors. VIA. [2011-11-14]. (原始内容存档于2011-11-11). 
  20. ^ VIA C7 Processors. VIA. [2011-11-14]. (原始内容存档于2007-04-19). 
  21. ^ Security System driver status. [2016-05-14]. (原始内容存档于2016-05-14). 
  22. ^ Using the XMEGA built-in AES accelerator (PDF). [2014-12-03]. (原始内容存档 (PDF)于2015-09-23). 
  23. ^ P. Schmid and A. Roos. AES-NI Performance Analyzed. Tom's Hardware. 2010 [2010-08-10]. 
  24. ^ T. Krovetz, W. Dai. How to get fast AES calls?. Crypto++ user group. 2010 [2010-08-11]. (原始内容存档于2012-11-09). 
  25. ^ Crypto++ 5.6.0 Pentium 4 Benchmarks. Crypto++ Website. 2009 [2010-08-10]. (原始内容存档于2010-09-19). 
  26. ^ Intel Advanced Encryption Standard Instructions (AES-NI). Intel. March 2, 2010 [2010-07-11]. (原始内容存档于2010-07-07). 
  27. ^ AES-NI enhancements to NSS on Sandy Bridge systems. 2012-05-02 [2012-11-25]. (原始内容存档于2014-04-13). 
  28. ^ System Administration Guide: Security Services, Chapter 13 Solaris Cryptographic Framework (Overview). Oracle. September 2010 [2012-11-27]. (原始内容存档于2012-02-07). 
  29. ^ FreeBSD 8.2 Release Notes. FreeBSD.org. 2011-02-24 [2011-12-18]. (原始内容存档于2011-04-12). 
  30. ^ OpenSSL: CVS Web Interface. [2020-12-07]. (原始内容存档于2012-07-07). 
  31. ^ Bloombase StoreSafe Intelligent Storage Firewall. [2023-11-14]. (原始内容存档于2024-05-03). 

外部链接

[编辑]
{{bottomLinkPreText}} {{bottomLinkText}}
AES指令集
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?