AES-NI

AES-NI (Advanced Encryption Standard New Instructions) はインテルおよびアドバンスト・マイクロ・デバイセズ (AMD) 製マイクロプロセッサx86命令セットへの拡張機能で、2008年3月にインテルが発案した[1]

AES-NIの目的は、AESによる暗号化および復号の高速化にある。同様の機能に、VIA Technologiesのプロセッサに実装されているPadLockがある。

命令の一覧

命令 機能
AESENC 暗号化フローの1ラウンドを実行する
AESENCLAST 暗号化フローの最終ラウンドを実行する
AESDEC 復号フローの1ラウンドを実行する
AESDECLAST 復号フローの最終ラウンドを実行する
AESKEYGENASSIST 次のラウンドで使用するキーを生成する
AESIMC 各ラウンドでのミックスカラム処理を行う
PCLMULQDQ キャリーなし乗算 (CLMUL)

AES-NIを実装したCPU

  • Intel
    • WestmereをベースとしたCPU、具体的には:
      • Gulftown(英語版)
      • Clarkdale(英語版)Core i3を除く)
      • Arrandale(英語版)(Core i3およびCore i5-4XXMを除く)
    • Sandy Bridge
      • デスクトップ: Pentium、Celeron、Core i3を除くすべてのプロセッサ[2][3]
      • モバイル: Core i7とCore i5のすべて。ベンダーによってはBIOS設定でAES-NI拡張を無効にして販売している場合がある[4]。この場合、BIOSアップデートが必要である[5]
    • Ivy Bridge
    • Haswell
      • i3-4000m[7]、Pentium、Celeronを除く
    • Skylake
    • IntelはAES-NIをサポートしたプロセッサのリストをウェブサイト上で公開している[8]
  • AMD
    • Bulldozer
    • Piledriver
    • Steamroller
    • Jaguar
    • Puma
    • Ryzen
    • EPYC

性能

AES-NI Performance Analyzedにおいて、Patrick SchmidとAchim Roosは「……インテルのAES-NI機能を利用して最適化した一部のアプリケーションから目覚しい結果が」と述べた[9]

セキュリティライブラリCrypto++(英語版)を用いた性能分析では、AES-GCMにおいてPentium 4との比較でおよそ28.0サイクル毎バイトから3.5サイクル毎バイトへのスループットの向上を示した[10][11]

AES-NIをサポートするソフトウェア

以下のソフトウェアは、AES-NIをサポートする。

ライブラリ

プログラミング言語

  • Go

アプリケーション

  • 7-Zip 9.1[16][17]
  • AreaGuard Neo 1.7
  • BestCrypt Volume Encryption
  • BitLocker
  • BlackCipher Game hack prevention module
  • Bloombase Cryptographic Module[18]
  • Conceal File encryption utility for Windows[19]
  • Citrix XenClient 1.0以降
  • DiskCryptor 0.9
  • DiskSec 1.85
  • DVDFab Passkey 9
  • dm-cryptによるLinuxにおけるディスク全体の暗号化
  • Embrane Heleos 2.0
  • FileVault version 2 (Mac OS X Lion) ディスク全体のAES暗号化[20]
  • McAfee Endpoint Encryption for PC 6.x
  • FreeBSDのOpenCrypto API(aesni(4)ドライバー)[21]
  • Oracle Database 11g Release 2 Patchset 1 (11.2.0.2) 透過的データ暗号化[22]
  • PGP Whole Disk Encryption Windowsにおいて10.1.0以降[23]およびMac OS Xにおいて10.2.0以降[24]
  • SafeGuard Enterprise 6.0
  • SecretAgent 6.1.1[25]
  • SecureDoc 5.2
  • TrueCrypt 7.0
  • VeraCrypt
  • Vormetric Encryption 5

脚注

  1. ^ “Intel Software Network”. Intel. 2008年4月5日閲覧。
  2. ^ AnandTech - The Sandy Bridge Review: Intel Core i7-2600K, i5-2500K and Core i3-2100 Tested
  3. ^ Compare Intel® Products
  4. ^ AES-NI support in TrueCrypt (Sandy Bridge problem)
  5. ^ “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.”. 2013年8月11日閲覧。
  6. ^ [1]
  7. ^ http://ark.intel.com/products/75104/Intel-Core-i3-4000M-Processor-3M-Cache-2_40-GHz
  8. ^ ARK: Advanced Search
  9. ^ P. Schmid and A. Roos (2010年). “AES-NI Performance Analyzed”. Tom's Hardware. 2010年8月10日閲覧。
  10. ^ T. Krovetz, W. Dai (2010年). “How to get fast AES calls?”. Crypto++ user group. 2010年8月11日閲覧。
  11. ^ “Crypto++ 5.6.0 Pentium 4 Benchmarks”. Crypto++ Website (2009年). 2010年8月10日閲覧。
  12. ^ “Intel Advanced Encryption Standard Instructions (AES-NI)”. Intel (2010年3月2日). 2010年7月7日時点のオリジナルよりアーカイブ。2013年8月11日閲覧。
  13. ^ “High-performance cryptography for the JVM”. 2013年8月11日閲覧。
  14. ^ “AES-NI enhancements to NSS on Sandy Bridge systems” (2012年5月2日). 2013年8月11日閲覧。
  15. ^ “System Administration Guide: Security Services, Chapter 13 Solaris Cryptographic Framework (Overview)”. Oracle (2010年9月). 2012年11月27日閲覧。
  16. ^ Tom's Hardware: AES-NI Performance Analyzed (Benchmark Results: 7-Zip)
  17. ^ Tom's Hardware: Four Compression And Archiving Solutions Compared (7-Zip 9.1 Beta)
  18. ^ “Bloombase StoreSafe Intelligent Storage Firewall”. Template:Cite webの呼び出しエラー:引数 accessdate は必須です。
  19. ^ Conceal- Encrypting Data just got better
  20. ^ “Mac OS X 10.7 Lion: the Ars Technica review”. Ars Technica (2011年7月20日). 2013年8月11日閲覧。
  21. ^ “FreeBSD 8.2 Release Notes”. FreeBSD.org (2011年2月24日). 2013年8月11日閲覧。
  22. ^ “Transparent Data Encryption”. Oracle (2011年1月17日). 2011年1月17日閲覧。
  23. ^ “PGP Desktop 10.1.x for Windows Release Notes”. Symantec (2011年2月1日). 2011年2月1日閲覧。
  24. ^ “Symantec PGP Desktop 10.2 for Mac OS X Release Notes”. Symantec (2011年7月29日). 2011年7月29日閲覧。
  25. ^ “Information Security Corp., SecretAgent 6”. 2013年8月11日閲覧。

外部リンク

  • Intel® Advanced Encryption Standard Instructions (AES-NI)
  • AES instruction set whitepaper