Set instruksi Standar Enkripsi Lanjutan (set instruksi AES) adalah set instruksi yang bertujuan untuk mempercepat enkripsi dan dekripsi Standar Enkripsi Lanjutan (AES), sekaligus melindungi dari serangan saluran samping. Set instruksi ini telah digabungkan ke dalam banyak prosesor. Biasanya, operasi ini diimplementasikan dalam instruksi satu ronde tunggal dan satu ronde terakhir yang sedikit berbeda cara kerjanya.
Prosesor arsitektur x86
AES-NI (Advanced Encryption Standard New Instructions milik Intel) adalah implementasi besar pertama. AES-NI adalah perluasan dari set instruksi x86 untuk mikroprosesor dari Intel dan AMD yang diusulkan oleh Intel pada Maret 2008.[1]
Daftar instruksi
Instruksi | Penjelasan[2] |
---|---|
AESENC |
Menjalankan satu ronde enkripsi AES |
AESENCLAST |
Menjalankan ronde terakhir enkripsi AES |
AESDEC |
Menjalankan satu ronde dekripsi AES |
AESDECLAST |
Menjalankan ronde terakhir dekripsi AES |
AESKEYGENASSIST |
Membantu dalam pembuatan kunci ronde AES[catatan 1] |
AESIMC |
Membantu dalam InverseMixColumns Rijndael |
Intel
Prosesor Intel berikut mendukung set instruksi AES-NI:[3]
- Keluarga Westmere, khususnya
- Prosesor Westmere-EP (alias Gulftown Xeon seri 5600 model server DP)
- Prosesor Clarkdale, kecuali Core i3, Pentium, dan Celeron
- Prosesor Arrandale, kecuali Celeron, Pentium, Core i3, dan Core i5-4XXM
- Keluarga Sandy Bridge
- Keluarga Ivy Bridge
- Semua i5, i7, Xeon, dan i3-2115C[8] saja
- Keluarga Haswell (semua, kecuali i3-4000m,[9] Pentium, dan Celeron)
- Keluarga Broadwell (semua, kecuali Pentium dan Celeron)
- Keluarga Silvermont/Airmont (semua, kecuali Bay Trail-D dan Bay Trail-M)
- Keluarga Goldmont (dan seterusnya)
- Keluarga Skylake (dan seterusnya)
AMD
Beberapa prosesor AMD berikut mendukung instruksi AES:
- Keluarga Jaguar dan yang lebih baru
- Keluarga Puma dan yang lebih baru
- Prosesor "Heavy Equipment"
- Keluarga Bulldozer[10]
- Keluarga Piledriver
- Keluarga Steamroller
- Keluarga Excavator dan yang lebih baru
- Keluarga Zen (dan seterusnya)
Percepatan perangkat keras dalam arsitektur lain
Bagian ini kosong. Anda bisa membantu dengan melengkapinya. |
Kinerja
Dalam AES-NI Performance Analyzed, Patrick Schmid dan Achim Roos menemukan "hasil yang memukau dari aplikasi-aplikasi yang telah dioptimalkan untuk menggunakan kemampuan AES-NI Intel".[11]
Dukungan perangkat lunak
Kebanyakan kompilator modern dapat menghasilkan instruksi AES.
Kebanyakan perangkat lunak keamanan dan kriptografi mendukung set instruksi AES:
- BitLocker[12]
- Cryptography API: Next Generation (CNG) milik Microsoft (butuh Windows 7)[13]
- Crypto API milik Linux
- FileVault 2 milik Apple dalam macOS 10.10+
- FLAM/FLUC 5.1.08 (dirilis 24 Agustus 2015) ke atas[14]
- GnuTLS[15]
- Go[16]
- HotSpot di Java 7
- Layanan Keamanan Jaringan (NSS) versi 3.13 ke atas[17] (dipakai oleh Firefox dan Google Chrome)
- Libsodium[18]
- OpenCrypto API milik FreeBSD (pengandar aesni(4))[19]
- OpenSSL 1.0.1 ke atas[20]
- Solaris Cryptographic Framework[21] pada Solaris 10 ke atas
- VeraCrypt[22]
- Bloombase Cryptographic Module
Lihat pula
- Advanced Vector Extensions (AVX)
- Set instruksi CLMUL
- Set instruksi FMA (FMA3, FMA4)
RDRAND
Catatan
- Instruksi ini menghitung 4 perintah paralel perluasan kunci AES dalam empat kata 32 bit dalam double quadword (register SSE) pada bit X[127:96] untuk dan X[63:32] untuk saja. Dua substitusi paralel kotak-S AES dan dipakai dalam AES-256 serta dua perintah dan dipakai dalam AES-128, AES-192, dan AES-256.
Referensi
Pranala luar
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.