No hay nada más seguro que "seguro". Un atacante que puede romperlo por adelantado, porque tiene "solo" seguridad de 128 bits, es un atacante que tiene mucho más poder de cómputo disponible que todas las computadoras en la Tierra juntas (incluso los teléfonos inteligentes y las máquinas de café). Es inverosímil que un atacante de este tipo bajara tan deprisa que se molestara en romper su su tecla; él ya conoce todos tus pensamientos, dirige todas tus acciones y probablemente también posee tu alma.
Los niveles de seguridad más allá de los 128 bits no están diseñados para proporcionar "más seguridad", sino para apaciguar a los auditores, gerentes, clientes y posibles parejas (no necesariamente en ese orden) mediante una poderosa visualización de bits adicionales. Esto es como birds of paradise : al utilizar una clave de gran tamaño, envía la señal de que es tan bueno. que puede pagar desperdiciar el ancho de banda de la CPU y la red en criptografía ridículamente ampliada.
De manera realista, si (cuando) se rompe tu clave, entonces no será a través de su tamaño; será a través de un error de software, una fuga de hardware o un uso incorrecto de la clave en un protocolo mal diseñado. En ese sentido , podemos hablar de seguridad real:
-
El diseñador de Curve25519 y autor de su implementación habitual es Daniel J. Bernstein, quien es conocido por "saber su oficio". Su código probablemente contiene muchos menos errores de los que haría la mayoría de los desarrolladores. Usar su código es, en igualdad de condiciones, una buena idea.
-
Por otra parte, los protocolos son un tema importante, y es mucho más fácil destruir un protocolo que una implementación de algoritmo criptográfico. Al buscar una curva, estás buscando algo incorrecto. Debes pensar "¿Qué protocolo debo usar?" y luego (solo entonces) preocuparse por la curva específica, en caso de que el protocolo que elija suceda para permitir el uso de varias curvas. Curve25519 no (aún) se ha filtrado en todos o incluso en los protocolos más establecidos. Por ejemplo, no hay soporte para Curve25519 en SSL / TLS (aunque hay uno en SSH).