Lanjutkan ke konten

AES-NI

Referensi arsitekturFeex

AES-NI adalah ekstensi instruksi x86 untuk putaran enkripsi dan dekripsi AES serta pekerjaan penjadwalan kunci terkait. Ini mempercepat bagian-bagian dari implementasi kriptografi alih-alih menyediakan seluruh protokol aman secara utuh.

Yang perlu Anda ketahui

AES-NI adalah ekstensi instruksi x86 untuk putaran enkripsi dan dekripsi AES serta pekerjaan penjadwalan kunci terkait. Ini mempercepat bagian-bagian dari implementasi kriptografi alih-alih menyediakan seluruh protokol aman secara utuh.

Cara kerjanya

Instruksi seperti AESENC dan AESDEC mentransformasikan status AES 128-bit, sementara bentuk terpisah menangani putaran akhir dan membantu ekspansi kunci. Implementasi AES memilih jumlah dan urutan putaran untuk panjang kuncinya. Instruksi tersebut tidak memilih mode, mengalokasikan nonce, mengautentikasi pesan, atau melindungi kunci yang tersimpan secara mandiri.

Manfaat penggunaan

Pustaka kriptografi yang terpelihara dapat melakukan dispatch ke AES-NI untuk mode AES yang didukung. AES-GCM juga memerlukan pemrosesan autentikasi, yang sering kali dipercepat dengan perkalian tanpa bawaan (carry-less multiplication). Negosiasi protokol, tata letak rekaman, dan panjang pesan memengaruhi performa ujung-ke-ujung.

Cara memeriksa dukungan dan pengaktifan

CPUID.01H:ECX bit 25 menunjukkan AES-NI legasi. Lingkungan eksekusi harus mengelola status XMM. Periksa persyaratan VAES dan status vektor secara terpisah untuk implementasi VEX atau EVEX yang lebih lebar, dan gunakan fasilitas dispatch yang didukung dari pustaka kriptografi.

Gunakan implementasi kriptografi terpelihara yang menangani pemilihan fitur, kondisi kegagalan, dan algoritma lengkap. Akselerasi perangkat keras menyediakan fungsi dasar; manajemen kunci, autentikasi, aturan nonce, dan pilihan protokol tetap menjadi tanggung jawab perangkat lunak.

Hal yang tidak dipastikan oleh fitur ini

Dukungan AES-NI bukanlah sertifikasi keamanan, vonis malware, atau jaminan terhadap serangan kanal samping (side channels) pada kode di sekitarnya. AES bukanlah SHA. VAES dienumerasi secara terpisah, dan sistem guest dapat menyembunyikan AES-NI meskipun sistem host memilikinya.

Kompatibilitas dan performa dalam praktik

Kolom fitur bukanlah sertifikasi produk atau bukti bahwa aplikasi tertentu aman. Performa bergantung pada ukuran pesan, mode, pemrosesan tumpukan (batching), dan bagian protokol lainnya. Periksa penyedia yang sebenarnya dan pastikan pembaruan keamanannya selalu terpasang.

Daftar periksa verifikasi praktis

  1. Catat model prosesor atau platform yang tepat serta versi aplikasi, OS, dan runtime yang terlibat. Pertahankan kata-kata dari kesalahan atau persyaratan sebenarnya.
  2. Periksa referensi produsen untuk model persis tersebut, lalu periksa kemampuan efektif dan status aktif di lingkungan tempat program berjalan.
  3. Bandingkan setiap persyaratan dari biner atau backend yang dipilih. Fitur dengan nama serupa, alias, atau label teknologi umum tidaklah cukup.
  4. Pastikan aplikasi memilih implementasi yang dimaksudkan. Gunakan diagnostik terdokumentasi miliknya dan alternatif cadangan yang didukung ketika persyaratan tidak terpenuhi.
  5. Lakukan satu perubahan yang didukung pada satu waktu dan ulangi beban kerja yang sama. Pertahankan konfigurasi asli dan jalur pemulihan tetap tersedia.

Jika fitur terdaftar tetapi perangkat lunak tidak dapat menggunakannya

Mulailah dari komponen persis yang mengalami kegagalan. Basis data perangkat keras menjelaskan kemampuan yang tercatat; sistem operasi atau hipervisor dapat mengekspos lingkungan efektif yang berbeda. Kesalahan instruksi ilegal juga memerlukan penyelidikan terhadap instruksi bermasalah yang sebenarnya dan build biner, karena korupsi data atau instruksi tidak didukung yang tidak terkait dapat menghasilkan gejala serupa.

Pasang versi aplikasi, driver, atau runtime yang didukung untuk platform persis tersebut, dan gunakan build standar atau cadangan yang terdokumentasi dari vendor jika diperlukan. Pembaruan perangkat lunak tidak dapat menciptakan instruksi yang tidak dimiliki prosesor. Perubahan firmware dan kebijakan keamanan harus mengikuti prosedur produsen sistem serta rencana pemulihan, bukan resep optimasi umum.

Sumber dan cakupan penjelasan ini

Intel 64 and IA-32 Architectures Software Developer's Manual

Referensi ini menetapkan perilaku arsitektur dan persyaratan perangkat lunak. Referensi tersebut tidak memverifikasi secara independen setiap nilai fitur pada halaman model perangkat keras yang ditautkan. Untuk dukungan model, gunakan bukti produsen pada halaman tersebut dan periksa konfigurasi sistem efektif. Artikel ini tidak menyediakan tolok ukur, sertifikasi, atau tanggal tinjauan independen.

Sumber dan verifikasi

Kepemilikan editorial: Feex. Tidak ada tanggal peninjauan independen yang dicatat. Cara kami meneliti.

Apakah artikel ini bermanfaat?

Cukup jawab ya atau tidak. Pilih alasan jika Anda mau, atau tambahkan catatan singkat.

Apakah artikel ini bermanfaat?