A Carlos, María y Nacho, mis usuarios honestos, pero infinitamente curiosos.
A Palmira, depositaria de todos los secretos.
Introducción
Como casi todas las cosas importantes en la vida, la criptografía me encontró en un pupitre del colegio. Mi amiga Sara, sentada dos filas delante, tenía algo que contarme y escribía pequeños renglones en fragmentos de papel cuadriculado que intentaba hacerme llegar escondidos en su goma o en la caña de un bolígrafo. Sin duda, burlar la vigilancia de al menos dos potenciales entidades interesadas en nuestros mensajes (a la sazón, mi compañero de pupitre y don Primitivo, nuestro profesor de cuarto) era la principal razón de ser de este intercambio de información. Nuestra técnica fue, por tanto, ganando en sofisticación: una vez vimos claro que no bastaba con intentar esconder la existencia de la transmisión que nos ocupaba, comenzamos a pensar en ocultar no la presencia de los mensajes, sino su contenido.
Este tipo de procesos se repiten cada día en miles de aulas de educación primaria a lo largo del mundo. Esto no es sorprendente, pues la criptología, definida como “ciencia y práctica del diseño de sistemas de comunicación que son seguros en presencia de adversarios” y esquemas de cifrado elementale s contemporáneos de los lenguajes más antiguos conocidos. Por ejemplo, la escritura cuneiforme de los sumerios o el lenguaje jeroglífico de los egipcios son métodos de comunicación cuyo fin es transmitir información no de manera universal, sino a ciertos receptores autorizados. Un esquema de cifrado , la herramienta criptográfica más conocida y antigua, persigue exactamente eso: no el ocultar que existe transmisión de información, sino limitar el acceso a la información transmitida por medi o de instrumentos matemáticos.
La criptología tiene dos vertientes bien diferenciadas: una constructiva y otra crítica o destructiva. La primera, llamada criptografía, se ocupa del diseño de herramientas, mientras que la segunda, el criptoanálisis, es el estudio crítico de las mismas. Criptógrafos y criptoanalistas llevan siglos enzarzados en una pugna cuyo resultado son construcciones cada vez más seguras para todo tipo de aplicaciones relacionadas con la gestión, transmisión y almacenamiento de información. Ambos buscan sus armas en un arsenal inagotable y precioso: las matemáticas. El papel de las matemáticas en criptología es central desde dos puntos de vista. Por un lado, como fuente de problemas cuya dificultad mantendrá bajo control a adversarios externos y usuarios maliciosos de un cierto sistema. Por otro, las matemáticas proporcionan el único lenguaje formal adecuado para la cimentación de demostraciones rigurosas e irrefutables de seguridad.
Hasta finales del siglo pasado, las construcciones criptográficas eran fundamentalmente esquemas de cifrado, diseñados para conseguir transmitir de manera segura información entre dos usuarios. En los últimos cuarenta años, sin embargo, las reglas del juego han cambiado radicalmente. La forma en que hoy compartimos, gestionamos y almacenamos la información plantea escenarios de aplicación fascinantes que suponen un reto constante para criptógrafos y criptoanalistas.
Este libro es una introducción a la criptología desde una perspectiva moderna. En cada capítulo presentaremos al lector un tipo de construcción criptográfica, profundizando en las herramientas matemáticas que pueden usarse para su implementación. Queremos acercar al lector a la criptología de manera amena y divulgativa, y presentarle además las ideas y conceptos matemáticos que subyacen en diferentes construcciones criptográficas. Nuestra ambición es proporcionar al lector un beneficio doble: aprender matemáticas a través de la criptología y desarrollar la inquietud por la criptología moderna desde el placer del formalismo matemático. Así, este libro proporciona a los profesores de educación secundaria algunos ejemplos novedosos con los que motivar a sus alumnos en el aprendizaje. Con ese fin plantearemos distintos retos o ejercicios sencillos, que pueden ser abordados con éxito por estudiantes de este nivel.
Capítulo 1
Criptografía simétrica.
Al César lo que es del César
Volvamos atrás, quizá no tantos años, hacia un pasado sin internet, sin mensajería instantánea, sin móviles. Un pasado en el que los mensajes eran complejos en fondo y forma, redactados con paciencia y pulcritud. Entonces, los destinatarios eran pocos y selectos, y en la mayoría de los casos no se enviaba más de una carta cada mes, precedida de varios encuentros cara a cara. Este escenario, que parece rescatado de una infancia en blanco y negro, era el marco habitual de la comunicación hasta hace menos de treinta años. Es en cierta manera el ideal al que se aspira: cada día se intenta simular cientos de veces a través de la comunicación digital. La razón es sencilla; querríamos confiar en la autenticidad y confidencialidad de un archivo de datos recibido por e-mail igual que hacemos al recibir un sobre inmaculado (sin trazas de manipulación) por correo ordinario.
Este escenario en blanco y negro es el hábitat natural de la llamada criptografía simétrica (también llamada criptografía clásica o de clave privada). Parte del supuesto de que los interlocutores involucrados comparten un secreto grande , acordado en una fase previa completamente confiable, como podría ser un encuentro en persona. En este contexto, grande significa difícil de predecir o, en términos técnicos, de alta entropía . Actualmente, se considera que una cadena de ceros y unos (bits) es de alta entropía si su longitud es, al menos, de 180 bits. En contraposición, cadenas de 30 bits o menos suelen considerarse de baja entropía; ese es, por ejemplo, el caso de las contraseñas que somos capaces de memorizar. La entropía puede definirse rigurosamente como una medida para cuantificar la incertidumbre: en física, por ejemplo, sirve para medir el desorden, la desorganización de un sistema.