- ベストアンサー
SSL暗号化の仕組みについて教えてください
SSL暗号化の仕組みについて、教えてください。 公開鍵を使って共通鍵を生成し、共通鍵で通信をすることで傍受やなりすましによる情報漏えいを防ぐということはわかるのですが、 第三者が公開鍵も、共通鍵も傍受して、情報を傍受していたら情報漏えいのリスクは完全には排除できないような気がするのですが、その点にまでコメントされたものは本でもネットでも見当たらなかったので、 どなたかご存知の方がいらっしゃればご解説願います。 http://www.soumu.go.jp/joho_tsusin/security/kiso/k01_ssl.htm
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
質問者さんの知識がどの程度かわからないため、 概要を簡単に説明します。 暗号化の方式は大きく分けて次の2通りがあります ●公開鍵暗号方式 公開鍵で暗号化し、秘密鍵で復号化します。 公開鍵で暗号化したものは、秘密鍵を使わないと復号化できません。 (公開鍵では復号化できません) ●共通鍵暗号方式 暗号化、復号化ともに同じ鍵を使用します。 公開鍵暗号方式を使えば全て解決しそうですが、こちらは処理に時間がかかる等の欠点があります。 そのためSSLでは、次のようなことを行います。 ・データそのものの暗号化は共通鍵で行う。 ・データを暗号化した時の共通鍵は、公開鍵で暗号化し相手サーバーに渡す。 そのため、共通鍵は傍受されても、それは公開鍵で暗号化されているため問題ありません。 また、公開鍵を知られても秘密鍵がなければ復号化できないわけですから、問題ありません。 ちなみに、秘密鍵で暗号化すると公開鍵でしか復号化できなくなります。 これを利用したものが電子署名です。 以前同じようなことを答えたので、よろしければ参考にして下さい。 http://oshiete1.goo.ne.jp/qa1024098.html
その他の回答 (1)
- FEX2053
- ベストアンサー率37% (7991/21371)
実際その通りで、SSL通信の「そのセッションで使用する」共通鍵を 破られたら、通信内容は丸判りです。ですので、その共通鍵はとても 長い文字列の「鍵」を3重に掛けて送っています(3DESと言います)。 また、その「鍵」はその通信限りの使い捨てですから、仮にひとつの 通信で解析できたとしても、次の通信では使えません。結果として 「長い時間をかけて鍵が解析できたとしても意味がない」わけで、 「解析に時間のかかる長い鍵」と合わせて、セキュリティを確保して いるのです。 なお、同様な理由で「秘密鍵」を知られてもダメになるのですが、 これは「ベリサイン」などのSSLセッションを提供している会社が 厳重に保管して外部に漏らさないようになっています。
お礼
わかりやすいご説明、どうもありがとうございました。
お礼
ご丁寧な解説、そして過去の回答事例間教えていただき、どうもありがとうございます。 そもそも、このような分野に明るくないので、ちょっともやもやしている部分はありますが、なんとなくイメージがつかめた気がします。