Ir a contenido

De ofuscación de código, código que se imprime a si mismo y tatuajes


fotografías

Hace aproximadamente un año, le comentaba a mi compañero y amigo Juan (Ingeniero Informático ya, no como yo, que soy un vago) que había visto un tipo que tenía tatuado un código fuente (un programa) que se imprimía a sí mismo.
En principio me costó entender el concepto, pero luego ya lo entendí. Un programa que se imprime a sí mismo, pero sin leer el fichero fuente. Es de estos problemas que parece trivial pero que cuesta un cojón encontrar una solución. Para buscarle las vueltas también se puede buscar el que tengan menor código y más allá que sea código ofuscado.

Pues resulta que, como no, a él se le había ocurrido también hacer lo propio. Y allí estuvimos un rato, en el laboratorio de la facultad revisando el código que escribió porque no terminó de funcionar por alguna chorrada (o algo así recuerdo). Lo hicimos funcionar, no era ni ofuscado ni poco código, pero es fácil perderte leyendo el código. No lo publico porque vete tú a saber ande andará ya.
Cualquier buscador seguro que tiene dicha información a tiro de piedra. Es

Mi mente me engañaba entonces (como muchas otras ocasiones), no era ese el tema exactamente el de los tatuajes.
Creo que era el siguiente código, que su autor había presentado en el concurso (sí, lo hay) de ofuscación de código en lenguaje C.

int i;main(){for(;i["]<i;++i){–i;}”];read(’-'-’-',i+++”hell\
o, world!\n”,’/'/’/'));}read(j,i,p){write(j/p+p,i—j,i/i);}

La segunda línea comenzando por un o,world, no es casual.

El tatuado nos desvela en su página para que sirve ese código y cómo realizar la deducción hasta llegar a un resultado un poco más claro.

int i;
main()
{
for (; *(”hello, world!\n” + i); write(1, “hello, world!\n” + i++, 1));
}

En resumidas cuentas esto imprime “hello, world!” por la pantalla.

Si es que, en el momento que eres capaz de ponerte a pensar esto, ya sabes que tu cabeza no rige muy bien (yo lo intento asumir). Pero no te haces un tatuaje.

Lamentablemente, en el momento de escribir esta entrada, las fotos del tatuaje no están disponibles en su página. Pero sí he encontrado alguna desde los buscadores.
Voilá.

tattoo source code-tatuaje codigo fuente-thomasscovell.com.png

tattoo source code-tatuaje codigo fuente-thomasscovell.com.png

Por cierto, el código tiene copyright y el autor dice se mantiene en el economato (anonimato).

Etiquetas: , , , , , , , , , ,