SSLは、Netscape Communications社が開発した、インターネット上で暗号化通信を行うプロトコルです。
公開鍵暗号、秘密鍵暗号、ハッシュ関数、デジタル証明書等を組み合わせて暗号化通信を行います。
OSI参照モデルでは、トランスポート層とアプリケーション層の間に位置し、上位のアプリケーション層から、暗号化などの
セキュリティ対策を施した通信が行えるようになります。
先ほど説明したメッセージ認証や暗号方式は、SSLv2、SSLv3では以下の目的で使用されています。
|
SSLv3.0 |
SSLv2.0 |
セッション鍵交換用(公開鍵暗号) |
RSA DH Fortezza |
RSA |
認証用(公開鍵暗号) |
RSA DSS/DSA |
RSA |
セッションの暗号化(共通鍵暗号) |
RC4 RC2 DES/3DES |
IDEA RC4 RC2 DES/3DES |
メッセージ認証用(ハッシュ関数) |
SHA1 MD5 |
MD5 |
|
基本動作 |
SSL接続には大きく分けて2種類の方法があります。1つは、サーバ認証とセッションの暗号化をする方法、2つ目はサーバ認証、 ユーザ認証、セッションの暗号化をする方法です。 1つ目の方法はサーバ側に秘密鍵、暗号鍵、それに対する証明書を使用します。 2つ目の方法はサーバ側とユーザ側に秘密鍵、暗号鍵、それに対する証明書を用意する必要があります。
|
SSL通信接続手順 |
1.TCPコネクションの確立 TCPコネクションを確立します。
2.SSLセッションの確立
証明書の確認、暗号化方式を設定します。
3.データの送受信
2で設定した暗号化方法でデータをやり取りします。
4.通信の終了
SSLセッションを切断します。
TCPコネクション方法は今回は省きます。SSLセッションの確立方法を次の章で説明します。
|