David Buchanan, ingeniero, ha creado una imagen que puede verse de dos formas diferentes dependiendo del dispositivo que la reproduzca. Los usuarios que tengan un equipo Apple o utilicen aplicaciones desarrolladas por la compañía de Cupertino para ver la imagen, como Safari, podrán leer la frase "Hello Apple". Aquellos con un PC Windows o un móvil Android leerán, en cambio, "Hello World".
Lo curioso de este invento es que el archivo es exactamente el mismo: una imagen llamada "a.png". La diferencia, en este caso, es que cada dispositivo la interpreta de forma diferente.
"Encontré esto mientras escribía mi propio decodificador PNG multihilo. Mientras reflexionaba sobre mi diseño, me di cuenta de que tenía un error de implementación explotable. Después de enterarme de que Apple tiene su propia implementación de PNG decodables en paralelo, ¡me di cuenta de que habían cometido exactamente el mismo error!", asegura.
Imagen interpretada por Apple (izquierda). Imagen vista desde un PC Windows (derecha).
Buchanan ofrece una respuesta mas técnica en su perfil de GitHub. Según el ingeniero, este tipo de archivos se pueden crear cuando el código se interpreta de esta manera: "¡descomprimir(a + b)! = descomprimir(a) + descomprimir(b)". Dependiendo de si un decodificador paralelo o no paralelo la decodifica, la imagen puede tener dos interpretaciones posibles.
¿Es un Mac de Apple o un ordenador IBM? Así puedes ver las diferencias
Si tienes un dispositivo Apple es extremadamente sencillo —y realmente curioso— ver cómo la imagen cambia completamente. Para ello, pulsa sobre este enlace desde el navegador de Safari y se abrirá la imagen con la frase "Hello Apple". Después, copia el mismo link en la barra de navegación de Chrome. Verás que el formato del enlace no se modifica, pero en cambio, aparece la frase "Hello World".
A la izquierda, imagen vista desde Safari. Derecha: misma imagen vista desde Google Chrome.
El creador de esta imagen también ha diseñado otro archivo a color que es, incluso, más curioso que el primero. Se trata de un clásico ordenador de IBM que se convierte en un Mac en aquellos dispositivos o aplicaciones de Apple. Buchanan, además, ha compartido una herramienta denominada Empaquetador Ambiguo-png, para que cualquier usuario (con algunos conocimientos, eso sí), pueda crear un archivo PNG interpretable de dos formas diferentes dependiendo del fabricante.