El ataque de fuerza bruta es el más estúpido de los ataques. Es el equivalente a que un mono golpee repetidamente un coco con una piedra hasta que se rompa (el coco, no la piedra). Si reemplazas el coco con una caja fuerte de acero, el mono será derrotado. "En última instancia", el mono podría golpear el acero, si tan solo pudiera golpearlo durante (mucho) más tiempo de su vida. Pero no puede: estará muerto mucho antes de haber abollado sustancialmente el acero.
Lo que debería preocuparte no es la fuerza bruta. Un atacante de fuerza bruta prueba todas las claves posibles hasta que tiene suerte. Basta con tener suficientes claves posibles para hacer que tal ataque sea inviable; "muchas claves posibles" se traducen a "claves suficientemente largas": para el cifrado simétrico, una clave es solo una secuencia de bits de un tamaño determinado, y cualquier secuencia de exactamente tantos bits es una clave válida; por lo tanto, una clave de 128 bits es más que lo suficientemente grande como para lograr una resistencia adecuada contra la fuerza bruta (con una margen justo ). Si utiliza AES , el tamaño de clave mínimo es de 128 bits (el algoritmo no puede hacer menos), así que no se preocupe. .
Los problemas están más bien en cómo utiliza el algoritmo de cifrado. Esto es una cuestión de sutileza y es muy fácil de botarlo, dejando la puerta abierta para los atacantes que son más inteligentes que el mono promedio. Como mínimo, debe definir claramente contra qué intenta defenderse, quién necesitará cifrar los datos, quién necesitará descifrar los datos y cómo se administrarán las claves (generación, almacenamiento, acceso, destrucción).
Por supuesto, si solo necesita cifrado para fines regulatorios, simplemente rocíe un poco de AES sobre él. No sería la primera vez que se aplica el cifrado sin que esto tenga sentido real. Su mejor apuesta, en ese caso, sería Cifrado de datos transparente implementado en Oracle y SQL Server. TDE tiene un buen rendimiento (no lo notará) y no altera el formato de la tabla, por lo que las aplicaciones pueden usarlo de manera transparente (de ahí el nombre). TDE protege contra las violaciones de confidencialidad de los atacantes que obtienen un acceso de lectura a la parte relevante del disco duro (por ejemplo, los atacantes que roban una cinta de copia de seguridad antigua). Eso es algo.
TDE, o cualquier cantidad de cifrado, no disipará mágicamente todas las vulnerabilidades, por supuesto. La criptografía es una ciencia, no la magia.