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.