¿Es bueno el cifrado determinista de SQL Server 2016?

0

Estoy viendo que MS acaba de lanzar una nueva versión de SQL Server que admite el cifrado determinista de una columna, de modo que aún puede consultarla:

enlace

En este ejemplo, cifran de forma determinista la columna SSN:

enlace

Pero esto suena muy parecido al BCE, que pensé que se rompió fácilmente (vea el diagrama de pingüinos):

enlace

¿Es bueno el cifrado determinista? ¿Ofrece alguna protección real o simplemente te hace sentir mejor?

    
pregunta John 05.06.2015 - 16:57
fuente

1 respuesta

1

La documentación publicada actualmente sobre lo que realmente hace ese cifrado determinista no es suficiente para llegar a una conclusión definitiva.

Lo que se puede decir es que dicho cifrado determinístico puede ser diseñado e implementado "correctamente", en cuyo caso no incurre en una debilidad adicional más allá de las inherentes a su funcionalidad: a saber, si dos valores son idénticos, se cifrarán al mismo valor y esto será visible para el atacante. Este es un gran problema inevitable si los valores están en un conjunto lo suficientemente pequeño (por ejemplo, un verdadero / falso booleano).

La documentación existente parece implicar que el algoritmo de cifrado subyacente es "AEAD_AES_256_CBC_HMAC_SHA_256", que dice mucho a la vez, y no lo suficiente como para saber realmente lo que corre debajo del capó. Una implementación "adecuada" que coincida con la documentación calcularía el IV para el cifrado CBC con E K (SHA-256 ( m )) (simétrico Cifrado del hash de los datos completos a cifrar). Tal implementación evitaría el problema del BCE / Pingüino. Sin embargo, no está claro si esto es lo que Microsoft implementó realmente.

    
respondido por el Tom Leek 05.06.2015 - 20:29
fuente

Lea otras preguntas en las etiquetas