COPYRIGHT (C) k-unet, ALL RIGHTS RESERVED.
  


 
 
 
  このページは?: 
 
トップ > 情報 コーナー> IT情報> 暗号化通信のしくみ 
 
 
 
transparent
k-unet(KDD-OBネット)
 
  IT情報
 
暗号化通信のしくみ

暗号化通信のしくみ
- SSL通信のしくみ -

 ウェブサイト閲覧で使われる暗号化通信のしくみを簡単にご紹介します。
 最初に参考のために、主なブラウザのSSL手順の有無でのアドレスバーの警告表示を下図に示します。

 今回導入したしくみはSSL(Secure Sockets Layer)手順といいます。SSLはネットスケープ社によって開発され、最初のブラウザであるNetscape Navigatorに実装されていました。その後、SSLの新しいバージョンがTLS(Transpot Layer Security)に名称変更されたので、SSL/TLSと表現されることもあります。
 SSL通信は、送信データが誰かに盗聴されてもその内容がわからないようにするために、通信するデータを暗号化することを基本とします。
 手順は、データそのものの暗号通信と、その暗号通信を実行するための鍵のやりとりのための暗号通信から構成されています。これら2つの暗号通信は、共通鍵暗号と公開鍵暗号という2種類の異なる暗号方式を使います。
 共通鍵暗号は暗号化する側と復号する側で同じ鍵を使う暗号化の方法です。したがって、この共通鍵がバレたら通信の内容もわかってしまいます。そこで、共通鍵の受け渡しに公開鍵暗号という暗号化する側と復号する側で違う鍵を使う暗号方式を使用します。
 おおまかにいって、5つのステップの手順で暗号通信を実現します。(下図を参照)


 ブラウザからホームページが載っているサーバにアクセスする(ステップ1)と、サーバからブラウザに向けて公開鍵とSSL証明書を送信してきます(ステップ2)。
 ここでSSL証明書とは、ブラウザが通信しようとしているウェブサイトが間違いなくドメイン所有者の運営するウェブサイトであることを認証局が証明したものです。SSL証明書が信頼できない場合には、ブラウザは右図のような警告を表示します。
 ブラウザが公開鍵とSSL証明書を受信すると、共通鍵を生成し、受け取った公開鍵で共通鍵を暗号化してサーバに送ります(ステップ3)。
 公開鍵暗号では暗号化する鍵と復号する鍵が異なっていて、公開鍵暗号は復号する秘密鍵がないと復号できません。この秘密鍵は公開鍵を送信したサーバ側で秘密にされていますので、共通鍵は当該サーバでしか読めないということになります。サーバ側で受信した公開鍵暗号を秘密鍵で復号して共通鍵の受け渡しが完了します(ステップ4)。
 以後の通信はブラウザ側とサーバ側で受け渡しが完了した共通鍵で通信内容を暗号化して通信します(ステップ5)。
 ステップ2で紹介したSSL証明書は、ブラウザでもサーバでもない第三者である認証局が発行したもので、たいていのブラウザではURLを入力するアドレス部分に鍵マークが表示されていますので、それをクリックすると見ることができます。 

(参考)
公開鍵暗号方式の原理的な説明は


などをご覧ください(4枚の図解で・・・の方がわかりやすいです)。


 


右の  のボタンをクリックするとページの先頭に戻ります