Leía el otro día que un profesor de la Universitat de València había patentado el sistema de cifrado definitivo.
Partiendo del cifrado de Vernam, para crear un sistema que cumple las dos condiciones clásicas de Shannon (confusión y difusión), y añade de paso una tercera, complicando más si cabe el proceso, y generando un código indescifrable por fuerza bruta al tener infinitas combinaciones.
Aquí el texto de la solicitud internacional de patente.
Lo más simpático de todo son las palabras de este hombre, que anima a la comunidad hacker a intentar encontrar un método de explotación de dicho cifrado. Apenas han tardado unos días, y en Kriptópolis ya apuntan por donde pueden ir los tiros.
Llama la atención el artículo al asegurar que:
Por lo que respecta a los sistemas de cifrado simétrico, uno de los lenguajes mas solventes continua siendo el llamado algoritmo DES (Data Encryption Standard)
Siendo DES un sistema inventado en los años 70, y que se rompía con fuerza bruta en los 90 (56h tardaron en romperlo en el 98, con los ordenadores de aquella época), lo cual me hace pensar que por muy avanzado que esté en física, este profesor no es un genio en materia de seguridad informática.
El sistema de cifrado que propone es simétrico, con una tabla de equivalencias que debe conocer tanto el emisor como el receptor del mensaje de antemano, y de la que aparentemente no vuelve a hablar: el cómo se comunicará esta libreta queda a elección de los interesados (a bote pronto se me ocurre que lo puede llevar un esclavo de Roma, o que todos los receptores tengan un criptex como el de la imagen superior :)).
Esto suponiendo comunicaciones en las que nos podamos permitir conocer de antemano la tabla de equivalencias. Si hablamos de soportes antipiratería, estaríamos ante dispositivos físicos que deberían incluir en el mismo hardware tanto la tabla como el código del protocolo, facilitando más el hackeo. Si el método usado para descifrar el contenido estuviera albergado de forma dinámica en la red, volveríamos a tener el problema de precisar un nuevo sistema de cifrado para el mismo.
La segunda causa por lo que a priori lo veo tan ineficaz como otros supuestos cifrados definitivos, es que hablamos de un sistema complejo, que necesita de una comunicación elevada de interlocutores, lo que lo hace inservible conforme el rango de usuarios aumente (una cosa es usarlo para enviar un mail a un conocido, y otra es usarlo como método por defecto para mantener comunicación con cualquier usuario del servicio).
Y por último, entiendo que la fuerza bruta quizás no sea el método más eficaz para vulnerarlo, siempre nos quedará la ingeniería inversa y la ingería social. Bastaría con interceptar el mensaje con un MITM, conseguir que uno de los interlocutores instalase un keylogger y tendríamos el método de descifrado. Eso suponiendo que no tenemos forma de transformar uno de los terminales en zombie, y leer en texto plano el contenido del mismo.
En fin, que si un aficionado con conocimientos básicos en seguridad, le encuentra tres posibles vulnerabilidades, que no serán capaces de hacer los expertos…