La marca de agua, como las que llevan los billetes, no es infalible. Hoy, que existe mucha piratería en toda la tecnología, se pueden falsificar más fácilmente documentos con tan sólo bajar de Internet algún programa para quitar el marcado visible y poner otro sello.
¿Cómo proteger la autentificación e integridad de un filme, una pieza musical, una fotografía o gran cantidad de información de un banco, por ejemplo?
Edgar Eduardo García Cano, como parte de su tesis de maestría en Ciencias de la Computación, desarrolló un algoritmo bioinspirado para optimizar el marcado de agua en documentos digitales, que pueden ser audio, video o imagen.
Para ese proyecto, como alumno del posgrado del Instituto de Investigaciones en Matemáticas Aplicadas y en Sistemas (IIMAS) de la UNAM, realizó una estancia en la Escuela de Tecnología Superior (ETS) de la Universidad de Montreal, Canadá.
La ETS y un banco canadiense realizan la autentificación de documentos digitales mediante marcas de agua, que pueden aplicarse en facturas, cheques y estados de cuenta en el sector financiero.
“Eso impide que se falsifiquen”, afirmó García Cano, quien para el proyecto analizó algoritmos bioinspirados aplicados a digitalización de marcas de agua que hacen uso del paralelismo que brindan las Unidades de Procesamiento Gráficos (GPU), en específico las que utilizan CUDA (tecnología de Nvidia para programación en paralelo).
Algoritmos que autentifican
García Cano dijo que para quitar la marca y saber si un documento digital es original, se debe tener el algoritmo, de modo que “sólo yo podría saber si es o no verdadero”.
No es que el marcado invisible sea infalible, pero es más difícil de eliminar que uno que se ve. “Para eso necesitamos saber cuál fue el utilizado tanto para procesar la imagen como para insertar el sello”.
Para mejorar el proceso y el tiempo de ejecución, y tener resultados más rápidos, utilizó un algoritmo ciego llamado Shieh y lo programó con una GPU.
Se le dice así, explicó, porque tiene funciones para insertar y extraer la marca de agua y no se necesita la imagen original para contrastarla con la marcada.
Esto permite medir qué tan fiel es la imagen con marca de agua respecto de la original y qué tan robusta, al aplicar ciertos efectos (photo show) sobre la imagen. Para la inserción y transformación inversa, se usa la Transformada Discreta de Coseno, que implica ciertas operaciones y relaciones de valores.
El que sea bioinspirado quiere decir que está basado en la naturaleza, en cómo se mueven los peces o aves conjuntamente para llegar a un objetivo.
También, ejemplificó con el caso de partículas cuya meta es el Sol. De eso trata, de tener muchas en pos de un objetivo, de tal manera que encontremos la mejor posicionada para insertar ahí la marca de agua.
En este caso se utilizan dos ecuaciones. Una de velocidad y otra de posición, que representan cómo las partículas se mueven en el espacio de búsqueda y qué tan rápido o lento deben ir para encontrar el mejor lugar.
Así, como con las partículas, la función objetivo es llegar al Sol, “aquí es conocer qué tan fiel es la imagen con la marca de agua insertada. Para eso utilizo algo que se llama Dominancia de Pareto, donde encuentro la mejor solución en cuanto a máxima fidelidad y mínima robustez”.
Las pruebas, refirió García Cano, se hicieron en dos servidores con la misma tarjeta, pero diferente velocidad de procesadores. “Todo salió bien. Realmente se optimizó como debería en cuanto a los tiempos. Salió algo similar en ambos, más o menos la misma diferencia”.