Modified Blowfish Algorithm for Image Encryption using Multi Keys based on five Sboxes


In this paper, a new modification was proposed to enhance the security level in the Blowfish algorithm by increasing the difficulty of cracking the original message which will lead to be safe against unauthorized attack. This algorithm is a symmetric variable-length key, 64-bit block cipher and it is implemented using gray scale images of different sizes. Instead of using a single key in cipher operation, another key (KEY2) of one byte length was used in the proposed algorithm which has taken place in the Feistel function in the first round both in encryption and decryption processes. In addition, the proposed modified Blowfish algorithm uses five Sboxes instead of four; the additional key (KEY2) is selected randomly from additional Sbox5, the fifth Sbox is formed in GF(28) and it is variable to increase the complexity of the proposed algorithm. The obtained results were tested using many criteria: correlation criteria, number of pixels change rate (NPCR) and mean square error (MSE). These tested factors were approved by the output results which demonstrated that the correlation of image elements in the proposed algorithm was significantly reduced during the encryption operation. Also, the algorithm is very resistant to attempts of breaking the cryptographic key since two keys were used in the encryption/ decryption operations which lead to increase the complexity factor in the proposed algorithm.