Symmetric Encryption using Artificial Neural Network, Binary Tree Traversal, and Interleaving Salting
Atishay Jain1, Mihir Gupta2, Vibhu Kumar Singh3, Aju Dennisan4

1Atishay Jain, SCOPE, Vellore Institute of Technology, Vellore (Tamil Nadu), India.
2Mihir Gupta, SCOPE, Vellore Institute of Technology, Vellore (Tamil Nadu), India. 
3Vibhu Kumar Singh, SCOPE, Vellore Institute of Technology, Vellore (Tamil Nadu), India. 
4Aju Dennisan, SCOPE, Vellore Institute of Technology, Vellore (Tamil Nadu), India. 
Manuscript received on 15 July 2022 | Revised Manuscript received on 22 July 2022 | Manuscript Accepted on 15 August 2022 | Manuscript published on 30 August 2022 | PP: 96-100 | Volume-11 Issue-6, August 2022 | Retrieval Number: 100.1/ijeat.F37220811622 | DOI: 10.35940/ijeat.F3722.0811622
Open Access | Ethics and Policies | Cite | Mendeley | Indexing and Abstracting
© The Authors. Blue Eyes Intelligence Engineering and Sciences Publication (BEIESP). This is an open access article under the CC-BY-NC-ND license (http://creativecommons.org/licenses/by-nc-nd/4.0/)

Abstract: We have proposed a novel way of symmetric encryption utilizing interleaving salting, Binary Tree traversal, and an Artificial Neural Network in a sequential manner. We have presented the use of an Artificial Neural Network as an invertible(reversible) mathematical function so that decryption of the encrypted output may be possible. Knowledge of the encryption pipeline, salt, and neural network weights is required for decryption. As the same set of values is required for encryption and decryption, our proposed approach is a type of symmetric-key algorithm. Each user will have a unique key. Thus if a key attributing to a particular user is compromised, the integrity of the data of the remaining users will still be maintained. Our approach can be utilized to encrypt text data such as messages, documents, and letters. The encryption process consists of interleaving salting, creation of binary tree by considering the input as its level order traversal, and passing the preorder and inorder traversal of the constructed binary tree as input to the Artificial Neural Network. The output of the Artificial Neural Network would be the encrypted data. Decryption would require determining the input of an Artificial Neural Network from the output, hence solving multiple sets of linear equations and constructing a binary tree from its preorder and inorder traversal. We have then analyzed the variation of performance with the change in the input string size. The codebase of our proposed approach is publicly available at https://github.com/Atishaysjain/Symmetric-Encryption-using-ANN-and-Binary-Trees. 
Keywords: Symmetric Encryption, Artificial Neural Network, Binary Tree, Salting.
Scope of the Article: Artificial Neural Network