Publickey Cryptography

Introduction

Encryption using symmetric key algorithms has the problem of key distribution. The problem arises because in symmetric key cryptography, the keys have to be distributed using a secure channel. Every means of electronic communication is insecure as it is impossible to guarantee that no one will be able to tap communication channels. So the only secure way of exchanging keys would be exchanging them personally. In asymmetric, or public key, cryptography there is no need for exchanging keys, thus eliminating the key distribution problem. Below we present a brief history of public key cryptosystems, which is based upon the information in Chapter 5 of [3]

Diffe - Hellman - Merkle Key Exchange 

In 1974, Whitfield Diffie and Martin Hellman teamed up to work on finding a solution to the key distribution problem. In due course, Ralph Merkle joined them.  By 1976, using one-way functions and modular arithmetic, they developed a strategy to solve the key exchange problem. They made a fundamental breakthrough in conceptual terms but did not offer a real world solution to the problem of key exchange. They were the first to propose the concept of asymmetric ciphers in which Alice has two keys instead of one, as in symmetric ciphers. One key (public/published) is for encryption, which Alice makes public. If anyone wants to send a secret message to Alice, he encrypts the message with the encryption key. The second key (secret/private), which is for decryption, is secret and only Alice knows it. Alice can use her secret key to decrypt a secret message sent to her, which is encrypted using her public key.

R.S.A (Rivest, Shamir, Adleman)

The RSA algorithm, based on the original work of Diffie, was named after its three inventors - Ronald Rivest, Adi Shamir and Leonard Adleman. They invented the algorithm in 1977 and published it in Communications of ACM in 1978. RSA is an asymmetric cryptosystem. Using this system you can send a message to Bob, encrypted with his public/published key, and when he receives it he can decrypt it with his secret/private key. The security of the system relies on factoring large numbers, which is computationally very difficult. The private and public keys are functions of large (100-200 digit) prime numbers. Recovering the private key from the public key is considered to be equivalent to factoring the product of the two prime numbers. With large numbers, this is considered a major computational task, even by today’s standards, and is believed to be, in terms of time, beyond the capability of any existing technique on the fastest computer currently available. 

The Secret History

In 1997, the British Government Communication Headquarters (GCHQ) announced that they had developed a public key cryptosystem by 1973. Three people James Ellis, Clifford Cocks and Malcolm Williamson were involved in developing the system. James Ellis was credit with developing the concept of asymmetric key system, Clifford Cocks independently invented the RSA algorithm and Malcolm Williamson developed the key agreement protocol which is know as Diffe- Hellman- Merkle key exchange protocol.