技術的に厳密でない公開鍵暗号化の解説。 金庫(この単語は暗号化のたとえとして使う)を使ったたとえ話です。 誰かが貴方へ重要なデータをネットで送りたい場合。 送信中のネットでのぞき見されると大変ですよね。 安全にデータを送るためにはどうすればよいか。 その時使えるのが公開鍵暗号化方式と秘密鍵と公開鍵です。 まず貴方は金庫(暗号化)と公開鍵を相手へ送ります。 相手はデータを金庫に詰め込んで公開鍵でカギをかけて送り返します(公開鍵は金庫のカギをしめることしかできません) 貴方は帰ってきた金庫を秘密鍵(貴方だけの秘密の鍵です)であけます。 これで安全にデータが貴方のもとへ送られます。 金庫は秘密鍵でしかあきません。 送るときは金庫は空っぽ。 帰ってくるときは金庫は鍵が閉まっているので盗み見されても大丈夫です。 問題は金庫の鍵の丈夫さです。 これは素因数分解の一意性を使います。 秘密鍵は巨大な素数でできています。 公開鍵は秘密鍵と巨大な素数の2つの素数の積でできています。 公開鍵を素数で割ると金庫からデータを取り出すことができます。 しかし公開鍵の2素数を見つけることは非常に困難なので金庫の鍵の安全は保たれます。 金庫の鍵を閉めた(暗号化した)とき公開鍵の数字を使ってどう暗号化するか。 金庫の鍵をあけたとき、秘密鍵を使ってどう元に戻すかは専門的になるので割愛します。