Pregunta

Actualizar Hice esta pregunta hace bastante tiempo, y estaba ansioso por ver si algo como esto se ha desarrollado desde que hice la pregunta?

que ni siquiera saben si hay un término para este tipo de algoritmo, y supongo que no habrá si nadie ha inventado todavía. Sin embargo, también hace google para esto un poco difícil. ¿Alguien sabe si existe un término para este algoritmo / principio todavía?


Esta es una idea que he estado pensando, pero no sé muy bien cómo resolverlo. Me gustaría saber si algunas soluciones como ésta existe por ahí, o si ustedes tienen alguna idea de cómo esto podría ser implementado.

esteganografía

La esteganografía es básicamente el arte de ocultar mensajes. En los tiempos modernos hacemos esto digitalmente por ejemplo, la modificación de los bits menos significativos de una imagen como la de abajo. Así, para cada pixel y para cada componente de color del píxel que podríamos ser capaces de ocultar un byte o dos.

Esta alternación no es visible a simple vista, pero el análisis de los bits menos significativos podría revelar patrones que expone la existencia y, posiblemente, el contenido de un mensaje oculto. Para contrarrestar esto, simplemente cifrar el mensaje antes de clavarse en la imagen, lo que mantiene el mensaje de seguridad y también ayuda a prevenir el descubrimiento de la existencia de un mensaje oculto.

Por lo tanto, en principio, la esteganografía proporciona lo siguiente:

  • Ocultación mensaje cifrado en cualquier tipo de datos de medios. (Imágenes, música, vídeo, etc.)
  • negación completa de la existencia de un mensaje oculto sin la llave correcta.
  • Extracción del mensaje oculto con la clave correcta.


(fuente: cs.vu.nl )

Semacodes

Semacodes son una forma de codificación de datos en una representación visual, que se puede imprimir, copiar, y escanea fácilmente. La matriz de datos se muestra a continuación es un ejemplo de un semacode que contiene el famoso texto de Lorem Ipsum. Se trata esencialmente de un código de barras 2D con una mayor capacidad que por lo general los códigos de barras. Los programas para la generación de Semacodes están fácilmente disponibles, y lo mismo para el software de lectura de ellos, especialmente para los teléfonos celulares. Semacodes generalmente contiene códigos de corrección de errores, en general son muy robustas, y se pueden leer en condiciones muy dañadas.

Así Semacodes tiene las siguientes propiedades:

    codificación
  • Los datos que se puede imprimir y copiar.
  • se puede escanear e interpretado incluso en condiciones dañadas (sucias), y generalmente una codificación muy robusto.

combinándolo

Así que mi idea es crear algo que combina estos dos, con todas las propiedades combinadas. Esto significa que tendría que:

  • Insertar un mensaje cifrado en cualquier medio de comunicación, probablemente una imagen escaneada.
  • El mensaje debe ser extraíble incluso si la imagen se imprime y se digitalizan, e incluso parcialmente dañado.
  • La existencia de un mensaje implícito debe ser indetectable sin la clave utilizada para el cifrado.

Por lo tanto, en primer lugar me gustaría saber si hay algún soluciones, algoritmos o investigación disponible acerca de esto? En segundo lugar me gustaría escuchar cualquier ideas / pensamientos acerca de cómo se puede hacer esto?

Realmente espero conseguir una buena discusión va sobre las posibilidades y viabilidad de implementar algo así, y estoy deseando leer sus respuestas.

Actualizar

Gracias por todo el bien de entrada en esto. Probablemente voy a trabajar un poco más en esta idea cuando tenga más tiempo. Estoy convencido de que debe ser posible. Piense en la investigación en la incrustación de marcas de agua en la música y las películas.

¿Fue útil?

Solución

Imagino parte de la robustez de un semacode a daño / suciedad / oscurecimiento es el alto contraste entre los dos estados de cualquier "célula". El lector puede todavía hacer una buena conjetura en cuanto a la situación real, incluso con una cierta distorsión.

Ese tipo de contraste no está disponible en una imagen fotográfica, y es la razón por qué funciona la esteganografía - el bit LSB-mover de un tirón tiene casi ningún efecto visual en la imagen en sí, mientras que la fidelidad digital garantiza que un sistema no visual puede todavía leer con mucha precisión los datos incrustados.

Como las dos aplicaciones son una especie de en los extremos opuestos del análogo de espectro / digital (Semacodes son todo acerca de ser descifrable por () el procesamiento visual analógica pero son en el papel, no digital; esteganografía es todo acerca de los bits en el archivo y no se preocupa por la representación analógica, si la luz o el sonido o alguna otra cosa), me imagino una combinación de los dos será muy difícil, si no imposible.

En esencia lo que estás pensando es ser capaz de steganographically algo incrustar en una imagen, imprimir la imagen, hacer una fotocopia en color de la misma, escanearlo, y seguir siendo capaz de extraer los datos incrustados .

Me temo que no puedo ayudar, pero si alguien logra esto, voy a ser maldito impresionado! :)

Otros consejos

No es una respuesta completa, pero hay que mirar a marcas de agua . Esta técnica resuelve sus dos primeros goles (embedable en una imagen impresa y legibles incluso de exploración en parte dañada).

Parte de la fiabilidad de la marca de agua a los errores de distorsión y de transcripción (de pasar de digital a analógico y de vuelta) provienen de la redundancia (por ejemplo la repetición de los datos varias veces). Los que haría que la marca de agua detectable incluso sin una clave. Sin embargo, es posible que pueda utilizar técnicas de redundancia que son más sutiles, tal vez algo relacionado con la codificación de supresión o compartición de secretos.

Yo sé que no es una respuesta completa, pero espero que los lleva a apuntar en la dirección correcta!

¿Qué lenguaje / entorno está usando? No debería ser tan difícil de escribir código que abre tanto la imagen como semacode como un mapa de bits (esta última como monocromo), establece el bit más bajo (s) de cada byte de cada píxel de la imagen en color para el valor de la correspondiente píxel del mapa de bits monocromo.

(ampliar opcionalmente el mapa de bits semacode primero a las mismas de píxel-dimensiones que se extiende con el blanco)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top