View
207
Download
23
Category
Preview:
Citation preview
PRESENTED BY:- pRoject guide :-
Diwakar Tyagi (0813310408) Mr. Suryaprakash
Sarwesh Singh (0813310071)
Namit Varshney
In symmetric cryptography, the sender and receiver use a shared key to encode and decode plain text.
In asymmetric algorithms, users have their own private and public keys.
There are some advantages and disadvantages in both methods in terms of speed and level of security.
Symmetric algorithms are a lot faster than asymmetric ones. But they do need a shared key. How can we get a shared key via a public channel and
protect it against opponents? There are many ways to do this, which are more or less
effective, but We want to offer a rather new and absolutely secure method: Neural cryptography.
The objective is to develop the neural network one for each sender and receiver. Then after synchronization the two networks will share the key on public channel.
A Neural Network generally maps a set of inputs to a set of outputs
Number of inputs/outputs is variable
The Network itself is composed of an arbitrary number of nodes with an arbitrary topology
Neural Network
Input 0 Input 1 Input n...
Output 0 Output 1 Output m...
Definition of a node:
• A node is an element which performs the functiony = fH(∑(wixi) + Wb)
fH(x)
Input 0 Input 1 Input n...
W0 W1 Wn
+
Output
+
...
Wb
NodeNode
ConnectionConnection
Binary logic application fH(x) = u(x) [linear threshold]
Wi = random(-1,1)
Y = u(W0X0 + W1X1 + Wb)fH(x)
Input 0 Input 1
W0 W1
+
Output
Wb
Here we will use a neural network which consist of an input vector X, a hidden layer Sigma s, a weights coefficients W between the input vector and the hidden layer, and an activation procedure ? that counts the result value t. Let's call such a neural network a neural machine. It can be described by three parameters: K, the number of hidden neurons, N, the number of input neurons connected to each hidden neuron, and L, the maximum value for weight {-L..+L}
Hebbian learning rule
Anti-Hebbian learning rule
Random-walk learning rule
To count the output value, we use a simple method:
How do we update the weights?We update the weights only if the output values of the neural machines are equal.There are three different rules:
This application will allow you to share the key on public channel.
Provide a secure method to share the key.
Enhance the security level in sharing the secrete data over public channel.
All the members of team are well familiar with windows.
All the members are familiar with C# and some skills required by Neural networks.
http://en.wikipedia.org/wiki/Neural_cryptography
http://cryptome.org/neuralsub.ps
http://theorie.physik.uni-wuerzburg.de/~ruttor/neurocrypt.html
Recommended