Bagikan melalui


HardcodedIVCNG (Windows Driver CodeQL Query)

Gambaran Umum

Vektor inisialisasi (IV) adalah input ke primitif kriptografi yang digunakan untuk memberikan status awal. IV biasanya harus bersifat acak atau semu-acak (skema acak), tetapi kadang-kadang IV hanya perlu bersifat tidak dapat diprediksi atau harus unik (skema stateful).

Pengacakan sangat penting untuk beberapa skema enkripsi agar mencapai keamanan semantik, suatu properti dimana penggunaan skema yang berulang dengan kunci yang sama tidak memungkinkan penyerang untuk menyimpulkan hubungan antara segmen (yang berpotensi serupa) dari pesan yang dienkripsi.

Rekomendasi

Semua cipher blok simetris juga harus digunakan dengan vektor inisialisasi (IV) yang sesuai dengan mode operasi yang digunakan.

Jika menggunakan skema acak seperti CBC, disarankan untuk menggunakan generator nomor pseudorandom yang aman secara kriptografis seperti BCryptGenRandom.

Detail Tambahan

Kueri ini dapat ditemukan di repositori Microsoft GitHub CodeQL. Lihat halaman CodeQL dan Static Tools Logo Test untuk detail tentang bagaimana pengembang Driver Windows dapat mengunduh dan menjalankan CodeQL.

Referensi Tambahan: