SSL暗号化通信とは

SSLは、一対の機器の間でデータの暗号化通信を行うことができる、トランスポート層の仕組み(プロトコル)です。

暗号化の種類と鍵長について

暗号化の種類について

データを第三者にとって意味をなさない値に変換することを暗号化といいます。暗号化通信には、対になる2つの鍵「共通鍵暗号方式」「公開鍵暗号方式」の仕組みを用いて行われます。暗号化された文章はたとえ途中で盗聴されたとしても、秘密鍵を保持していない第三者には解読することができません。これにより情報漏えいを防ぐことが可能となります。

公開鍵暗号方式
公開鍵暗号方式の暗号化と復号
共通鍵暗号方式
共通鍵暗号方式の暗号化と復号

鍵長とは?

また鍵長とは、暗号化処理で暗号化と復号に用いられるデータ量(暗号鍵)の大きさを示す尺度で、一般的に1024bit・2048bitといったビット単位で表現されます。

種類 鍵長
RSA 公開鍵暗号 512bit、1024bit、2048bit、3072bit
AES 共通鍵暗号 128bit、192bit、256bit

鍵長が長ければ長いほど、暗号文は解読しにくくなり安全になりますが、計算手順は増えるため暗号化・復号に時間がかかるようになります。 また、極端に短い鍵長の鍵を使用することはセキュリティ上好ましくなく、第三者に解読されてしまう恐れもあります。
GMOグローバルサインで用いているRSAは、公開鍵暗号の1つで、セキュリティ上の脆弱性の観点から、現在では基本的に鍵長2048bit以上のRSA鍵を使用するよう推奨されています。

SSL暗号化通信の流れ

クライアント側から通信のリクエストがあると、まずサーバ側から「公開鍵」が送付され、それを元にクライアント側で「共通鍵」が生成され、サーバ側にも送られます。
次にクライアント側が生成された共通鍵を使って暗号化した個人情報や決済情報などのデータをサーバ側に送り、サーバ側は事前にクライアント側から送られた共通鍵を使ってデータを復号します。

SSL暗号化通信の流れ
  • 接続要求
    クライアント側からSSL通信のリクエストをサーバ側へ送信。
  • SSLサーバ証明書と公開鍵をクライアント側へ送付
    サーバ側から、公開鍵付きのSSLサーバ証明書がクライアント側に送付。
    クライアント側のブラウザに搭載されているルート証明書で署名を確認し、SSLサーバ証明書を検証。
    ※GMOグローバルサインをはじめとする「信頼のある認証局」のルート証明書は、あらかじめ主要PCブラウザや携帯端末に搭載されているので、ユーザ側で新たにインストールする必要がありません。
  • 共通鍵(セッションキー)を暗号化しサーバ側へ送付
    クライアント側で生成された暗号用の「共通鍵(セッションキー)」を、サーバ側から送られてきた公開鍵を用いて暗号化し、サーバ側へ送信。
    サーバ側に送信された共通鍵は、サーバ側で保持している秘密鍵で復号され、共通鍵が取り出される。
  • SSL暗号化通信開始
    個人情報などの機密性の高いデータを、クライアント側で保持している共通鍵で暗号化しサーバ側へ送信。
    サーバ側は、受け取った暗号データをサーバ側で保持している共通鍵で復号してデータを取得する。
    ※共通鍵は、サーバとクライアントが使用するブラウザの双方が対応する、最も強度の高い暗号方式・鍵長が使用されます。

OSI参照モデルで表すSSLプロトコル

SSLプロトコルをOSIのネットワーク階層モデルで表すと、トランスポート層とプレゼンテーション層の間に位置し、上位のアプリケーション層やプレゼンテーション層(HTTP / POP/ FTP / など)から 、暗号化などセキュリティ対策を施した通信が行われます。

OSI参照モデル HTML、SSLの部分を暗号化

SSLサーバ証明書における暗号化強度の確認方法

Internet Explorer

SSL暗号化されているページを右クリックしプロパティを選択して表示された画面の"接続"の部分で確認することが可能です。

ie_sslproperty.png

Google Chrome

【1】アドレスバーの鍵の部分をクリックするとダイアログが出るので、「証明書」をクリックします。

ch_sslproperty01.png

【2】「詳細(Details)」タブをクリックすると、「署名アルゴリズム」「署名ハッシュアルゴリズム」の値などの各種情報を確認することができます。

ch_sslproperty02.png

SSLの種類や常時SSL化のメリットなど