Fuerza criptográfica (o fuerza criptográfica ): la capacidad de un algoritmo criptográfico para resistir el criptoanálisis . Un algoritmo se considera seguro si un ataque exitoso requiere que un atacante posea una cantidad inalcanzable de recursos informáticos o mensajes abiertos y encriptados interceptados, o una cantidad de tiempo tan significativa para la divulgación que, en ese momento, la información protegida ya no será relevante. . En la mayoría de los casos, la fuerza criptográfica no se puede probar matemáticamente; uno solo puede probar las vulnerabilidades de un algoritmo criptográfico, o (en el caso de los criptosistemas de clave pública ) reducir el problema de abrir el algoritmo a algún problema, que se consideracomputacionalmente difícil (es decir, probar que "hackear" no es más fácil que resolver este problema).
Considere las condiciones que debe cumplir un criptosistema para una protección confiable de la información. La fuerza de la información cifrada (fuerza criptográfica, o simplemente fuerza) depende de la posibilidad de lectura no autorizada de los datos.
Hablan de seguridad absoluta (o seguridad teórica ) si el criptosistema no puede ser descubierto ni teórica ni prácticamente aunque el atacante tenga recursos informáticos infinitamente grandes. La prueba de la existencia de algoritmos de encriptación absolutamente fuertes fue realizada por Claude Shannon y publicada en el trabajo " Teoría de la comunicación en sistemas secretos " [1] . Los requisitos para dichos sistemas también se definen allí:
La estabilidad de estos sistemas no depende de las capacidades computacionales del criptoanalista. La aplicación práctica de sistemas que cumplan con los requisitos de resistencia absoluta está limitada por consideraciones de costo y facilidad de uso.
Shannon demostró que el cifrado de Vernam (una sola vez) es un ejemplo de un algoritmo absolutamente seguro. En otras palabras, el uso correcto del cifrado de Vernam no le da al atacante ninguna información sobre el texto sin formato (solo puede adivinar cualquier parte del mensaje con probabilidad ).
Básicamente, en los sistemas criptográficos civiles se utilizan sistemas prácticamente seguros o computacionalmente seguros . Se dice que la estabilidad computacional del sistema se da en el caso de que exista la posibilidad de abrir el cifrado, pero con los parámetros seleccionados y las claves de cifrado. En la práctica, un atacante en la etapa actual de desarrollo tecnológico no puede tener suficientes recursos informáticos para descifrar el cifrado en un tiempo aceptable. La estabilidad de tales sistemas depende de las capacidades computacionales del criptoanalista.
La estabilidad práctica de tales sistemas se basa en la teoría de la complejidad y se evalúa únicamente en términos de un cierto punto en el tiempo y secuencialmente desde dos posiciones:
En cada caso, puede haber criterios adicionales para evaluar la resistencia.
Hablamos de seguridad demostrable si la prueba de la seguridad de un criptosistema se reduce a resolver cierto problema matemático difícil que subyace al algoritmo. Por ejemplo, un criptosistema RSA se considera seguro si el módulo de la transformación numérica no se puede factorizar en tiempo polinomial.
Dado que un ataque de fuerza bruta (brute force attack ) es posible para todo tipo de algoritmos criptográficos, excepto para los absolutamente seguros "según Shannon", para un algoritmo recién creado puede ser el único que exista. Los métodos para estimarlo se basan en la complejidad computacional , que luego se puede expresar en términos de tiempo , dinero y el rendimiento requerido de los recursos informáticos, por ejemplo, en MIPS . Esta estimación es el máximo y el mínimo al mismo tiempo.
La investigación adicional del algoritmo para buscar debilidades (vulnerabilidades) (criptoanálisis) agrega estimaciones de fortaleza contra ataques criptográficos conocidos ( criptoanálisis lineal , diferencial , etc.) y puede reducir la fortaleza conocida.
Por ejemplo, para muchos cifrados simétricos , existen claves débiles y S-boxes , cuyo uso reduce la fuerza criptográfica.
Además, una forma importante de verificar la resistencia son los ataques a la implementación , realizados para un complejo software-hardware-humano específico.
Cuanto más largo y más experto sea el análisis del algoritmo y las implementaciones, más confiable se puede considerar su seguridad. En varios casos, un análisis largo y cuidadoso condujo a una disminución en el índice de resistencia por debajo de un nivel aceptable (por ejemplo, en versiones preliminares de FEAL ).
La verificación insuficiente (según muchos criptógrafos, debilitamiento artificial) del algoritmo de cifrado de flujo A5 / 1 condujo a un ataque exitoso .