jueves, 1 de noviembre de 2012

[CRIPTOGRAFÍA] Código de Esteganografía

Este es el código tal y como se encuentra dentro de las 3 imagenes que seleccioné, incluye las variables de prueba y variables comentadas que no quité porque cuando me di cuenta ya estaban subidas. Utilizé el bit más bajo para sobreescribir el binario del texto, si el valór ya existe, es pasa por alto. Descargar
Realizé un ejemplo visible para ver los lugares donde se realizan los cambios, simplemente le dije al programa que en lugar de guardar el rgb de la imagen, guarde un color estatico:

La imagen original luce de esta manera:

La imagen modificada luce (internamente) de esta manera:

Los amarillos, rojos, azules y verdes representan los pixeles modificados.

La esquina inferior derecha guarda el ultimo bit escrito, el pixel de diferente color para x y y representa el pixel de fin de lectura, en este caso el amarillo es el ultimo pixel, esa esquina tiene sus coordenadas representadas en bits:




Y este es el código para desencriptar: Descargar
Y las imagenes modificadas fueron la 1, la 3 y la 4 ;)

El resto de imagenes las convertí a png solo para despistar

1 comentario:

  1. Con tu código y tus imágenes:
    ihqu:cripto elisa$ python victor.py victor.png
    1 1
    Traceback (most recent call last):
    File "victor.py", line 68, in
    r,g,b = im.getpixel((xi,yi))
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PIL/Image.py", line 950, in getpixel
    return self.im.getpixel(xy)
    IndexError: image index out of range
    Y ya no estás para explicar cómo hay que correrlo...
    Hubiera sido mejor poner un solo programa que desde los parámetros sepa qué tiene que hacer. Van 9 pts.

    ResponderEliminar