A Symmetric Key Cryptographic Algorithm Using Counter Propagation Network (CPN) Vikas Sagar
Krishan Kumar
Department of Computer Science Faculty of Technology, Gurukul Kangri University, Haridwar, India +91-9808903914,
Department of Computer Science Faculty of Technology, Gurukul Kangri University, Haridwar, India +91-9319777952
[email protected]
[email protected]
ABSTRACT Cryptography is a process of protecting information and data from unauthorized access. Now-a-days, security is an important and basic issue while sending or receiving the data over any network. Cryptography is used to achieve availability, privacy and integrity. Generally there are two categories of cryptography i.e. symmetric and asymmetric. In this paper, we have proposed a new symmetric key algorithm based on counter propagation neural network (CPN).
Keywords Cryptography, symmetric key, counter propagation neural network.
1. INTRODUCTION In the present time Internet performs a significant role in the communication. Data security becomes a tremendous task over the public network. There are many security mechanisms and many applications are provided by a number of providers. Cryptography is one of the essential aspects for secure communications. A cryptographic algorithm uses mathematical functions in the encryption and decryption process. With the use of cryptography we can send important data over the insecure channels so that it can not be accessed by some other unauthorized sources [1]. The basic goals of cryptography are given as: Confidentiality: Confidentially is to keep information secret from unauthorized entity. When the data is exchanged between two users then the attackers must not be able to detect about the source and destination. Data integrity: Data should not be manipulated by unauthorized entities. Data manipulation involves effects such as insertion, deletion, and data modification. The recipient should be able to determine if the message has been altered or not. (c) 2014 Association for Computing Machinery. ACM acknowledges that this contribution was authored or co-authored by an employee, contractor or affiliate of a national government. As such, the Government retains a nonexclusive, royalty-free right to publish or reproduce this article, or to allow others to do so, for Government purposes only. ICTCS '14, November 14 - 16 2014, Udaipur, Rajasthan, India Copyright 2014 ACM 978-1-4503-3216-3/14/11…$15.00 http://dx.doi.org/10.1145/2677855.2677906 Authentication: Authentication is a service related to identification. The recipient should be able to verify the identity of the sender, the origin from the message.
Non-repudiation: Non-repudiation prevents either sender or receiver from denying a message. It means that, when receiver received a message, the sender can prove the alleged receiver in received that message. On the other hand, when a sender sends a message to the receiver, the receiver can prove that the message is sent by the authorized sender. As we know, an artificial neural network (ANN) has been inspired by biological nervous systems, such as the brain. Artificial Neural Networks have engaged a lot of attention to create model of how the human brain operates. ANN has been widely used in many application areas of research successfully. Also with the help of neural cryptography, we generate some algorithms to encrypt, decrypt, and communicate secret information over an unsecure channel.
2. OVERVIEW OF SYMMETRIC KEY CRYPTOGRAPHY In symmetric key cryptography a single key is used for encryption and decryption [1]. Symmetric-key cryptography refers to encryption methods in which both the sender and receiver share the same key (or, less commonly, in which their keys are different, but related in an easily computable way). This was the only kind of encryption publicly known until June 1976 . Symmetric key ciphers are implemented as either block ciphers or stream ciphers. A block cipher enciphers input in blocks of plaintext as opposed to individual characters, the input form used by a stream cipher. The Data Encryption Standard (DES) and the Advanced Encryption Standard (AES) are block cipher designs which have been designated cryptography standards by the US government (though DES's designation was finally withdrawn after the AES was adopted). Despite its deprecation as an official standard, DES (especially its still-approved and much more secure triple-DES variant) remains quite popular; it is used across a wide range of applications, from ATM encryption to e-mail privacy and secure remote access. Many other block ciphers have been designed and released, with considerable variation in quality. Many have been thoroughly broken, such as FEAL [12]. The symmetric key cryptography scheme has following five components in all: 1. Plaintext: This is the original data that is taking as an input in the algorithm. 2. Encryption Algorithm: The encryption algorithm takes the plaintext and performs various substitutions and permutations according to the encryption techniques. 3. Secret Key: The encryption algorithm used the secret key over the plain text. The different keys used in substitutions and
permutations at every time, and the algorithm will produce a different output depending on the specific key being used at the time. 4. Ciphertext: This is the encrypted message generated by the encryption algorithm. Every time the ciphertext is different depends on the plaintext and the key. 5. Decryption Algorithm: Decryption algorithm takes the ciphertext and the secret key and generate the original plaintext. This is just reverse process of the encryption algorithm. The symmetric key encryption and decryption process shown in figure-1:
In supervised learning, the model work over the input and produce the output that is predefined or known. In contrast with the supervised learning, the unsupervised learning doesn’t have the known output. So that its work only on input by itself. These networks are being widely used in different applications areas together with other technologies for solving artificial intelligent problems, such as functions approximation, modeling, brain mapping, air traffic control, stock exchange, control systems, financial modeling, data compression, classification tasks or data processing [3],[6].
4. NEURAL CRYPTOGRAPHY ANN plays a very important role in cryptography now-a-days. Neural cryptography is a fine method to generate secret information over a public channel. Many papers and works is dedicated in the last few years towards neural cryptography, and a magnificent starting point found for this literature [5],[6]. We have used the counter propagation neural network for new proposed algorithm.
Figure 1: Symmetric key encryption process
3. OVERVIEW OF ARTIFICIAL NEURAL NETWORKS Artificial neural networks (ANN) were first introduced by Mc Culloch Pitts in 1943. ANN is inspired from biological neurons. A biologically neural network basically consists of tiny computing units, called neurons, arranged in different layers and interconnected with each other with some nerves connections called synapses. Simple mathematical computations are performed in each neuron. Artificial neural networks try to mimic the behavior of biological neurons and their interconnections. These networks are non-linear, adaptive, simple, and robust in nature. Normally an artificial neural network computes the things parallel which makes it powerful. It is also known as black box neural networks because we are only intended with the input and output, and we are least bothered about the hidden layers. All artificial neural networks can be divided in supervised and unsupervised learning.
Counter propagation neural network: It was introduced by R. Hecht-Nielsen in 1987. The counter propagation network is a twolayer network consisting of two feed-forward layers. The network was introduced by Hecht-Nielsen (1987, 1988). In its simplest version, it is able to perform vector-to-vector mapping similar to heteroassociative memory networks. Compared to bidirectional associative memory, there is no feedback and delay activated during the recall operation mode. The advantage of the counterpropagation network is that it can be trained to perform associative mappings much faster than a typical two-layer network. The counter propagation network is useful in pattern mapping and associations, data compression, and classification [7],[8],[9],[10]. In short counter propagation neural network (CPN) is a network that learns a bidirectional mapping. The CPN basically consist of three layers: Input layer, Kohonen layer and Grossberg layer. Figure-2 describes the basic architecture of CPN. It can be divided in two important categories i.e. Full CPN & Forward Only CPN.
Figure 2: Structure of CPN
Generally CPN is a composite learning scheme. It is a combination of supervised and unsupervised learning scheme. In the unsupervised learning, the target or output is unknown; while on the other hand, the output is predefined in supervised learning
process. Kohonen layer works on unsupervised learning scheme and the Grossberg layer work over supervised learning scheme. The weights are changed according to the learning process iteratively [2], [4].
Figure 3: Structure of first phase 1 of CPN , i= 1 to n The learning process of CPN contains the following phases: Phase 1: (Kohonen unsupervised learning)
, k= 1 to n Where
Step-1:-Calculate the Euclidean distance between input vector & the weights of each hidden node. Step-2:-Detect the winner node with the shortest distance.
x= input training vector y= target output = weight from X-input layer unit
Step-3:-Modify the weights that connected to the winner node in hidden layer
= weight from Y-input layer unit
Figure 4: Structure of second phase 2 of CPN Phase 2: (Grossberg supervised learning) Step-1:-Calculate the Euclidean distance between input vector & the weights of each hidden node.
Step-3:-Let the link connected to the winner node to output node is set as 1 and the other are set to 0. Step-4:-Adjust the weights using the following equatins: , k= 1 to m
Step-2:-Detect the winner node with the shortest distance.
, i= 1 to n Where
= weight from cluster layer unit to y output layer = weight from cluster layer unit to x output layer
5. SYMMETRIC KEY CRYPTOGRAPHY Here we proposed a new cryptographic algorithm with Counter propagation method. Encryption: 1. 2. 3.
Get input data from the sender in ie plaintext. Convert plain text in ASCII format. Convert the ASCII value in to binary value (use as Target value for the Grossberg layer).
4.
Use this binary value as an input in to first Khonen layer of the CPN network and generate the cipher text with unsupervised learning scheme. 5. Send this cipher text and target value to the receiver. Decryption:1. Receiver receives the cipher text and target value sending by the sender. 2. Send that cipher text as input in to Grossberg layer of CPN network and set the target value that sanded by the receiver. 3. When the output layer of the Grossberg network is same as target value then convert that binary value in to ASCII and then ASCII convert to corresponding to plain text.
Figure-5: Flow Chart of Proposed Algorithm
6. CONCLUSION After implementing the method using MATLAB we found that soft computing methods play a very important role in neural cryptography. The prime objective of this research paper to generate a secure symmetric key cryptographic algorithm using counter propagation neural networks, and hence communicate the
information over the wired or wireless network medium with the effective and efficient way which fits to the required objective of sending and receiving the data securely. Also, for this algorithm low or high bandwidth does not affect the performance. Consequently we can say that our approach is new one, easy to use, fast and simple.
7. REFERENCES [1] Menezes, P. van Oorschot and S. Vanstone, “Handbook of Applied Cryptography”. CRC Press, First ed., 1997.
Network” International Journal of Emerging Technology and Advanced Engineering, (ISSN 2250-2459), Vol. 3, Issue 12, December 2013.
[2] Fi-John Chang, Yen-Chang Chen ,” A counterpropagation fuzzy neural network modeling approach to real time streamflow prediction”, journal of hydrology, Elsevier, 6 February 2001.
[7] Zacek M. Zurada, An Introduction to Artificial Neural Network Systems, 1992, Jayco Publications.
[3]
[9] Hecht-Nielsen, R. (1987b), ‘Counterpropagation Networks’, IEEE International conference on Neural Networks II., pp. 19-32.
Eva Volna, Martin Kotyrba, Vaclav Kocian and Michal Janosek “Cryptography based on neural network” Proceedings 26th European Conference on Modelling and Simulation ©ECMS Klaus G. Troitzsch, Michael Möhring, Ulf Lotzmann (Editors) ISBN: 978-0-95649444-3 / ISBN: 978-0-9564944-5-0, ecms2012.
[4] Vikas Gujral, “Cryptography using Artifical neural network”, Engineering National Institute of Technology Rourkela-769008 Orissa, Session 2005-2009. [5] Mohammed M. Alani, “Neuro-Cryptanalysis of DES”, World Congress on Internet Security (WorldCIS-2012). [6] Adel A. El-Zoghabi, Amr H. Yassin, Hany H. Hussien, “ Survey Report on Cryptography based on Neural
[8] Hecht-Nielsen, R. (1987a), ‘Counterpropagation Networks’, Applied Optics, 26(23), pp. 4079-4984.
[10] Laurene Fausett(1994), ‘Fundamentals of Neural Networks , Architecutre, Algorithms and Applications’, published by arrangement with Pearson Education, Inc. and Dorling Kindersley Publishing Inc. [11] William Stallings, Network Security Esseantia: Applications & Standards, fourth edition, pearson publication, ISBN: 13:978-0-13-610805-4. [12] http://en.wikipedia.org/wiki/Cryptography#Symmetrickey_cryptography