El proyecto fue desarrollado en C y se centra en la implementacion de un programa para ocultar mensajes dentro de archivos bmp y luego extraerlos, utilizando esteganografia. Este utiliza los algoritmos LSB1, LSB4 y LSBI.
Adicionalmente, únicamente con el motivo de poder procesar resultados de comandos de linux de manera sencilla se incluyeron dentro de la carpeta analysis una serie de archivos Bash y Python. Los archivos de Python sirven para obtener promedios y desvíos estándar de la salida de los archivos bash.
- C
- gcc
- openssl
Para compilar el programa, posicionado en el directorio principal del proyecto, ejecutar:
$ make clean
$ make allEsto generara el ejecutable stegobmp, el cual se usa para ocultrar o extraer informacion como se menciona en la seccion Descripcion.
Pueden verse los parametros del programa ejecutando el comando:
$ ./stegobmp -hSi por ejemplo buscase ocultar el archivo hide.txt dentro del archivo portador carrier.bmp lo cual genera el archivo modified.bmp, todo esto utilizando el algoritmo LSB1, se puede utilizar el comando:
$ ./stegobmp --embed --in hide.txt -p carrier.bmp --out modified.bmp --steg LSB1Si ahora buscase ocultar el archivo hide.txt dentro del archivo portador carrier.bmp lo cual genera el archivo modified.bmp, pero utilizando LSB4 con encripcion AES-128 en modo CBC con password "secreto", se puede utilizar el comando:
$ ./stegobmp --embed --in hide.txt -p carrier.bmp --out modified.bmp --steg LSB4 -a aes128 -m cbc --pass secretoFinalmente si buscase extraer el archivo oculto en modified.bmp podria hacerlo con el comando:
$ ./stegobmp --extract -p modified.bmp --out hide --steg LSB4 -a aes128 -m cbc --pass secreto