Esteganografía y seguimiento de imágenes

6

Estamos ejecutando una biblioteca de medios de prensa en línea. En este sitio, muchas marcas están cargando imágenes y rastrean las descargas de los usuarios de la prensa y las vistas por imagen. Pero algunas marcas ahora quieren agregar un código único en la imagen para que puedan rastrear sus propias imágenes.

Probamos algunas herramientas de esteganografía:

  1. enlace ( support JPG )
  2. enlace ( PNG de soporte )

Ambos funcionan bien, pero el problema es que el código seguro desapareció después del cambio de tamaño o el recorte de la imagen.

Una forma simple sería la marca de agua, pero no queremos molestar a las imágenes, porque las imágenes se están utilizando en la impresión con prensa.

¿Hay alguna manera de poner un código seguro en formato de JPG y hacer un seguimiento de ese código después de cambiar el tamaño o recortar esa imagen?

Actualizar

Nuestras marcas desean publicarlas como imagen web (versión light), por lo que los usuarios de la prensa pueden usar imágenes en blogs y foros.

Nos dirigiremos al sitio del blog / foro de prensa desde el motor del rastreador (~ 4500 blogs) y comprobaremos si existe nuestra imagen en estos blogs.

    
pregunta Girish 26.03.2015 - 14:53
fuente

3 respuestas

5

Puedes agregar información a las imágenes JPEG de dos maneras:

  • agrega información a partir de los datos de imagen, es decir, los encabezados JPEG
  • agrega información en los datos de la imagen, es decir, que modifica la imagen

La primera técnica se puede omitir fácilmente simplemente eliminando los datos relevantes del encabezado.

La segunda técnica se puede dividir en:

  • marca de agua
  • Esteganografía

La esteganografía se utiliza cuando desea distribuir información en imágenes y desea permanecer lo más oculto posible. No dice que está introduciendo información en las imágenes y que intenta por todos los medios minimizar su impacto en las estadísticas de la imagen.

La marca de agua se usa principalmente para propósitos de DRM . Desea colocar información en la imagen y asegurarse de que se mantiene cuando se realizan modificaciones Hecho a esta imagen (se llama una marca de agua robusta). La robustez generalmente viene al precio de la alteración de la imagen (podemos decir degradación aquí), no hay una manera real de lograr una marca de agua robusta sin "perturbar" la imagen como usted lo dice. Existen muchas, muchas técnicas de marca de agua (que no son tema para esta pregunta) con diferentes tipos de robustez (recorte y cambio de tamaño incluidos) con diferente impacto en la calidad. Deberías preguntar a google scholar sobre eso.

Probablemente sea mejor que tengas dos copias de la imagen, una para la visualización en línea (con marca de agua) y otra para la impresión (sin marca de agua).

Editar: como todavía no estás convencido, aquí hay un enlace a los artículos relevantes:

deberían proporcionarle una buena visión general del estado de las marcas de agua y sus propiedades y posibles ataques.

Para más información, consulte en: enlace

    
respondido por el M'vy 26.03.2015 - 15:04
fuente
1

Puede obtener un buen kilometraje simplemente al agregar esta información como JPEG datos EXIF , que sobrevivirá a las manipulaciones de imagen más modernas ... pero es fácilmente eliminado por alguien que quiere eliminarlo. (Un inconveniente: PNG, GIF y JPEG 2000 no son compatibles con EXIF. Consulte mi actualización a continuación para XMP, que no tiene ese problema).

Solo para reiterar, los datos EXIF están bastante bien organizados, se ven fácilmente y son fáciles de eliminar (o modificar), por lo que no es una solución de seguridad , pero no creo que lo haga. encuentre una solución de seguridad viable sin marcar con marca de agua la imagen.

Si no desea que la gente vea el contenido, cifrelo o use un código que requiera buscar en su base de datos. Entonces, todo lo que alguien puede hacer es eliminarlo o modificarlo (lo destruirá).

Por supuesto, si una base de datos está en la mesa, puede guardar una versión en escala de grises de 32x32 píxeles de la imagen y usarla como un hash (se sorprendería de cuán pocos collisions obtienes). Esto sobrevivirá el cambio de tamaño y la corrección de color menor, pero no sobrevivirá el recorte agresivo u otras manipulaciones.

EXIF y la base de datos no se excluyen mutuamente; Podrías hacer ambas cosas.

Actualización: escribí esto sobre EXIF, que se entiende y admite de forma decente, pero solo es compatible con JPEG. Podría considerar XMP , que admite prácticamente todos los tipos de imágenes (y más, por ejemplo, PDF y MP3) en su lugar. No estoy tan seguro de su capacidad para sobrevivir a las ediciones realizadas por editores que pueden no admitirlo, pero parece bastante compatible.

El artículo de Wikipedia sobre XMP no menciona el soporte de ImageMagick , y una búsqueda rápida en la web revela que ImageMagick probablemente admite datos XMP ; querrá verificar eso antes de desplegar. Recomiendo contra XMP si las ediciones de ImageMagick terminan por eliminarlo. (ImageMagick es extremadamente común en aplicaciones web y scripts de shell).

    
respondido por el Adam Katz 26.03.2015 - 17:53
fuente
-1

Probablemente estés tratando con dos causas diferentes para perder los datos ocultos:

  • Cambiar tamaño: esta operación utilizará un algoritmo de escala de imagen para crear una nueva versión escalada de la imagen, se perderán todos los datos de píxeles (incluidos los datos ocultos).
  • Recortar: algunos de los datos ocultos pueden almacenarse en las áreas eliminadas por el recorte, luego, al guardar la imagen recortada, se aplicará un nuevo paso de compresión jpeg que también destruirá los datos ocultos.

Estoy bastante seguro de que los propietarios de imágenes, como Getty, utilizan algoritmos complicados para decidir si una imagen dada coincide con una imagen de su biblioteca. Sin el uso de marcas de agua (algo visible en la imagen) no puedo pensar en otra opción que temo (bueno, ninguna sería fácil de eliminar de todos modos).

Espero que esto ayude!

    
respondido por el GreatSeaSpider 26.03.2015 - 16:32
fuente

Lea otras preguntas en las etiquetas