App simple para esteganografía y marcas de agua en fotos e imágenes

La esteganografía es la aplicación de técnicas que nos permiten ocultar mensajes u objetos dentro de otros, llamados portadores, con el objetivo de que no se perciba su existencia. Uno de los usos que podemos darle es como “marca de agua” oculta pero que identifica al propietario de una imagen (aunque no ofrece garantías totales debido a los potenciales ataques que pueden realizarse).

Esto es lo que hace esta pequeña aplicación: por un lado marcar nuestras imágenes y, por otro, poder comprobar las marcas que hayamos introducido. Estas marcas son de texto y podremos ocultarlas, además, cifradas con AES, SHA-512 o HMAC-SHA512. Permite, además, insertar texto o una imagen como marca de agua  clásica, es decir, visible.

El proceso de marca de una imagen (ver figura 1) consiste en:

  1. Configurar el texto, contraseña y método de cifrado para la parte estego y el texto o imagen para la marcar de agua (junto con tamaño, dónde insertarlo, etc)
  2. Cargar la imagen a marcar
  3. Por último, marcar/firmar la imagen.
  4. Si queremos disponer de una copia de la imagen marcada (no cambia la original) debemos descargarla a nuestro disco. Si no lo hacemos, la perderemos con simplemente recargar la página.
  5. Por último, podemos guardar la relación texto, contraseña, método y nombre de la imagen para tener un historial de acciones que podamos consultar (para quien tenga tan mala memoria como yo 😉 ). ¡Y cuidado! Estas acciones se guardan en el almacenamiento interno del navegador (en concreto, Indexed DB), por lo que tendremos una copia en cada ordenador, sistema operativo y navegador que utilicemos para firmar imágenes.

Figura 1.- Proceso de firma de una imagen

El proceso de comprobación de firma (ver figura 2) se corresponde con la opción Decode del menú superior y es:

  1. Configurar el texto, contraseña y método de cifrado
  2. Cargar la imagen a marcar
  3. Chequear si el texto, con el cifrado introducido, está presente en la imagen.

Figura 2.- Proceso de comprobación de marca de una imagen

Para el proceso de esteganografía he usado esta librería que oculta la marca proporcionada en el canal alfa de la imagen dada. Este algoritmo aumenta (demasiado para mi gusto) el tamaño del fichero resultante, no funciona con imágenes con fondos transparentes y si se modifica la imagen (recortes, etc) se “pierde” la marca. Sería una buena idea sustituirlo por otro mejor (¿voluntarios/as? Yo dudo mucho que lo haga).

Por último, para seguir probando cosas con Angular (este era mi objetivo cuando empecé con esta app), añadí botones para publicar en redes sociales, aquellas que proporcionan un API rest para poder escribir, es decir, Twitter, Facebook, Pinterest y Flickr. Instagram no debido a que no permite (o permitía, no sé si ahora lo hacen) escribir.

La he probado tanto para GNU/Linux como Windows 10 con Firefox 45 y Chrome 52. También la he probado en mi móvil (Nexus 5), tomando una foto y, salvo publicar en RRSS (por tamaño de la foto) sí que ha funcionado el marcar/comprobar con estego y descargar la foto marcada.

¡Espero que os sea útil!

PD: Como es muy mejorable, he dejado los fuentes en https://github.com/jagilma

Guardar

Guardar


Thepiratebay.se, bloqueo y técnicas para evadirlo

Creo que casi todos conocemos ya que un juez ha ordenado bloquear el acceso a The piratebay desde España. Esta orden afecta a los proveedores de servicio españoles que suelen cumplirlo mediante:

  • Las resoluciones DNS
  • Inspección de paquetes

(El que no usen un filtro contra la IP es porque esa IP puede estar asignada para más de un sitio web y estos no deberían “pagar” por el hecho denunciado si no son los responsables)

Si se aplica el bloqueo en el DNS, con indicarle a nuestros sistemas que usen otros que no se hayan visto afectados por la orden sobra para que podamos seguir accediendo a dicho sitio. Por ejemplo, podemos usar openDNS o los de Google (8.8.8.8).

Si se realiza inspección de paquetes, con conectarnos mediante HTTPS sobra para acceder al sitio. En la inspección de paquetes lo que se busca es información relevante para realizar la tarea encomendada (normalmente, se busca en el nivel de aplicación). Para este caso, lo normal es que se busque la cabecera host del protocolo HTTP ya que se encarga de identificar el sitio al que nos queremos conectar. Si usamos HTTPS esta información va cifrada y “no la encontrará el analizador”.

Si se usaran combinadas las 2 técnicas, tendríamos que combinar las 2 “soluciones”. No es necesario ni VPNs ni TOR como se menciona en este artículo sobre cómo saltarse el bloqueo, aunque, evidentemente, son buenas opciones que, además, nos dan otras ventajas añadidas a simplemente conectarnos a ThepirateBay.se

¡Espero que os sea útil!

PD: No soy usuario de este sitio, pero he probado desde mi PC, con Vodafone como ISP, y  funciona perfectamente  la conexión con HTTPS y no con HTTP.

PD2: Conseguir el efecto que pretende la orden del juez es muy complicado tal y como funciona y se organiza Internet

 

 


2002: Ataque al DNS

Cuando vimos en clase el tema del DNS, os comenté un ataque que hubo sobre los servidores raíz que apunto estuvo de “dejarnos sin Internet” En Senda Oscura podéis encontrar un cronología de los hechos.

PD: A los largo de la próxima semana, publicaremos el enunciado del proyecto para la convocatoria de Julio. Estad atentos los que no lo tengáis aprobado.


Lista de centrales y cobertura FTTH Fibra óptica hasta el hogar en 2008

He leído una gran noticia en zonaADSL. Nos adaptamos al “primer mundo”. Telefónica está desplegando fibra óptica para poder ofrecer conexiones a Internet de 30Mb de bajada. Como comentan en zonaADSL el despliegue está basado en las tecnologías de fibra hasta el edificio (FTTN/B) y fibra hasta el hogar (FTTH), aunque en función de la zona también emplearán arquitecturas basadas en VDSL2 que utilizan también par de cobre.


Las cookies nos permiten ofrecer nuestros servicios. Al utilizar nuestros servicios, aceptas el uso que hacemos de las cookies. Más información.