La criptografía, la ciencia que estudia cómo hacer un mensaje que
resulte indescifrable para terceros, parece cosa de novelas de espionaje
o tesoros enterrados. Sin embargo, todos nosotros recurrimos a la
criptografía cuando hacemos una compra por Internet o enviamos un
mensaje por telefonía celular. Y es, probablemente, la rama de las
matemáticas que más provecho ha dado en los últimos años.
Una clave
muy sencilla consiste en reemplazar cada letra del mensaje por otro
símbolo: a igual letra, igual símbolo. Es el método que, en la
imaginación de Edgar Allan Poe, usa el pirata Kidd en “El escarabajo de
oro”. El protagonista, un hombre llamado Legrand, encuentra en la playa
un pergamino con lo que parece ser una secuencia aleatoria de números y
símbolos. Legrand sospecha que el pergamino puede contener las
instrucciones para encontrar un tesoro y logra descifrar el mensaje.
Poe era muy aficionado a este tipo de claves y solía publicar
desafíos de este tipo para los lectores del Alexander’s Weekly
Messenger, una revista de Filadelfia. El relato en “El escarabajo de
oro” es casi un manual de instrucciones para resolver claves de
sustitución. Legrand comienza por contar cuántas veces aparece cada
símbolo y asociar el símbolo que más se repite (el número ocho) a la
letra más frecuente en el idioma inglés (la e). Confirma esta suposición
por el hecho de que el par 88 aparece cinco veces el mensaje y,
efectivamente, la letra “e” se duplica muchas veces en inglés (como en
feed, speed, agree, etc.). Luego analiza la distribución de los
símbolos, localiza la palabra the (la más frecuente en inglés) y, paso a
paso, termina por descifrar todo el mensaje.
Sherlock Holmes emplea el mismo método para resolver una clave
similar en “La aventura de los bailarines”. Aquí cada letra se reemplaza
por la figura de un hombrecito bailando y a cada letra le corresponde
una posición diferente. Como Legrand, Holmes asocia la letra “e” a la
figura más repetida. Curiosamente, para Poe, el orden de las letras en
inglés, según su frecuencia, es E, A, O, I, D, H, N, R, S, T... mientras
que para Holmes es E, T, A, O, I, N, S, H, R, D y L.
Mucho más sencilla es la clave que el profesor Lidenbrock (en
realidad, su sobrino) descifra en Viaje al centro de la Tierra: el autor
del mensaje simplemente lo escribe al revés.
CLAVES DE DESPLAZAMIENTO
Otro tipo de clave consiste en reemplazar cada letra del mensaje por
la que le sigue en el abecedario, una cantidad determinada de
posiciones. Por ejemplo, reemplazando cada letra por la que está dos
posiciones más allá. Entonces, la palabra PAGINA se convertiría en
RCIKOC (la R está dos lugares después de la P; la C, dos lugares después
de la A y así sucesivamente). Este sistema de encriptación se llama
también “clave cesárea”, porque fue usada por Julio César.
Estas claves “de desplazamiento” son muy fáciles de descifrar: una
vez identificada una letra, quedan determinadas todas las demás. Además,
para un alfabeto de veintisiete letras hay sólo veintiséis
desplazamientos posibles y una computadora podría analizarlas a todas en
segundos.
El método de desplazamiento se puede perfeccionar recurriendo a un
número. Por ejemplo, 4239. Este número indica que la primera letra del
mensaje se reemplaza por la que está cuatro lugares más allá en el
abecedario. La segunda, por la que está dos lugares más allá. La
tercera, por la que está tres lugares más allá y la cuarta, por la que
está nueve lugares más allá. El ciclo se repite a partir de la quinta
letra. Este sistema es más seguro porque una misma letra se reemplaza
por una distinta según su posición en el texto y no sirve el análisis de
frecuencia empleado por el personaje de Poe o por Sherlock Holmes.
Lewis Carroll, el autor de Alicia en el País de las Maravillas, publicó
una vez una tabla de doble entrada para aplicar rápidamente la clave de
desplazamiento.
Durante la Segunda Guerra Mundial, el ejército alemán desarrolló una
máquina encriptadora llamada Enigma, de gran complejidad y que producía
mensajes secretos casi imposibles de descifrar. Para mayor seguridad,
las claves se cambiaban varias veces al día. Un tipo de mensajes que
preocupaba especialmente a los aliados eran los que informaban la
posición de los submarinos alemanes que hundían los barcos que llevaban
suministros a través del Atlántico. Fue gracias a los trabajos de Alan
Turing que los ingleses lograron descubrir cómo funcionaba la máquina
Enigma y descifrar los mensajes enemigos. Los alemanes estaban tan
seguros de la inviolabilidad de sus mensajes que atribuyeron esto a la
labor de espías.
El ejército de Estados Unidos, mientras tanto, desarrolló un
lenguaje secreto basado en el idioma de los indios navajos. El idioma
navajo no tenía forma escrita, por lo que había pocos registros de su
estructura, fuera de Estados Unidos. El código usaba algunas palabras
traducidas directamente del navajo, otras veces empleaba metáforas (por
ejemplo, nombres de pájaros para aviones o de peces para barcos) y
también incluía palabras armadas mediante fonética. Por ejemplo, el
verbo belong (pertenecer) se armaba con las palabras navajas para bee
(abeja) y long (largo).
Esta clave no empleaba sustitución de letras, no se basaba en un
algoritmo matemático, ni necesitaba máquinas complejas para encriptar y
descifrar. Cada regimiento, cada batallón, incluía un indio navajo
responsable de las comunicaciones que traducía casi instantáneamente los
mensajes transmitidos.
El código fue vital para el avance de las tropas norteamericanas en
el Pacífico. La historia del código navajo fue llevada al cine en 2002
en la película Código de guerra (Windtalkers), con Nicolas Cage en el
papel del oficial que debía acompañar al indio. Su misión era protegerlo
pero, también, matarlo ante el riesgo de caer prisionero: el código era
más valioso que la vida de un soldado. También se menciona el código
navajo en “Anasazi”, uno de los episodios de los Expedientes X.
EL METODO RSA
Normalmente, la clave usada para encriptar un mensaje es la misma
que se usa para desencriptarlo. Por lo tanto, los participantes de la
comunicación deben acordarla previamente. En las novelas de espionaje
vemos cómo se intercambian libros de claves en encuentros personales o
se anuncian solapadamente en la radio o en avisos clasificados. En
cualquier caso, que la clave tenga que “circular” en algún momento pone
en riesgo la seguridad de la comunicación.
Pero, en 1975, los matemáticos Ronald Rivest, Adi Shamir y Leonard
Adleman crearon un sistema de encriptación completamente nuevo que
asegura la confidencialidad gracias al uso de claves distintas para
encriptar y desencriptar. El sistema se conoce como RSA por las
iniciales de sus creadores.
Por ejemplo, supongamos que un banco necesita que sus clientes se
comuniquen con una sucursal. Por supuesto, los clientes quieren que sus
mensajes sean confidenciales, que nadie que no sea el banco pueda
leerlos. Para eso, el banco dispone de dos claves. Una es pública, la
conoce todo el mundo. El banco la puede anunciar en su publicidad, en su
página web o comunicarla a sus clientes en el momento de abrir la
cuenta. Esta clave la usan los clientes para encriptar sus mensajes. La
otra es privada, sólo la conoce el banco y la usa para desencriptar los
mensajes. Como las claves son distintas, eso asegura la
confidencialidad. Aunque un mensaje sea interceptado por un tercero, que
conoce la clave usada para encriptar (porque es pública), éste no podrá
desencriptarlo porque no tiene la clave privada, que sólo la conoce el
banco. A diferencia de los sistemas tradicionales, los participantes de
la comunicación no necesitan acordar secretamente las claves. El sistema
se compara a veces con un buzón en el que cualquiera puede meter un
mensaje, pero sólo el que tiene la llave puede abrirlo y leer los
mensajes que contiene.
Esta asimetría (claves distintas para encriptar y para desencriptar)
es lo que garantiza el secreto. Sin embargo, el sistema es simétrico en
otro sentido: un mensaje encriptado con la clave pública debe ser
desencriptado con la clave privada. Y, viceversa, un mensaje encriptado
con la clave privada debe ser desencriptado con la clave pública. Y esto
tiene otra ventaja: si el cliente recibe un mensaje que, para leerlo,
debe ser desencriptado con la clave pública, eso indica que fue
encriptado con la clave privada. El mensaje no es secreto porque todos
conocen la clave pública. Pero como la clave privada sólo la conoce el
banco, eso garantiza el origen del mensaje. Si se desea garantizar el
origen del mensaje y, además, su privacidad, se puede usar una doble
encriptación.
El método RSA comienza transformando el mensaje en un número muy
largo. Por ejemplo, se reemplaza la letra A por el número 01, la B por
el 02 y así sucesivamente. Luego se hace la encriptación propiamente
dicha mediante un par de operaciones matemáticas. Estas operaciones no
son complejas en sí mismas pero, como involucran cientos de dígitos, son
imposibles de realizar sin computadora.
Aunque la clave pública y la privada son distintas, eso no significa
que sean cualesquiera. En realidad, las dos claves están directamente
relacionadas y, conociendo la clave pública, es teóricamente posible
calcular la privada. Teóricamente. En la práctica llevaría millones de
millones de años completar el cálculo. Esto se debe a que ambas claves
se relacionan a través de números primos. Las dos se calculan a partir
de un número muy grande (de centenares de dígitos) que es el producto de
sólo dos números primos.
Si tenemos los números primos 47 y 59 es fácil calcular su producto:
2773. Pero, si nos dan el número 2773 y queremos saber qué dos números
lo dan como producto, tenemos que probar con todos los números primos
desde el dos hasta la raíz cuadrada de 2773. Son dieciséis divisiones en
total. Si el número inicial tiene cuarenta dígitos, obtener los primos
que lo forman a razón de un millón de divisiones por segundo podría
tardar más de 60 mil años. Con números de cien o más dígitos, el tiempo
necesario superaría largamente la edad del Universo.
Durante muchos años, la investigación sobre números primos se
consideró la rama más pura de las matemáticas, algo que no tendría
ninguna utilidad práctica. Pero todo llega y ahora vemos cómo la
confidencialidad de nuestras comunicaciones y hasta la seguridad
nacional descansan en los números primos.
Tomado de Diario Página 12 en http://www.pagina12.com.ar/diario/ultimas/index.html