SSL/TLSとは?
「Secure Sockets Layer」の略で、ネット上で流れるデータを暗号化したり、通信相手を認証することによってインターネットでやり取りされるデータを守ることです。
SSLとTLSの違いは?
TLSは、「トランスポート・レイヤー・セキュリティ」の略で、SSLの次世代規格で、実質的に「SSL」といえば、正確に言えばこちらを指していることがほとんどです。
代表的なSSLソフトウェア
OpenSSL
オープンソースのSSLソフトウェアです。通常は、WebサーバーのApacheと連携させて使用します。
IIS
Windows Serverに標準で同梱されています。
一般的な使い方
Webサーバーソフトウェアである「Apache」にモジュール(mod_sslモジュール)として「OpenSSL」をインストールして連携させて使用します。
ただ、IISに関しては、「Webサーバー機能」と、「SSL機能」をどちらも持っているので、通常は連携させる必要はないです。
SSLの機能
暗号化
公開鍵と秘密鍵のペアを使って、暗号化と複合化を行います。
改ざん検知
クライアント、サーバー間でやりとりされるデータが改竄されてないかを検知できる機能です。(例えば、ショッピングサイトで購入金額などを改竄されてしまうと問題になります。)
「公開鍵暗号」と「ハッシュ関数」を用いて実装されています。
認証機能
例えば、本物そっくりの偽サイトだったりするかもしれませんし、DNSサーバーの乗っ取り、DNSキャッシュポイズニングなどで本当にそのサイトが問題ないか証明することが難しいのです。
本当に問題ないことを「証明書」を利用することで証明しています。
SSLで使用している技術
SSLでは、下記の技術を利用しています。
- 暗号化
- メッセージダイジェスト
- デジタル証明書
暗号化
公開鍵暗号による暗号化により、第三者の盗聴を防止します。
公開鍵暗号
公開鍵と秘密鍵のペアを使って、暗号化と複合化を行います。
メッセージダイジェスト
データのハッシュ値を取り出して、データが改ざんされていないことを確認します。
デジタル証明書(サーバー証明書)
Webサーバーの持ち主が実在していることを証明する証明書です。認証局により発行されたサーバー証明書(サイト証明書)を使って、コンピュータが成りすまされていないか確認します。
利用されているプロトコル
HTTPS、POP3S、SMTPS
SCP、SFTP
これらはSSHを利用してリモートマシン間でファイルをコピーするプロトコルなのでSSLとは直接関係はない。
SSL/TLSのバージョンについて
SSLのバージョン
バージョン | リリース年 | 特徴 |
---|---|---|
1.0 | - | 使用禁止。設計段階でボツになったため、実装したソフトウェアは存在しない。 |
2.0 | 1995年 | 使用禁止。 |
3.0 | 1996年 | 2.0で発見された脆弱性を修正した。2015年6月にIETFにより使用禁止になった。 |
TLSのバージョン
バージョン | リリース年 | 特徴 |
---|---|---|
1.0 | 1999年 | |
1.1 | 2006年 | このバージョンでの実装は、非推奨とされている。 |
1.2 | 2008年 | 2018年6月現在の最新版で、このバージョンでの実装を推奨されている。 |
1.3 | 未定 |
この記事へのコメントはありません。