〇SSL/TLSは暗号化通信を行うプロトコル

SSLは"Secure Sockets Layer"の略称で、通信の暗号化、通信相手の認証、通信内容の改ざん検知の機能を有した、安全性の高いインターネット通信を行うためのプロトコルです。

TLSは"Transport Layer Security"の略称で、SSLの後継として作成されました。

SSLの名称が広く普及しているため、SSLとTLSを総省して、「SSL」と呼ばれることも多いです。

〇SSL/TLSの機能

SSL/TLSの機能により、通常の平文での通信と比べて、より安全な通信を行うことができます。

・ 通信の暗号化で盗聴対策
通常の通信では、通信内容は平文のため、通信経路上で通信を傍受・盗聴されてしまう危険性があります。

SSL証明書を利用したSSL暗号化通信では、通信内容は判読が困難な乱数に変換・暗号化されます。

SSL証明書所有者のみが所持する秘密鍵がないと複合化できないため、第三者に通信経路上で通信を傍受された場合においても、内容を判読することができず、盗聴対策として機能します。

・ 通信相手の認証
閲覧しているサイトが、正しいサイトではなく、正しいサイトに似せてつくった、なりすましのフィッシングサイトである可能性があります。

通常の通信でウェブサイトの見た目が全く同じ場合、ウェブサイトURLのFQDNやドメイン情報程度しか確認点がありませんが、なりすましか否かの判断基準としては弱いため、不安が残ります。

SSL/TLSの暗号化通信の場合は、ウェブサーバーにインストールされているSSL証明書を正当性の確認のために、利用することができます。

ウェブサイト閲覧者側としては、SSL証明書の所有者情報から、通信相手の正当性を確認することができるので、フィッシング詐欺による被害を回避しやすくなります。

ウェブサイト運営者側としては、より高い認証レベルのSSL証明書をサーバーへインストールして利用することで、自身の正当性をより効果的にアピールできます。

・ 通信内容の改ざん検知
送信側のデータと受信側のデータが同一であるかを確認するために、一方向ハッシュ関数をもちいて確認用のハッシュ値とよばれるテキストデータを作成し、送信側はデータとともに、ハッシュ値を合わせて送ります。

受信側は、受信したデータからハッシュ値を作成し、受信したハッシュ値と作成したハッシュ値を比較して、改ざんされていないかを確認します。

一方向ハッシュ関数とは、データを、ハッシュ値、またはフィンガープリント(拇印)と呼ばれるテキストデータに変換するアルゴリズムです。

同一のデータは必ず同じハッシュ値へ変換され、データに差異がある場合は、必ず異なるハッシュ値へ変換されます。

差異が微小であっても、大きく異なるハッシュ値へ変換されるように設計されていますので、改ざんの有無を確認できます。

データのサイズに関わらず、同じ長さのテキストデータに変換されますので、データ本文が膨大なサイズのデータであっても、簡単なテキストデータであっても、同じ時間で確認が行えます。

ハッシュ値から変換前のデータを復元するのは計算上不可能とされているので、ハッシュ値からデータ内容を読み解かれる心配もありません。


おすすめの関連ページ

SSL/TLSとは?

データライブラリー