La flexibilidad criptográfica ("criptoflexibilidad") permite que un sistema de seguridad de la información cambie a primitivos y algoritmos criptográficos alternativos sin realizar cambios significativos en la infraestructura del sistema. La criptoflexibilidad radica en la capacidad de anticipar la evolución de las amenazas y cambiar a nuevos algoritmos a medida que aparecen. La flexibilidad criptográfica facilita las actualizaciones y el desarrollo del sistema, y puede actuar como medida de seguridad o mecanismo de respuesta a ataques cuando se descubre una vulnerabilidad en los algoritmos de cifrado de un sistema . Un sistema de seguridad se considera criptoflexible si sus algoritmos de cifrado pueden reemplazarse fácilmente y al menos automatizarse parcialmente. [una][2]
Las recomendaciones del NIST para la implementación inmediata de la criptoflexibilidad se basan en el potencial de las computadoras cuánticas , lo que hace que muchos sistemas criptográficos de clave pública existentes sean inestables [3] . Por ejemplo, en 1994, Peter Shor de Bell Laboratories demostró la capacidad de las computadoras cuánticas para acelerar significativamente el proceso de factorización de números primos en comparación con el uso de computadoras clásicas. [4] Dos años más tarde, el matemático estadounidense Love Grover inventó un algoritmo de búsqueda cuántica que acelera significativamente el descifrado de algoritmos criptográficos simétricos. Según los expertos del NIST, para 2030, descifrar el algoritmo RSA con una clave de 2000 bits será cuestión de horas. [5] No será barato (se necesitarán al menos mil millones de dólares), pero es bastante real. [4] [5] El algoritmo AES se puede proteger contra la piratería al alargar significativamente la clave, pero los algoritmos RSA , ECDSA , ECDH , DSA y muchos otros se volverán inseguros. [cuatro]
Los algoritmos criptográficos están constantemente bajo ataque. Por un lado, esto es posible debido al continuo aumento de la velocidad de los procesadores, lo que hace más probable que los algoritmos puedan ser descifrados en un tiempo razonable, por otro lado, debido a la investigación en el campo de la criptografía, que constantemente encuentra vulnerabilidades en los algoritmos. Por el momento , no se recomienda el uso de las funciones hash MD4 , MD5 y SHA-1 , ya que hay formas de encontrar colisiones con una complejidad computacional aceptable. De hecho, Microsoft ha prohibido el uso de MD4, MD5 y SHA-1 en los nuevos sistemas de codificación, excepto cuando el algoritmo se usa en el estándar de la industria o en aplicaciones que ejecutan Windows Vista o versiones anteriores. Un buen ejemplo de flexibilidad criptográfica es SSL y TLS , que negocian algoritmos criptográficos de forma segura entre el servidor y el cliente. [6]
El cibercrimen es un gran negocio. Un ejemplo de esto es el hack de Target , en el que se robaron los datos de tarjetas de crédito de decenas de millones de personas. Según Malwarebytes, un proveedor global de soluciones de prevención y reparación de malware, los ataques de ransomware provocaron que casi una cuarta parte de las PYMES que se vieron afectadas por él en 2017 cerraran por completo. Según el informe de Verizon Data Breach Investigations de 2018 , el 58 % de los ciberataques se dirigen a pequeñas empresas debido a sus vulnerabilidades de seguridad. [7]
El cifrado de clave pública, las firmas digitales y el intercambio de claves son la base de muchos protocolos de comunicación. [3] Las vulnerabilidades que se han encontrado en los algoritmos subyacentes han proporcionado evidencia de que las organizaciones deben estar preparadas para moverse rápidamente entre los estándares. La criptoagilidad puede brindar una respuesta rápida a las amenazas emergentes al respaldar la transición de un estándar de cifrado a otro en cualquier momento [8] . Desde 2010, la infraestructura de clave pública ( PKI , PKI - Public Key Infrastructure) se ha ido integrando gradualmente en las aplicaciones comerciales utilizando certificados de clave pública , que se utilizaban como autoridad de certificación entre objetos de red. Una infraestructura de clave pública es más segura que las formas anteriores de identificación y autenticación que involucran tecnologías criptográficas como certificados y firmas digitales . [9] Los certificados de clave pública son componentes esenciales para una autenticación sólida y una comunicación segura entre entidades. [diez]
Se espera que las computadoras cuánticas puedan romper los algoritmos de cifrado de clave pública existentes. La mayoría de los algoritmos criptográficos comunes utilizados en el cifrado y el trabajo con firmas electrónicas se basan en el hecho de que la descomposición de números en factores primos, el logaritmo discreto y algunos otros problemas matemáticos son de una complejidad muy alta. Las computadoras ordinarias no pueden realizar los cálculos necesarios en un tiempo razonable. Las computadoras cuánticas que funcionan con el algoritmo de Shor pueden resolver estos problemas en tiempo polinomial. [11] [3] [12] La criptografía poscuántica es un campo de la criptografía que tiene como objetivo reemplazar los algoritmos vulnerables por otros nuevos que se consideran difíciles de descifrar incluso para una computadora cuántica. Se conocen varios criptoalgoritmos basados en problemas matemáticos que aún no se pueden simplificar mediante el uso de computadoras cuánticas. Los algoritmos de cifrado asimétrico basados en cuadrículas son muy elogiados en NIST por ser simples, eficientes y altamente paralelizables. [13]
La evolución del sistema y la flexibilidad criptográfica no son lo mismo. La evolución del sistema surge en base a requerimientos comerciales y técnicos. La criptoagilidad está relacionada con los requisitos computacionales y debe ser considerada por expertos en seguridad, diseñadores de sistemas y desarrolladores de aplicaciones. [catorce]
Las recomendaciones para lidiar con la flexibilidad criptográfica incluyen: [15]
Hoy en día, muchos fabricantes de sistemas operativos (Microsoft, Apple , Google, etc.) tienen cierta flexibilidad interna a través de sus procesos integrados de actualización de software. Sin embargo, por lo general solo admiten sus propios productos y requieren la descarga de grandes paquetes de servicios. A esto se suma el hecho de que este proceso no es automático y deja la elección al usuario, lo que hace que las actualizaciones sean extremadamente lentas. Las aplicaciones internas suelen ser completamente estáticas en términos de criptografía y carecen de flexibilidad. Como regla general, las actualizaciones de las implementaciones criptográficas internas para abordar amenazas o vulnerabilidades requieren una actualización completa del código, pruebas de calidad y reinstalación. [17]
Recientemente, los certificados flexibles se han discutido regularmente en el contexto de la infraestructura de clave pública. Por lo general, se refieren a certificados que contienen dos formas de clave pública y firma: la clave pública clásica y la clave pública poscuántica. Estas claves compartirán algunos atributos comunes (como un posible nombre de sujeto), así como firmas duales de la Autoridad de certificación (CA): nuevamente, una firma basada en la criptografía moderna (clásica) y una poscuántica basada en la criptografía poscuántica. [Dieciocho]