David Buchanan es un desarrollador ubicado en el Reino Unido que, basta con echar un vistazo al diseño de su página personal para darse cuenta de que es bastante geek. Hoy lo traemos a esta sección por una de sus últimas frikadas, que es esta insignificante imagen que te mostramos a continuación:
Ahí donde la ves, esta imagen de tan solo 60x60 píxeles de tamaño contiene las obras completas de William Shakespeare sacadas desde la página del Proyecto Gutemberg 🤯
¿Dónde está el truco? Pues el "truco" está en que los archivos JPEG usan el mismo tipo de compresión que utiliza el formato ZIP, RAR y otros similares, y trucando el archivo de una determinada manera podemos modificarlo para que además de la imagen pueda contener cualquier otra cosa. En este caso lo que contiene la imagen anterior es otro archivo comprimido en formato RAR multi-volumen que es el que contiene a su vez un único archivo .html con las obras completas del dramaturgo inglés.
El formato incluso sobrevive al proceso de conversión en "vista previa" (thumbnail) que tiene Twitter, así que David publicó un twit con esta imagen e Internet enloqueció. Hasta lo sacaron en Hacker News, ahí es nada. No solo eso, sino que publicó otro con una pequeña imagen, en este caso de 256x64 de tamaño, que contiene el código fuente en Python para poder crear este tipo de imágenes con "bicho", con un archivo .py con el código en Python y también un PDF con el mismo contenido. La imagen con el código fuente es esta:
Por si quieres descargarlo y probarlo, en este vídeo te enseño cómo es el proceso. Puedes bajarlas del enlace de Twitter como hago yo en el vídeo, o directamente desde las imágenes en este artículo, pues son las mismas. Para abrir los archivos RAR necesitarás un programa específico. Yo utilizo 7-ZIP ya que es gratuito, Open Source y soporta todos los formatos de compresión importantes, incluido RAR. Ahí va:
De todos modos... ¿es la cosa para tanto?...
Cómo ocultar archivos dentro de una imagen solo con lo que tienes a mano: La película
Aunque es una buena frikada y es encomiable que David haya escrito ese código en Python, además de la manera de hacerlo público, en realidad no hace falta complicarse tanto la vida para conseguirlo. Es más, puedes hacerlo tú mismo sin tener que instalar nada y mucho menos programar. Tan solo necesitas un programa de compresión como el que viene con el sistema operativo (aunque yo recomiendo 7-Zip), y unos 30 segundos.
Te lo demuestro en el siguiente vídeo:
Por cierto, ¿le has echado un ojo por casualidad a la imagen de cabecera de este artículo? Nunca se sabe qué cosas pueden estar ocultas en cualquier sitio... 😈