Sabit IV/nonce (ARCH2114)
Anahtar python.security.static-iv · Önem error · Kategori security · CWE CWE-329
Sabit veya sıfır IV/nonce, CBC/CTR/GCM modlarının anlamsal güvenliğini yok eder ve aynı anahtarla tekrar kullanımda kritik açıklara yol açar. Her mesaj için rastgele IV üretin.
Hatalı
Bölüm başlığı “Hatalı”from cryptography.hazmat.primitives.ciphers.aead import AESGCM
def encrypt(key, data): nonce = b"\x00" * 12 return AESGCM(key).encrypt(nonce, data, None)import osfrom cryptography.hazmat.primitives.ciphers.aead import AESGCM
def encrypt(key, data): nonce = os.urandom(12) return nonce + AESGCM(key).encrypt(nonce, data, None)Düzeltme
Bölüm başlığı “Düzeltme”Her şifreleme işlemi için kriptografik olarak rastgele, benzersiz bir IV/nonce üretin.