Hackers de hace 1200 años

Manuscrito de Al Kindi. Texto cifrado.

Sir Isaac Newton entendía bien cómo funcionaba el progreso humano y por eso, cuando le preguntaron cómo había conseguido realizar toda la ingente cantidad de descubrimientos que —no siempre con acierto— se le atribuyen, en una carta a su «amigo» Robert Hooke respondió simplemente: «Si he visto más lejos es porque estoy sentado sobre los hombros de gigantes».

Estos gigantes a que se refería Sir Isaac eran, sin duda, hombres de la talla de Copérnico, Galileo o Johannes Kepler; pero, incluso cuando dio esta humilde respuesta, Sir Isaac cabalgaba sobre las espaldas de otro gigante menos conocido, el filósofo Bernardo de Chartrés, quien, alrededor del 1130, ya había dejado escrito que:

«…somos como enanos a los hombros de gigantes. Podemos ver más, y más lejos que ellos, no por la agudeza de nuestra vista ni por la altura de nuestro cuerpo, sino porque somos levantados por su gran altura.»

Y esta cita me viene al pelo porque hoy, a través de un artículo de la revista Forbes, me he enterado de que un investigador de seguridad de Microsoft (Keny Samara) junto con sus colegas Muhammad Naveed (de la Universidad de Illinois) y Charles Wright (de la Portland State University), han demostrado cómo eran capaces de extraer información de las bases de datos de diversos hospitales incluso cuando estas estaban protegidas por los más avanzados sistemas de cifrado.

No les fatigaré con datos técnicos, sólo les diré que, al final, el «abracadabra» que permitía romper la encriptación es un sistema clásico de criptoanálisis que, aunque estudiado hoy en el ámbito de las llamadas «nuevas tecnologías», es conocido desde hace aproximadamente 1200 años gracias a la creatividad de los sabios del califato Abasí que, reunidos en la llamada «Casa de la Sabiduría» (Bayt al-Hikmah), analizaron textos cifrados y establecieron técnicas de criptoanálisis que todavía están en la base de los ataques hacker. El primer director de la biblioteca y el cetro de traducción de la «Casa de la sabiduría» se llamó Abū Yūsuf Ya´qūb ibn Isḥāq al-Kindī, conocido simplemente como Al-Kindi, y a él se atribuye la autoría de los más antiguos documentos que se conservan en materia de criptología. En uno de sus manuscritos sobre la forma de descifrar mensajes cifrados se contienen los fundamentos del que todavía es uno de los métodos básicos de descifrado: el análisis de frecuencia.

Entender los fundamentos de este sistema de descifrado no es difícil, supongamos que usted cifra un texto cuyo original está escrito en español, pues bien, sabiendo la frecuencia con que en español se utilizan las diversas letras (por ejemplo la letra «e» aparece con una frecuencia de 13,68% y la «a» de 12,53%), uno puede suponer que, los caracteres que aparezcan en el texto cifrado con tal frecuencia, han de tratarse de las letras que en castellano aparecen con esa frecuencia dada.

Obviamente los sistemas de cifrado han tratado de eliminar esa debilidad pero, al final, ocurre que bajo todas las sofisticaciones introducidas acabamos recurriendo a la herramienta que Al Kindi nos regaló hace 1200 años y es un manuscrito de Al Kindi el que vemos en la imagen que abre este post: el trabajo de uno de los primeros hackers de la historia y que, junto con trabajos de otros eminentes gigantes musulmanes como el uzbeko Abu Abdallah Muḥammad ibn Mūsā al-Jwārizmī, han hecho posible que enanos como nosotros nos hayamos podido asomar al mundo de las matemáticas, del álgebra, de la criptografía y de todas esas herramientas sin las cuales nuestra «sociedad del conocimiento» sería imposible.

Han pasado 1200 años desde que vivieron gigantes como Al Kindi o Al Waritzmi (el que dio nombre a los algoritmos y al álgebra) y aun seguimos sentados sobres sus hombros, aunque nuestra ignorancia y nuestro orgullo de enanos nos impida darnos cuenta.

Nuestros números son árabes, nuestro dios es judío, nuestro alfabeto es latino… ¿a quiénes llamamos, entonces, «extranjeros»?

¿Vale una imagen más que mil palabras?

Recuerdo que, de niño, era casi un tópico a principio de curso el que algún compañero de clase examinase los libros recién comprados y se quejase de las pocas ilustraciones que tenían. Un libro era «difícil» de estudiar si tenía pocas ilustraciones y las lecciones eran «cortas» si incluían varias imágenes que hiciesen que la cantidad de texto de la lección disminuyera. El debate sobre si una imagen «valía más que mil palabras» estaba inmediatamente servido.

Los matemáticos, en cambio, son gente seria y suelen buscar respuestas rigurosas incluso a preguntas tan, aparentemente, irresolubles. En 1948 Claude Shannon escribió un artículo titulado «A Mathematical Theory of Communication» que, en cierto modo, habría dejado sin sentido muchas de nuestras discusiones infantiles sobre el «valor» de imágenes y palabras.

El artículo de Shannon fue la piedra inaugural de lo que ahora se llama Teoría de la Información, la cual es una rama de la teoría matemática de la probabilidad y la estadística que estudia la información y, por supuesto, la cuantificación de la misma. Gracias a Claude Shannon podemos hoy :-) resolver con facilidad la cuestión de cuanta información hay contenida en una imagen o en mil palabras.

Para poder responder a esa pregunta es preciso, en primer lugar, definir una medida de la información. Démosla pues:

Sea E un suceso que puede presentarse con una probabilidad P(E). Cuando E tiene lugar decimos que hemos recibido

captura-de-pantalla-2015-06-24-a-las-18-43-43

unidades de información.

El nombre de la unidad de medida dependerá de la base del logaritmo, si el logaritmo está en base «e» la unidad de medida se llamará «nat» pero, si está en base dos, entonces estaremos ante nuestro muy conocido amigo el «bit». Así pues, el bit no es unidad de peso ni de capacidad ni de longitud: el bit es una unidad de medida de la información y aprovechándonos de él podemos resolver la cuestión planteada: ¿Qué contiene más información una imagen o mil palabras?.

Consideremos que la imagen a que hacemos referencia es una imagen de televisión en blanco y negro; la misma puede considerarse formada por una estructura de puntos negros, blancos y grises dispuestos en 500 filas y 600 columnas aproximadamente. Si cada uno de esos 300.000 puntos puede adoptar diez tonalidades de gris, el número de posibles imágenes distintas alcanza a 10 elevado a 300.000. Si todas son igualmente probables la cantidad de información contenida en una imagen es, más o menos, 10 elevado a 6 bits.

Veamos ahora cuanta información se contiene en 1000 palabras. Si el hablante tiene un vocabulario de 10.000 palabras (es una suposición) y ha elegido entre ellas 1000 completamente al azar la cantidad de información contenida en ellas es igual a 1,3 por 10 elevado a cuatro bits. Así pues una imagen de televisión en blanco y negro como la expuesta equivale a unas 100 palabras.

El tamaño de los ficheros informáticos ha dejado sin sentido el debate infantil. Solo con mirar el tamaño en bites, kilobites o gigabites de de los ficheros informáticos, ya sean de texto o de video o de cualquier otra cosa, podemos expresar con toda exactitud la cantidad de información contenida en ellos :-). Por eso personas como Martin Varsavsky pueden reflexionar sobre la «ineficiencia» del texto escrito a la hora de transmitir información ya que nos cuesta unas treinta horas leer un libro de pocos megas de información mientras que en hora y media hemos podido ver una película de más de un Giga.

En realidad, me dirían mis compañeros de clase infantil, esa teoría no resuelve la cuestión pues nosotros hablábamos del «valor», no de la «cantidad» de la información… y es verdad, pero esa es otra historia y otro post.