Saltar al contenido
uencoder

IV (Initialization Vector)

Un vector de inicialización (IV) es una entrada que inyecta aleatoriedad en los modos de cifrado por bloques, de modo que el mismo texto plano produce distintos cifrados en cada cifrado.

Propósito

Evita la filtración de patrones de texto plano idéntico y proporciona seguridad semántica.

Mecanismo

La longitud del IV suele igualar el tamaño de bloque (p. ej., 128 bits para AES). CBC exige un IV impredecible (aleatorio); CTR/GCM exigen unicidad (un contador sirve). El IV no necesita ser secreto y se transmite con el cifrado. En GCM el IV suele llamarse nonce.

Casos de uso

  • IV aleatorios para AES-CBC
  • Nonces únicos para AES-GCM
  • Almacenamiento de IV en cifrado de disco
  • Identificación y desduplicación de cifrados

Ejemplos

  • entrada
    AES-CBC IV=random 128 bits
    Output
    different result on every encryption

    The IV is transmitted with the ciphertext

Errores comunes

A fixed or predictable IV enables chosen-plaintext attacks
Use a random IV for CBC and a unique nonce for CTR/GCM

Términos relacionados

Herramientas relacionadas

References