# AI Makes Crypto Evolve
## 7 AIEC
### Neural Cryptography
Inertial Neural Networks(INNs) can be used to construct this communication system with an additional Markovian function and reaction-diffusion terms. Information security has three basic tenets to protect the following: confidentiality, integrity and availability. The current state of cryptography looks at how to protect confidentiality through the use of crypto-graphic systems. One of the newest fields of study is cellular NNs/Cellular Automata and how to use them in cryptography [184, 185, 186]. With the significant amount of work being produced in this field, there are two main types of NNs at play, namely Feed Forward Neural Networks (FFNNs) and RNNs. The techniques employed in cryptography for NNs include using sequential machines and employing a chaotic NN [187, 188, 189]. Artificial neural networks can be trained to decrypt ciphertext that is created by random encryption algorithms. The pseudorandom mapper is used in conjunction with garbage values at random positions to encrypt the image. The ANN is then able to identify the garbage values and decrypt the messages [190]. An interesting proposition is combining the AES encryption algorithm with NNs. This encryption scheme is based on looking at the weights of synaptic connections in NNs as the bases for input images. This approach provides a constant key rotation which increases the cryptography complexity required to break the encryption [191]. Chaotic properties of NNs can further be used to generate S-boxes which are cryptographically strong and secure NNs can be leveraged to detect ciphers which use the same key. RNNs were shown to have reduced learning abilities when the confusion and diffusion parameters of the cryptographic system were strong [192]. With a comparison having been performed between AES and chaotic NNs, it was found that chaotic NNs were more suitable for encrypting shorter plaintexts while AES was more efficient at encrypting larger plaintexts [193]. A symmetric cryptography system was created through the use of CNNs and was compared with AES symmetric cryptography. The CNN cryptosystem has potential for encrypting small file sizes but its susceptibility to attacks has not yet been confirmed [194]. The cryptosystem can be improved by adding noise/random bits into the ciphertext which can only be caught and decrypted by the end user. This foils many of the attacks where the attacker can feed the ciphertext into the NN to try and extract the key [195]. While chaotic NNs use binary inputs for the training of their models, using Auto Associative neural networks can create a strong encryption algorithm by using a bipolar input instead [196]. The input pattern is deemed known if and only if there is an output that is the same as the input for this pattern. The auto associative NNs are used to encrypt plaintext into ciphertext where the relation between different ciphertexts is independent. Another way NNs can be used as an encryption system is through the time delays between different neurons in the original data [171]. This form of encryption has a wide array of applications ranging from using it as a one way function to generate a public key from a private one to using it as an encryption mechanism for communication between two entities. Moreover, a Generalized Synchronization Network is a kind of NN that can be thought of as a discrete time array. The GSDTAE can design a encryption scheme with an OTP. Through this, we were successfully able to encrypt and decrypt the original information with a large key space [197]. The resilience of ANNs can be measured when sensitive Intellectual Properties are stored in the system [198]. It is known that the weight in NNs is unpredictable without knowledge about the training data. As a result, it could be a valid key for encryption and decryption. RNNs can be used to produce keys and to provide Cipher Block-Chaining (CBC) mode encryption [199]. It takes the first output (ciphertext) of the NN and places it back as part of the input for the second plaintext. The same implementation was also shown in [200].