blog
criptografía para todos 1: un poco de historia, ¡Dyh Fhvdu!
por David, may.20, 2011 | criptografía
‘
INDICE:
0. Una introducción al hilo del 15M 1. un poco de historia, ¡Dyh Fhvdu! 2. cuadernos de clave única
Disclaimer: vamos a comenzar con un pequeño párrafo de convenciones: igual que cuando se habla de Relatividad todos los ejemplos suelen hacerse con trenes (por razones históricas: cuando Einstein desarrolló la Relatividad, el medio de transporte más rápido y común era el tren), es común en criptografía dar nombres a los personajes de los ejemplos. En lugar de llamarles A, B, C y D, por ejemplo, se les llama Alicia, Bernardo, Clara y Diego (u otros nombres que empiecen por esas letras). Dicho eso, la criptografía nace por la necesidad que tiene Alicia de hacerle saber algo a Bernardo enviándole el mensaje, pero teme que Clara pueda interceptarlo por el camino y leerlo, y no quiere que eso suceda. Quizá Clara trabaje para la STASI o sea muy cotilla, es lo de menos ahora. Otra convención: vamos a ignorar la letra Ñ. Se puede incluir sin que cambie mucho lo que sigue, pero me complica la vida en el ejemplo final, y además normalmente se la suele ignorar por razones históricas: casi todos los criptosistemas clásicos fueron creados y usados por gente que no usaba nuestra letra más pizpireta, así que las más de las veces, cuando se exponen ejemplos de ese tipo –como voy a hacer yo– se la suele reemplazar por una N o, si se quiere, por NH o algo por el estilo.
Un buen día Clara, que trabaja administradora de sistemas de la empresa en la que trabaja Bernardo, decide leer los correos de este, por que se aburre, y además porque es una mujer un tanto enfermiza cuyos flirteos Bernardo ignora con toda la fuerza que le da la repulsión. Aunque a día de hoy eso de leer correos ajenos es bastante ilegal, no iba a ser la primera administradora de sistemas que conozco que se entretiene leyendo correos ajenos (apuntemos eso como “razón cotidiana para encriptar nuestros correos”). Bernardo, que sospecha que Clara está leyendo lo que escribe y recibe porque Clara es, además, tan torpe como aquel administrador de sistemas que conocí, ha hablado con Alicia del tema y han decidido cifrar de una manera rudimentaria lo que se escriben, de modo que el texto que lee Clara es este:
XZXJMXAXBPQXKLZEBBKPLI
Clara frunce el ceño, contrariada, y dedica unos segundos a la pataleta. Pero luego se pone a mirar todas esas letras raras, pensando qué puede sacar en claro. Observa que de las 12 letras diferentes que se usan en ese mensaje de 22 letras de largo hay unas que salen más que otras: la X sale 4 veces, la B sale 3, y luego el resto de letras salen 2 veces o no se repiten.
Clara se ha fijado, además, en que el español, que es su idioma y en el que se comunican Alicia y Bernardo, hay letras que utilizamos más que otras: por ejemplo, en mi entrada anterior, que tiene 6313 letras (quitando símbolos y eñes, que cuento como enes), hay letras que se repiten más que otras. Esto es una característica de nuestro idioma: hay más letras que usan la letra e que palabras que usan la W, por ejemplo, de manera que en mi correo anterior una de cada cuatro letras es una E (el 13’79% de las veces) o una A (11’27%). El 50% de las letras son Es, As, Oes, Eses y Enes.
Así pues Clara piensa que probablemente la X y la B sean dos de esas letras comunes (a no ser que Alicia esté enumerando una lista de la compra para una fiesta diciendo cosas como WHISKYVODKAKASLIMON). Para convertir la X en una E, debe retroceder 19 letras, o lo que es lo mismo –solo que mejor– avanzar 7 dándole la vuelta (es decir, asumiendo que después de la Z vuelve a ir la A). Entonces debe reemplazar la Z por una G, la J por una Q, etc. Realiza esa operación con todas las letras del mensaje y obtiene el siguiente texto…
EGEQTEHEIWXERSGLIIRWSP
…que no tiene mucho sentido. Decide probar con la A, avanzando 3 letras cada letra del mensaje original, de manera que la Z se convierte en una C, la J en una M, y el texto completo queda así:
ACAMPADAESTANOCHEENSOL
Y Clara ha descifrado el mensaje: Alicia y Bernardo están quedando para ir esta noche a la acampada de Sol. ¡El muy cerdo no sólo no le hace caso, encima pretende hacer que se tambaleen los incipientes cimientos de la sociedad totalitaria que se avecina y en la que Clara, intuye, se sentirá como pez en el agua! Clara borra sutilmente los archivos del proyecto en el que trabaja Bernardo y se va a su casa contenta y satisfecha pensando que Bernardo será despedido y ya sí que tendrá un buen motivo para dormir al raso cuando no pueda pagar el alquiler del estudio en el que vive.
El criptosistema que han empleado Alicia y Bernardo en este ejemplo se llama César, porque era el que utilizaban los generales romanos para enviarse mensajes, y no es nada robusto: al codificar de la misma manera todas las letras y aún no teniendo en cuenta que mediante el análisis estadístico de las letras repetidas se restringen bastante las posibles soluciones, sólo hay 25 posibles mensajes candidatos a ser el original. Clara podría haberse limitado a hacerse un Excel que fuera cambiando cada letra por la siguiente y, de los 25 mensajes resultantes, leer el que tuviera sentido. ¡Qué diablos!, voy a hacerlo yo en un momentito.
(1 minuto después)… Ya: Haciendo una tablita que nos deje convertir letras en números y números en letras, y haciendo una serie de filas que sumen un numero a otro y le resten al total 26 si nos hemos pasado de 26, estos son los 25 mensajes posibles que podrían haber sido cifrados como el mensaje que ha interceptado Clara:
YAYKNYBYCQRYLMAFCCLQMJ
ZBZLOZCZDRSZMNBGDDMRNK
ACAMPADAESTANOCHEENSOL
BDBNQBEBFTUBOPDIFFOTPM
CECORCFCGUVCPQEJGGPUQN
DFDPSDGDHVWDQRFKHHQVRO
EGEQTEHEIWXERSGLIIRWSP
FHFRUFIFJXYFSTHMJJSXTQ
GIGSVGJGKYZGTUINKKTYUR
HJHTWHKHLZAHUVJOLLUZVS
IKIUXILIMABIVWKPMMVAWT
JLJVYJMJNBCJWXLQNNWBXU
KMKWZKNKOCDKXYMROOXCYV
LNLXALOLPDELYZNSPPYDZW
MOMYBMPMQEFMZAOTQQZEAX
NPNZCNQNRFGNABPURRAFBY
OQOADOROSGHOBCQVSSBGCZ
PRPBEPSPTHIPCDRWTTCHDA
QSQCFQTQUIJQDESXUUDIEB
RTRDGRURVJKREFTYVVEJFC
SUSEHSVSWKLSFGUZWWFKGD
TVTFITWTXLMTGHVAXXGLHE
UWUGJUXUYMNUHIWBYYHMIF
VXVHKVYVZNOVIJXCZZINJG
WYWILWZWAOPWJKYDAAJOKH
Y ahí se termina porque el siguiente vuelve a ser XZXJMXAXBPQXKLZEBBKPLI.
No creo que haga falta decir cuál es la única línea de toda la lista que tiene sentido, ¿verdad?
La evolución natural de ese criptosistema consiste en codificar cada letra de manera diferente. Por ejemplo podríamos dividirlo en grupos de 4 letras, y hacer avanzar a la primera letra de cada grupo 8 posiciones, a la segunda 15, a la tercera 12 y a la cuarta 1 (y como las letras número 8, 15, 12 son la H, la O, la L y la A podríamos decir que el mensaje tiene una clave, “HOLA”, que se suma a las letras de manera que A+A=B –es decir, la primera letra mas uno es la segunda letra–, A+B=C –la primera mas la segunda es la tercera–, M+R=E –la 13 mas la 18 es la 31, y como sólo hay 26 letras volveríamos a empezar por el principio de manera que 13+18=31-26=5–, etc. Esto tiene la ventaja de complicar el análisis de Clara, porque para cada mensaje cifrado habría 25x25x25x25 = 390.625 posibles mensajes originales, de los que quizá más de uno tuviera sentido. Pero mediante el análisis estadístico y suficiente material para analizar (o bien mensajes más largos o bien varios mensajes) Clara podrá descubrir que hay letras que son más frecuentes separadas una cierta distancia y deducir la longitud de la clave, y luego analizando el mensaje por cada letra según su posición deducir la contraseña y descifrar el mensaje. No voy a poner un ejemplo de eso que ya me estoy eternizando bastante, pero si se tiene tiempo y suficiente información es algo bastante sencillo una vez se le pilla el truco y por hoy ya he escrito bastante, así que sigo otro día.
Eso sí, pongo deberes: el primer ejercicio es descifrar qué quieren decir las dos últimas palabras del título de esta entrada. El segundo, hacer comentarios cifrados mediante el criptosistema césar.
Como no tengo ninguna esperanza de que nadie se lea este post entero, ahora que hemos dejado el romanticismo para pasar a la casquería, y tengo esperanzas negativas de que nadie se ponga a hacer esos ejercicios, ofrezo premios. ¡Fotos del cementerio de San Justo para quien los haga! Ya sé que son lúgubres, pero es lo primero que se me ocurre así que tenga a mano, que envié unas cuantas a un concurso y me sobró un puñadito.
criptografía para todos, 0: una introducción al hilo del 15M
por David, may.18, 2011 | criptografía, día a día
‘
INDICE:
0. Una introducción al hilo del 15M 1. un poco de historia, ¡Dyh Fhvdu! 2. cuadernos de clave única
Disclaimer: voy a escribir una serie de posts hablando de criptografía, pero me vais a perdonar que de la lata con una no-tan-pequeña introducción, contando cómo veo yo nuestro entorno, ¿vale?, aunque sólo sea por ponernos en contexto, por saber qué motivo tenemos que tener para saber algo de un tema que, las más de las veces, sólo hace pensar en la máquina Enigma y en películas de flamantes espías. Empiezo con eso.
A veces siento (y lo que sigue es una de las razones del cambio de blog) que le debemos una disculpa a quienes están por venir, a nuestros descendientes, a los que les toque seguir en este mundo cuando nosotros se lo dejemos, presumiblemente hecho unos zorros, en el mejor de los casos como está, y en el peor, bueno, siguiendo la tendencia.
Así que pequeños seres aún inexistentes o demasiado pequeños como para enteraros de nada: perdón, mil perdones. Perdón por este mundo superpoblado y esquilmado, perdón por las utopías muertas, perdón por haber creado corporaciones que nos esclavizaron, perdón por los retrocesos sociales y perdón por esa manifiesta inconsciencia que deduciréis cuando miréis los libros de historia (perdón si en ellos mentimos) y veáis la caída libre y nos imaginéis a todos tocando la lira mientras Roma arde.
En realidad y hasta la redacción de estas líneas, poco pudimos hacer.
Nuestros padres, que salieron de una dictadura, abrazaron entusiasmados una democracia que nacía con un lastre: favorece a los partidos que recogen pocos votos, pero muy localizados, y a los que acaparan más votos. Supongo que todos los partidos lo firmaron teniendo en cuenta que figurarían en uno de esos asientos de preferencia, porque por ejemplo no imagino que los comunistas (entonces, finales de los 80 y principios de los 90, aún en plena Guerra Fría, teníamos comunistas por aquí) pudieran imaginar que la gente, sin más, se iba a olvidar de ellos. Una vez pasada la decantación de partidos de las primeras décadas, el primer filtrado de los que suben y los que bajan, la cosa se ha traducido en que hay dos partidos, el PP y el PSOE, y que votar a cualquier otro es brindar al sol y tirar el voto, y es imposible que ninguno de esos dos partidos se descalabren, porque en este país siempre hay diez u once millones de votantes convencidos de cada uno de ellos. Y con eso les vale para gobernar un país de 47 millones de habitantes.
Naturalmente, el pueblo no elige ni a los candidatos de los partidos ni a los miembros de sus listas: en el PP se elige a dedo, y en PSOE de vez en cuando se hacen unas primarias internas. En la práctica esto se traduce en una versión dual del unipartidismo en el cual un partido gobierna y el otro espera calentando banquillo a que suceda un desastre que desanime a los votantes del otro o a que la inercia desgaste al que está al mando.
Y estar en la cima del poder, o en la cumbre anexa que está justo debajo, acomoda, aburguesa y atrae a las aves de rapiña. Antes estas aves, los corruptos, eran un estigma y un escándalo. Ahora los dos partidos mayoritarios ni siquiera se molestan en esconderlas demasiado. Eso cuando no se las aplaude.
Mientras, tenemos un récord histórico de gente sin trabajo. No es que toda la culpa sea de los que gobiernan o de los otros, no: la culpa es de los bancos, que hace un año o dos nos llevaron a una crisis monumental, por pura avaricia. Investidos del poder que es en realidad la sangre del sistema (es decir, el dinero), los bancos se han hecho virtualmente dueños o parásitos privilegiados de todo occidente hasta tal punto que cuando se hunden ellos les siguen los gobiernos, y para evitar que se hundan los gobiernos han llegado a darles montañas de dinero que, evidentemente, han acogido la mar de contentos antes de seguir a lo suyo, que sigue siendo la avaricia.
Casi todo el mundo está atado y bien atado por un banco: los precios de las casas subieron constantemente durante todo lo que llevamos de democracia, aprovechando así el partido gobernante de turno para hacer dinero con la construcción, y cuando no quedó dinero con el que comprar casas y empezó a faltar dinero para pagarlas, nos hundimos. Y todos tenemos el deber de, durante décadas, pagarle un buen dinero al banco por la casa en la que vivimos.
En fin: que la situación es bastante deprimente, y entre que siguiendo los canales diseñados por el sistema para que el ciudadano actúe (que son las elecciones) no se puede conseguir más que, como dijo Julio Anguita (un político muy comunista y ya retirado) por la tele hace poco, el amo nos de permiso para elegir capataz, y que por otro lado los bancos nos tienen puesto a todos un collar, y entre que por otro lado tampoco quedan sistemas de gobierno que conozcamos y que no se hayan probado desastrosos, la situación no es solo deprimente sino que además no se ve ningún horizonte hacia el que caminar.
Pero a todo esto ha sucedido este año una cosa espeluznante para cualquier gobierno actual y maravillosa: los países árabes, que estaban bastante peor que nosotros (torturados, por ejemplo, y pasándolas bastante más putas), se han hartado. Y mediante las herramientas de comunicación que da Internet han empezado a mostrar su rebeldía y a coordinarla, y han caído ya unos cuantos gobiernos, al otro lado del Mediterráeo, que no dejan de ser vecinos. Y en Libia el dictador más risible pero aún así cruel que ha visto el mundo, Gadafi, está haciéndole la Guerra Civil a su pueblo.
Yo, cuando veía por la televisión las imágenes de los árabes saliendo a la calle a decir que estaban hartos y que así no pensaban seguir (y tiene su mérito, porque a veces opinaban entre disparos y tanques), la verdad, pensaba en nuestra maldita ley electoral y en nuestros políticos ineptos y sentía envidia. Y pensaba que ojalá aquí fuésemos capaces de ser como nuestros vecinos y salir a la calle a hacerle un corte de mangas a los políticos.
Pero en eso han llegado unas elecciones municipales, que son el domingo que viene, y resulta que un buen montón de gente, mediante las mismas herramientas de comunicación que ofrece internet y que usaron los árabes (y que usamos, a diario, para perder el tiempo y entretenernos), han quedado para salir juntos a la calle a decir lo mismo que pensaba yo: este fin de semana pasado hubo manifestaciones en 50 ciudades de España, y aunque al principio los medios de comunicación les hicieron bastante poco caso se ha conseguido una cosa que yo creo que debe ser histórica: que por primera vez desde que tengo memoria, en una campaña electoral se está hablando de la gente.
No hay mucho mérito en adivinar qué sucederá el domingo (ganará el PP en la mayoría de lugares), ni siquiera lo hay en saber qué pasará cuando lleguen, el año que viene, las elecciones generales (ganará el PP por mayoría): el mérito está en haberles logrado dar a entender a los políticos, considerados desde hace ya mucho en las encuestas como el mayor problema que vemos los españoles en nuestro país, que mucha gente está hasta las narices de ellos, de sus tejemanejes, de las docenas de implicados en casos de corrupción que pueblan sus listas electorales. De que hayan consentido que nos posean los bancos, de que mantengan una ley electoral injusta y corporativa que beneficia siempre a los mismos.
El mérito que yo le veo a todo esto es que me siento bastante menos solo. Servir lo que se dice servir es difícil que sirva para mucho: pero basta mirar al otro lado del mar para ver que aun enfrentados a poderes mucho mas opresivos y peligrosos que los nuestros, la gente sigue teniendo ese poder de derribar gobiernos que tanto se han esforzado por estirpar.
¿Y por qué esta inmensa parrafada se titula “criptografía para todos”?
Pues por el factor común de ambas situaciones, la nuestra y la de los países árabes: que las protestas se han podido organizar porque la gente ha sido libre de comunicarse entre ellos.
¿Y qué pasaría, me pregunto yo, si quisieran quitarnos ese poder, y cuánto va a tardar alguien con poder en suspirar por esa idea?
Pues que tendremos que aprender cómo evitarlo.
esta mañana
por David, may.14, 2011 | día a día, el mecanismo del mundo
‘
Alguien se ha despertado con la alarma de cristales rotos, su sueño cancelado por ese estrépito anormal e hiriente. Esta mañana alguien dormía y cuando se ha levantado, asustado, ha descubierto el suelo bajo su ventana erizado de fragmentos de vídrio, y quizá más lejos la botella agresora, que probablemente ni se haya roto (las botellas son resistentes).
Esta mañana Aroa paseaba a Valentín, bostezante ella y eufórico él, cuando ha visto a los dos hombres que pasaban junto a la bolsa de basura rota, y ha visto cómo uno se agachaba, agarraba la botella por el cuello y la lanzaba contra una ventana. Luego la han mirado a ella y a otra mujer que pasaba por allí, han dado media vuelta y se han marchado.
Aroa y la otra transeúnte se han mirado, no ya no sabiendo qué hacer, sino, peor, sabiendo la inutilidad de todo acto. Sabiendo que esos tipos iban a estar en el metro, rumbo a no sé dónde, antes de que se presentase el primer policía, sabiendo que no podían retener al par de cretinos. Sabiendo que no había nada que hacer.
Aroa ha terminado su paseo y ha vuelto a casa con unos churros para mi desayuno.
Después ha hecho café, me ha despertado y me ha contado lo de la ventana.
He reconocido que los churros estaban muy ricos, en voz alta.
Sin palabras, hemos coincidido en que el mundo sería un lugar definitivamente más hermoso sin toda esa gente que lo afea. Sin toda esa gente a la que la sangre sólo le late cuando joden a alguien desde la cueva del anonimato, desde la penumbra de la impunidad.
Esta mañana inauguro, también, este blog.
Edit: Aroa también escribe del incidente. E incluye foto de guapo conspirador o asesino.