什么是 AES-NI(AES指令集)

来源:互联网 发布:吊带袜天使 知乎 编辑:程序博客网 时间:2024/06/02 00:09

定义

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


性能

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


查看CPU是否支持AES-NI

$ cat /proc/cpuinfo | grep aes

软件支持

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

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

  • Cryptography API: Next Generation (CNG)(需要Windows)
  • Linux的Crypto API
  • Java 7 HotSpot
  • Network Security Services(NSS)3.13及更高版本(被Firefox和Google Chrome使用)
  • Solaris Cryptographic Framework Solaris 10起。
  • FreeBSD的OpenCrypto API(aesni(4) 驱动程序)
  • OpenSSL 1.0.1及以上
  • FLAM®/FLUC® 5.1.08(2015-08-24发布)及以上

原创粉丝点击