Guarding Images using a Symmetric key Cryptographic Technique: Blowfish Algorithm
J. Abdul Jaleel, Jisha Mary Thomas · 2013
In this modern century, we are living in, Internet has grabbed all the fields of human life and established its root deeply. Virtually every individual in the world today are connected to every other with the global acceptance of internet. People living in different location or even in different countries are able to exchange their data, news whether happiness or sadness, images, videos etc. Not simply sharing, but it enables them to see each other also. Internet has a wide role in strategic and non-strategic areas like educational institutions, banks, military and war fields, factories, medical and paramedical areas, companies etc where there are needs to sent their information, both confidential and general (data and images) through communication paths. Apart from all the advantages of internet, it has created a sense of insecurity for its users that the sender, after sending a data should fear until he gets an acknowledgment from the opposite side informing they have received the data safely, that too without any manipulation in its content. Its failure may result in great disasters. Thus, the confidentiality, authentication, integrity, non-repudiation of the information (data or image) should be ensured. These objectives can be met with cryptography which is simply the science of securing sensitive and confidential information as it is stored on media or transmitted through communication network paths. Here, in this work, images are considered with an aim to secure them during its storage and transmission. This is achieved using Blowfish Algorithm, a type of symmetric key cryptography. The two processes, encryption and decryption together form the cryptographic process. For ensuring security, the images are encrypted by the sender before transmitting them and are decrypted by the receiver after receiving them so that only the sender and the intended person can see the content in the image. Blowfish algorithm which uses a key of variable size up to 448 bits simply iterates the function 16 times (Feistel network). The work here, is done by considering two images, out of which, one is a gray scale image of Lena and the other is a color image of a cute baby. The image processing is done using MatLab and the Blowfish encryption-decryption is performed using the VHDL (Very Large Scale Integrated Circuits Hardware Description Language) platform Xilinx ISE 10.1.