1976年以前には、暗号と言えば共通鍵暗号であった。
これは、暗号化と復号に同じ共通の鍵を使うものである。
共通鍵暗号には、鍵の配送に問題があった。

共通鍵暗号を用いた通信のおおまかな流れは次のようになる。
受信者は、あらかじめ送信者に対して密かに共通鍵 C を渡しておく。
送信者は C を使ってメッセージを暗号化し、受信者に向かって送信する。
受信者は、C を使って暗号文を復号し、メッセージを読む。

上の過程において、傍受者が共通鍵Cを傍受してしまっていた場合、
この共通鍵を用いた送信者、受信者間の暗号通信は意味を持たないことになる。

すなわち、送信者はCを用いて、メッセージを暗号化するが、
このメッセージを傍受した傍受者は、入手していたCによって暗号文を復号し、メッセージを読むことができる。
これは、共通鍵暗号方式が、暗号化と復号に共通の鍵を用いることにより発生してくる問題である。

これに対して公開鍵暗号は、鍵の配送が容易になる。
つまり :受信者は自分の公開鍵(暗号化のための鍵)P を全世界に公開する。
受信者に対して暗号通信をしたい者(送信者)は、公開鍵 P を使ってメッセージを暗号化してから送信する。

受信者は、公開鍵 P と対になる秘密鍵S を密かに持っている。
この S を使って受信内容を復号し、送信者からのメッセージを読む。
傍受者は、公開鍵 P は知っているが、秘密鍵 S は受信者だけが知っている情報であるので分からない。
P から S を割り出すことは(計算時間的に)極めて難しい。そのため、暗号文を復号することはおよそできない。
暗号化のための鍵と、復号のための鍵を別の非対称のものにすることによって、鍵の配送の問題を解決したのである。
公開鍵暗号 - Wikipedia