Cellular Automata and Their Generalizations in Cryptography. Part 1
The purpose of the article is an analytical review of the application of cellular automata and their generalizations in cryptography. Research method: an analysis of scientific publications on the topic of the article. Results: The review article analyzes the literature devoted to the use of classical cellular automata and their generalizations for the construction of cryptographic algorithms. The article consists of two parts. The first part is devoted to classical cellular automata and symmetric cryptographic algorithms based on them. It briefly discusses the history of the theory of cellular automata and its applications in various scientific disciplines. The review of the works of a number of authors who proposed symmetric cryptographic algorithms and pseudorandom sequence generators based on one-dimensional cellular automata is presented. The security of such cryptographic algorithms turned out to be insufficient. The following is a review of articles devoted to the use of two-dimensional cellular automata for constructing ciphers (this approach gave the best results). Multidimensional cellular automata are also mentioned. The second part of the article will be devoted to a review of works devoted to the use of generalized cellular automata in cryptography – on the basis of such automata, it is possible to create symmetric encryption algorithms and cryptographic hash functions that provide a high level of security and high performance in hardware implementation (for example, on FPGA), as well as having fairly low requirements for hardware resources. In addition, an attention will be paid to interesting connections of generalized cellular automata, in the context of their use in cryptography, with the theory of expander graphs. Attention will also be paid to the security of cryptographic algorithms based on generalized cellular automata. The works devoted to the implementation of various cryptographic algorithms based on generalized cellular automata on FPGA and GPU will be mentioned. In addition, an overview of asymmetric cryptographic algorithms based on cellular automata will be given. The questions about the belonging of some problems on cellular automata and their generalizations to the class of NP-complete problems, as well as to some other complexity classes, will also be considered.