Secure image ciphering based on chaos
AbstractA new image encryption technique based on chaotic maps is described. The cipher is a block cipher with a private key. A simple two dimensional chaotic map is generalized by introducing parameters. Then it is discretized so that it maps a rectangular lattice of points (pixels) in a bijective manner. Finally, the map is extended to three dimensions to modify the gray levels. The parameters of the map serve as the ciphering key. The encryption consists of several iterative applications of the map to a digital image. For the deciphering process, the inverse of the map is applied the same number of times. Independently of the initial image, the encrypted image resembles an uncorrelated static on a TV monitor without signal, and the histogram of the encrypted image becomes uniform. The basic properties of chaotic maps, such as mixing and sensitivity to parameters and initial conditions guarantee: (a) cipher security, (b) very large number of ciphering keys, (c) easy parallelization, (d) simple and fast implementation. The cipher is shown to be computationally secure with respect to known-plaintext type of attack and ciphertext only type of attack. Breaking the cipher without the knowledge of the plaintext requires performing a large number of high level pattern recognition and image understanding tasks. The encryption method enables construction of new, nontraditional random number generators. The quality of the random number generators has been thoroughly tested. Optimal implementation on sequential and parallel machines is discussed. The report ends with a brief summary of the proposed method together with its advantages, disadvantages, and numerous other applications in subliminal channel embedding, image compression, public key cryptography, and many other areas of secret communication. The method is especially applicable to image encryption due to its simplicity and high encryption rate. A straightforward software implementation achieves an encryption rate of 1Mbit/sec on a Pentium machine. This is by several orders of magnitude faster than the fastest software implementations of current public key encryption schemes.