This encryption algorithm Whitfield Diffie and Martin Hellman was the starting point for the asymmetric system, based on public and private keys. Its importance is mainly due to being the onset of asymmetric systems, since in practice only applies to the exchange of symmetric keys, and this feature is widely used in the different insurance systems implemented on the Internet, and SSL (Secure Socket Layer) and VPN (Virtual Private Network). Mathematically based on the powers of the numbers and function mod (discrete module). Linking these two concepts are defined discretely power of a number as Y = Xa mod q. While the discrete output calculation is easy, getting its inverse function, the discrete logarithm, has no analytical solution for large numbers. (Akaike, 1973)
Introduction
The public key cryptosystems were invented in the late 70's, with the help of the development of complexity theory around that time. Noting that based on the difficulty of a problem and take thousands of years to resolve and a little luck, it was noted that a cryptosystem could be developed with two keys, one private and one public. With the public key can encrypt messages and decrypt the private key. So the owner of the private key would be the only one who could decipher the messages, but anyone who knows the public key could send them privately. Another idea that was observed was the key exchange. In a communication between two parties would be very useful to generate a common secret key for bulk encryption using a secret key cryptosystem (e.g., block cipher). In fact, Whitfield Diffie and Martin Hellman used ideas of number theory to construct a key exchange protocol, which began the era of public-key cryptosystems. Shortly thereafter, Ronald Rivest, Adi Shamir and Leonard Adleman developed a cryptosystem that was the first real public key cryptosystem, can encrypt and manage digital signatures. Later, more were found public key cryptosystems used different underlying ideas (for example, knapsack problems, various groups in finite fields, and lattices). Many of them were found to be unsafe. However, the Diffie-Hellman and RSA appear to be the two strongest so far. (Ashby, 1993)
Description of Diffie-Hellman
Diffie-Hellman is a commonly used protocol for exchanging keys. In many cryptographic protocols two parties wish to communicate. However, everyone assumes that initially does not have a secret and thus cannot use a secret key cryptosystem. The key exchange by Diffie-Hellman protocol remedies this situation by allowing the construction of a common secret key over an insecure channel Communication. It is based on a problem related to natural logarithms, called the Diffie-Hellman problem. This problem is considered difficult, and in some instances as hard as the discrete logarithm problem. Diffie-Hellman protocol is generally considered safe when used with appropriate mathematical groups. In particular, the generating element used in the "exponentiation" should have a great time. Discrete log algorithms can be used to launch attacks against Diffie-Hellman, and passive attack is the ...