Compartir vía


HardcodedIVCNG (consulta código de controlador de Windows)

Información general

Un vector de inicialización (IV) es una entrada a un primitivo criptográfico que se usa para proporcionar el estado inicial. Normalmente, el IV debe ser aleatorio o pseudoaleatorio (esquema aleatorio), pero a veces un IV solo debe ser impredecible o único (esquema con estado).

La selección aleatoria es fundamental para algunos esquemas de cifrado para lograr la seguridad semántica, una propiedad en la que el uso repetido del esquema bajo la misma clave no permite que un atacante infiera relaciones entre segmentos (potencialmente similares) del mensaje cifrado.

Recomendación

Todos los cifrados de bloques simétricos también deben usarse con un vector de inicialización adecuado (IV) según el modo de operación que se utiliza.

Si usa un esquema aleatorio como CBC, se recomienda usar el generador de números pseudoaleatorios criptográficamente seguros, como BCryptGenRandom.

Detalles adicionales

Esta consulta se puede encontrar en el repositorio de Microsoft GitHub CodeQL. Consulte la página CodeQL y static Tools Logo Test (Prueba de logotipo de herramientas estáticas ) para obtener más información sobre cómo los desarrolladores de Controladores de Windows pueden descargar y ejecutar CodeQL.

Referencias adicionales: