İçeriğe geç

Sabit IV/nonce (ARCH6114)

Anahtar ruby.security.static-iv · Önem error · Kategori security · CWE CWE-329

Bir şifreye sabit veya sıfır IV/nonce geçirmek anlamsal güvenliği yok eder; CBC/CTR/GCM modlarında aynı IV’nin tekrarı düz metin sızıntısına ve GCM’de anahtar kurtarmaya yol açabilir.

cipher = OpenSSL::Cipher.new("aes-256-gcm")
cipher.encrypt
cipher.key = key
cipher.iv = "\x00" * 12
cipher = OpenSSL::Cipher.new("aes-256-gcm")
cipher.encrypt
cipher.key = key
iv = cipher.random_iv

Her şifreleme için kriptografik olarak rastgele, benzersiz bir IV/nonce üretin ve ciphertext ile birlikte saklayın.