Revista Colombiana de Física, vol. 41, o. 2, Abril 2009 Encriptación de Imágenes Digitales Via Transformada Fraccional de Fourier Discreta y Transformada Jigsaw Digital Images Encryption Via Discrete Fractional Fourier Transform and Jigsaw Transform Juan M. Vilardy1, Cesar O. Torres1, Lorenzo Mattos1 1 Laboratorio de Óptica e Informática, Universidad Popular del Cesar, Valledupar, Colombia. Recibido XXXX; Aceptado XXXX; Publicado en línea XXXX Resumen Un nuevo método de encriptación de imágenes utilizando La Transformada Fraccional de Fourier Discreta (DFrFT) y La Transformada Jigsaw es propuesto. La principal característica de este esquema de encriptación es que la imagen encriptada es real y tiene el mismo tamaño que la imagen original (en comparación con otros sistemas de seguridad basados en Transformada Fraccional de Fourier - FrFT), siendo esta imagen encriptada mucho más conveniente para su almacenamiento o transmisión por redes de comunicación digital. El uso de La Transformada Jigsaw incrementa la seguridad de la imagen encriptada y elimina las mascaras de fases aleatorias utilizadas en muchos criptosistemas de imágenes basados en FrFT. Por ultimo para el nuevo método de encriptación propuesto, fue desarrollado un algoritmo digital de encriptación de imágenes. En el algoritmo criptográfico implementado doce llaves son usadas, constituidas por los seis órdenes fraccionales de las DFrFTs y las seis permutaciones aleatorias utilizadas en las transformadas Jigsaw, todas esas llaves son necesarias para una correcta desencriptación, obteniendo un alto nivel de seguridad en la protección de las imágenes digitales para una determinada aplicación. Palabras claves: Encriptación, Transformada Fraccional de Fourier Continua/Discreta, Transformada Jigsaw. Abstract A new digital images security system based on The Discrete Fractional Fourier Transform (DFrFT) and the Jigsaw transform is proposed. The main feature of this encryption scheme is that the encrypted image is real and has the same size as the original one (in comparison with other security systems that are based on Fractional Fourier Transform - FrFT), being this encrypted image much more convenient for either its storage or its transmission on digital communication networks. Using the Jigsaw transform the security of the encrypted image is increased and the random phase masks used in many images cryptosystems based on Fractional Fourier Transform (FrFT) are eliminated. Finally, for the new proposed encryption method, an images encryption digital algorithm was developed. There are twelve keys used in the cryptographic algorithm implemented, which are constituted by the six DFrFTs fractional orders and the six random permutations used in Jigsaw transforms, all these keys are necessary for a correct decryption, obtaining a high level security in protecting digital images for a particular application. Keywords: Encryption, Continuous/Discrete Fractional Fourier Transform, Jigsaw Transform. © 2009 Revista Colombiana de Física. Todos los derechos reservados. tales como la doble codificación de fase aleatoria [3-4], para adicionar ruido sobre la información de la imagen digital. Uno de los principales inconvenientes de tales esquemas de encriptación es que la imagen digital encriptada es compleja y por lo tanto esto seria inadecuado para aplicaciones reales. 1. Introducción Muchos sistemas de encriptación son basados en la transformada de Fourier (FT) o la FrFT [1-4], estos sistemas comúnmente emplean mascaras de fases aleatorias puras, 1 Juan M. Vilardy et al.: Encriptación de Imágenes Digitales Via Transformada Fraccional de Fourier Discreta y Transformada Jigsaw El encriptamiento de imágenes digitales que utiliza DFrFT y transformada Jigsaw surge como la aplicación y la generalización de los trabajos realizados de cifrado de imágenes digitales mediante la FrFT [5] y FT [6], respectivamente, debido a que la DFrFT es una extensión de la Transformada de Fourier Discreta (DFT), agregando así nuevas características que aumentan los niveles de seguridad en las imágenes digitales encriptadas. Las definiciones y propiedades de la FrFT/DFrFT utilizadas en este artículo son definidas en las referencias 4 y 5. Donde: IR(z,y) es la imagen parte real de Ic(z,y) construida de la primera mitad de filas y todas las columnas de I(x,y) y II(z,y) es la imagen parte imaginaria de Ic(z,y) construida de la segunda mitad de filas y todas las columnas de I(x,y). La imagen compleja Ic(z,y) contiene toda la información de la imagen a encriptar en su parte real e imaginaria. El proceso de encriptación se le aplica a la imagen compleja Ic(z,y), transformando esta imagen doce veces con Jigsaw y FrFT, las siguientes ecuaciones describen el proceso de encriptación: I f (u , v) = ℑγ {J Rb 3 {ℑβ {J Ib 2 {ℑα {J Rb1 {I c ( z , y )}}}}}} (2) 2. Transformada Jigsaw { { { { }}}} (3) I E (r , s ) = ℑε J Ib 6 ℑχ J Rb 5 ℑσ {J Ib 4 {I f (u, v)}} La transformada Jigsaw, J{ }, se define como una yuxtaposición de diferentes secciones de una imagen [7]. Un simple caso bidimensional es mostrado en la fig. No. 1. I E ( r , s ) = I ER ( r , s ) + jI EI (r , s), r = 0,1,.., M − 1; s = 0,1,.., − 1 (4) 2 I ( r , s ) I e ( p, s ) = ER , p = 0,1,.., M − 1; s = 0,1,.., − 1 (5) I EI (r , s ) si, g (n, q ) = f (n, q ) + jh(n, q) (6) J {g (n, q )} = J b { f (n, q )} + jh(n, q ) ⇒ Rb J Ib {g (n, q)} = f (n, q) + jJ b {h(n, q )} Fig. 1. Simple ilustración de la transformada Jigsaw. Donde: IE(r,s) es la imagen encriptada compleja de M/2xN píxeles (If(u,v) es una imagen compleja intermedia del proceso de encriptación), Ie(p,s) es la imagen encriptada puramente real de MxN píxeles, construida de la parte real e imaginaria de la imagen encriptada compleja, como lo muestra la ecuación (5). JRb y JIb son transformadas Jigsaw de índice b, que actúan sobre la parte real e imaginaria respectivamente de una imagen compleja, α, β, γ, σ, χ y ε son los ordenes fraccionales utilizados. Para la etapa de desencriptación se aplica el procedimiento de encriptación en el sentido inverso, con los índices negativos de las transformadas Jigsaw y los ordenes fraccionales de la FrFT también negativos, utilizando la propiedad de aditividad de la FrFT y la transformada inversa de Jigsaw: El efecto de esta transformada sobre una imagen (fig. No. 2a) es mostrado en la fig. No. 2b. (a) (b) Fig. 2. (a) Imagen de entrada de 256x256 píxeles, (b) Imagen de entrada después de las primeras 16x16 transformadas Jigsaw. I ( r , s ) I e ( p, s ) = ER , p = 0,1,.., M − 1; s = 0,1,.., − 1 (7) I EI (r , s ) En este caso la imagen fue dividida en 64 subsecciones de 8x8 píxeles, las cuales son reposicionadas relativamente de acuerdo a alguna permutación. La permutación usada es aleatoria. La transformada Jigsaw es unitaria, es decir que la energía se conserva al aplicar está transformada y está también tiene inversa. En el caso mostrado en la fig. No. 2b hay 64! posibles permutaciones para la transformada Jigsaw. Cada particular transformada Jigsaw es denotada por algún índice, es decir: Jb{ } y su inversa es denotada por J-b{ }. I E ( r , s ) = I ER ( r , s ) + jI EI (r , s), r = 0,1,.., { { I }}}}} { {J {ℑ {J {ℑ {I I D ( z, y ) = J − Rb1 ℑ −α −β − Ib 2 −γ − Rb 3 f (9) }}}}} (u , v)} (10) I D ( z , y ) = I c ( z , y ) = I R ( z , y ) + jI I ( z , y ) si, g ( n, q ) = f (n, q ) + jh( n, q) J {g (n, q )} = J −b { f (n, q )} + jh( n, q) ⇒ − Rb J − Ib {g (n, q)} = f (n, q) + jJ −b {h( n, q)} Sea I(x,y) una imagen real a encriptar de MxN píxeles (M y N, número de filas y columnas respectivamente, en escala de grises) e Ic(z,y) una imagen compleja de M/2xN píxeles: M I ( z , y ) = I ( z , y ) + jI ( z , y ), z = 0,1,..., − 1; y = 0,1,..., − 1 (1) R { I f (u , v) = J − Ib 4 ℑ−σ J − Rb 5 ℑ− χ J − Ib 6 ℑ−ε {I E ( r , s )} 3. Formulación Matemática del Método de Encriptamiento y Desencriptamiento C { { M − 1; s = 0,1,.., − 1 (8) 2 (11) (12) Ahora ID(z,y) es la imagen desencriptada compleja. Y así por ultimo para recuperar la imagen real que inicialmente fue encriptada, a partir de la ecuación (11), se tiene: 2 2 rev. col. fís.(c), vol. 41, o. 2, (2009) I ( z , y ) I ( x, y ) = R , x = 0,1,..., M − 1; y = 0,1,..., − 1 (13) I I ( z, y) (ecuación (11)) en la forma indicada por la ecuación (13), para así obtener la imagen real que inicialmente fue cifrada de MxN píxeles. 4. Algoritmo Digital para La Encriptación y Desencriptación de Imágenes 5. Resultados Experimentales La implementación del algoritmo digital de encriptación y desencriptación se realizó en la plataforma de programación Matlab® v.7.7, debido a sus grandes facilidades y su alto rendimiento en el manejo de matrices (imágenes). Las imágenes digitales a encriptar tienen las siguientes características: formato *.tiff en escala de grises, MxN píxeles de tamaño, 8 bits de cuantización (los valores de los píxeles son números enteros entre 0 y 255). El proceso de encriptación descrito en la sección 4 es aplicado sobre la imagen digital de prueba (fig. No. 4a) de MxN píxeles, consiguiendo que la imagen digital encriptada (imagen real de MxN píxeles) oculte la totalidad de la información contenida, como se aprecia en la fig. No. 4b, la distribución de intensidades de la imagen digital encriptada varía al cambiar las llaves (ordenes fraccionales de las DFrFT y las permutaciones aleatorias empleadas en las transformadas Jigsaw). Cuando se realiza el proceso de desencriptación con las llaves correctas, se logró recuperar la imagen digital original con pérdidas no visibles al ojo humano, como lo muestra la fig. No. 4c. Si las llaves utilizadas en el proceso de desencriptación no son iguales a las llaves utilizadas en el proceso de encriptación, la imagen digital no se recuperará, como se aprecia en la fig. No. 4d. De la anterior figura se observa que con cambios pequeños en las llaves correctas, aparece mucha distorsión en la imagen digital recuperada. Y por último si las permutaciones aleatorias de las transformadas Jigsaw utilizadas en el proceso de desencriptación no son iguales a las empleadas en el proceso de encriptación, la imagen digital no se recuperará, así como lo muestra la fig. No. 4e. 4.1 Proceso de Encriptación Digital En el siguiente diagrama de bloques se muestra el proceso de encriptamiento [5, 8, 9]: Fig. 4. (a) Imagen digital de prueba, (b) Imagen digital encriptada con la llaves: α=1.007, β=1.411, γ=1.7121, σ=1.0812, χ=1.0519 y ε=1.1819, (c) Imagen digital desencriptada con las llaves y permutaciones aleatorias correctas, (d) Imagen digital desencriptada con un error en la llave (σ): α=1.007, β=1.4110, γ=1.7121, σ=1.0814, χ=1.0519 y ε=1.1819, y permutaciones aleatorias correctas. (e) Imagen digital desencriptada con permutaciones aleatorias erróneas y llaves correctas. Las imágenes digitales encriptadas fueron almacenadas en el disco duro del PC con los siguientes formatos de imágenes, empleando 8 bits de cuantización, en la Tabla 1 se muestra el formato utilizado y el respectivo tamaño en disco que ocupa cada formato. Fig. 3. Diagrama de bloques del proceso de encriptación de la imagen digital. Tabla 1o. 1 Comparación del tamaño en disco ocupado por los formatos convencionales de imágenes utilizados para almacenar la imagen digital encriptada. 4.2 Proceso de Desencriptación Digital El proceso de desencriptación es el mismo proceso de encriptación, pero en el sentido inverso con los índices negativos de las transformadas Jigsaw y los ordenes fraccionales de la DFrFT también negativos, y por ultimo se ordenan las matrices resultantes de la imagen desencriptada compleja Formato Tamaño en disco (KB) 3 *.png *.tiff *.bmp *.jpeg *.jpg 59 65 66 61 61 Juan M. Vilardy et al.: Encriptación de Imágenes Digitales Via Transformada Fraccional de Fourier Discreta y Transformada Jigsaw Se debe señalar que las imagen digital a encriptar tiene las siguientes características: formato *.tiff en escala de grises, 256x256 píxeles de tamaño, 8 bits de cuantización y 62 KB de tamaño en disco; De la anterior tabla, las imágenes encriptadas con diferentes formatos ocupan un tamaño en disco duro muy similar en comparación con la imagen digital a encriptar (62 KB). El Error Cuadrático Medio (MSE, Mean Square Error, ecuación 14) y la Relación Señal a Ruido (SNR, Signal-toNoise Ratio, ecuación 15) entre la imagen digital de entrada y nuestra imagen digital desencriptada son calculados para validar la confiabilidad del algoritmo implementado: 2 1 M MSE = ∑ ∑ I ( x, y ) − I1 ( x, y ) M ⋅ x =1 y =1 [ M SR = ∑ ∑ [I ( x, y )] x =1 y =1 2 M ] Teniendo presente que los ordenes fraccionales usados en el desencriptamiento son sensibles hasta la quinta cifra decimal, se tienen (4)6(1 x 105)6 posibilidades para los ordenes fraccionales solamente (suponiendo conocidas las permutaciones aleatorias). Para la imagen de prueba utilizada en este articulo el tiempo de desencriptamiento es de 0.12 seg y para tener éxito en un ataque de fuerza bruta (probar con todas las posibilidades) se tienen 4.92 x 1032 seg, esto es equivalente a 1.55 x 1025 años!. Conclusiones Un nuevo esquema de encriptación de imágenes utilizando la DFrFT y la transformada Jigsaw ha sido presentado. La principal ventaja del esquema de encriptación presentado radica en que la imagen encriptada es puramente real y tiene el mismo tamaño de la imagen (también puramente real) a encriptar. El uso de la DFrFT en la encriptación de imágenes aumenta enormemente los parámetros de seguridad de la imagen encriptada, debido a la sensibilidad en cualquier cambio que se haga sobre los órdenes fraccionales utilizados, y adicional a esto las seis permutaciones aleatorias utilizadas en las transformadas Jigsaw incrementan mucho más la seguridad para cualquier criptoanalista que intente desencriptar la imagen digital sin ser autorizado. (14) 2 ∑ ∑ [I ( x, y ) − I1 ( x, y )] (15) x =1 y =1 Donde I(x,y) y I1(x,y) son las matrices elemento de la imagen digital de entrada y nuestra imagen digital desencriptada en el píxel (x,y), respectivamente, y M· es el tamaño de la imagen digital. La sensitividad de los ordenes fraccionales de las DFrFTs son examinados introduciendo errores en estos (de manera individual) y dejando fijas las permutaciones aleatorias utilizadas en las transformadas Jigsaw. El MSE y la SNR son empleados para medir el nivel de protección sobre las imágenes digitales encriptadas. En esta prueba de desviación de los órdenes fraccionales de las DFrFTs sobre los valores correctos del proceso de desencriptación, se introduce un error que varía entre -0.25 y 0.25, posteriormente para cada variación se calcula el MSE y la SNR, los resultados se observan en la fig. No. 5. De experimentos computacionales se encontró que los ordenes fraccionales son sensible a una variación de 1e-5. Referencias [1] [2] [3] [4] [5] [6] Fig. 5. Prueba de desviación de los órdenes fraccionales de las DFrFTs sobre los valores correctos del proceso de desencriptación: (a) MSE, (b) SNR. [7] Para la implementación del algoritmo digital en Matlab® v.7.7, se utilizó un PC con un procesador de 2.0 GHz AMD Turion 64X2 y 1 GB de RAM, obteniendo los siguientes tiempos de encriptación y desencriptación para una imagen digital de 256x256 píxeles: Tiempo de Encriptación: 0.12711 Segundos. Tiempo de Desencriptación: 0.12719 Segundos. [8] [9] 4 Zhengjun Liu, Qiuming Li, Jingmin Dai, Xiaogang Sun, Shutian Liu, Muhammad Ashfaq Ahmad. A new kind of double image encryption by using a cutting spectrum in the 1-D fractional Fourier transform domains. En: Optics Communications. Vol. 282, (2009), 1536–1540. N. Singh, A. Sinha. Optical image encryption using fractional Fourier transform and chaos. En: Optics and Lasers in Engineering. Vol. 46, (2008), 117-123. P. Refregier, B. Javidi. Optical image encryption based on input plane and Fourier plane random encoding. En: Optics Letters. Vol. 20, (1995) 767-769. G. Unnikrishnan, J. Joseph, K. Singh. Optical encryption by double-random phase encoding in the fractional Fourier domain. En: Optics Letters. Vol. 25, (2000) 887-889. J. Vilardy, C. Torres, L. Mattos, Encriptación en Fase Aplicado a Imágenes Digitales a Color. En: Revista Colombiana de Física. Vol. 41, (2008) No.1. L. Brito, C. Torres. Encriptamiento de imágenes digitales a color mediante transformada de Fourier. En: Revista Colombiana de Física, Vol. 35, (2003) No.1. B. Hennelly, J. T. Sheridan. Optical image encryption by random shifting in fractional Fourier domains. En: Optics Letters. Vol. 28, (2003), 269-271. C. Candan, dFRT: The Discrete Fractional Fourier Transform, A Matlab Program, 1998, <http://www.ee.bilkent.edu.tr/~haldun/dFRT.m> A. Bultheel, H. Martínez. Computation of the fractional Fourier transform. En: Applied and Computational Harmonic Analysis. Vol. 16, (2004), 182-202.