TLS 【Transport Layer Security】 SSL/TLS
概要
TLS(Transport Layer Security)とは、インターネットなどのIPネットワークでデータを暗号化して送受信するプロトコル(通信手順)の一つ。送受信データの暗号化による盗み見の防止、相手方の認証による真正性の確認(なりすまし防止)、経路途上での改竄検知などを行うことができる。TLSはデジタル証明書(公開鍵証明書)による通信相手の認証(一般的にはサーバの認証)を行い、中継装置などネットワーク上の他の機器によるなりすましを防止する。また、共通鍵暗号(秘密鍵暗号)によって通信を暗号化し、ハッシュ関数を応用してデータの改竄を検知することができる。
Webコンテンツの送受信に使われるHTTPと組み合わせた「HTTPS」(HTTP over SSL/TLS)が特によく知られ、Webサイトと閲覧者のWebブラウザの間で認証情報や個人情報、決済情報などの送受信を安全に行う手段として広く普及している。
TLSはTCPやUDPと同じ、いわゆるトランスポート層のプロトコルで、TCPの代替として利用することができるため、HTTPに限らず様々な上位層のプロトコルと組み合わせて使用され、インターネットにおける汎用的な通信の暗号化方式として定着している。UDPと組み合わせることができる派生仕様もあり「DTLS」(Datagram TLS)という。
デジタル証明書の運用
TLSでは公開鍵暗号を利用するため、サーバ側に認証局(CA:Certificate Authority)によって署名されたデジタル証明書(SSLサーバ証明書)が、クライアント側に同じ認証局の証明書か最上位認証局(ルート認証局)のルート証明書が必要となる。
実際の運用では、サーバは著名なルート認証局により認証された中間認証局から得た証明書を提示することが多い。Webブラウザなどのクライアントソフトには著名ルート認証局の証明書があらかじめ同梱されており、通信相手ごとにいちいち利用者が証明書の取り寄せなどを行う必要はない。
SSLとの関係
当初の標準規格は「SSL」(Secure Socket Layer)と呼ばれ、SSL 3.0が改訂される際に同時に名称が改められて「TLS 1.0」が生まれたが、SSLという名称が既に広く定着していたため、実際にはTLSを指していてもSSLと表記したり、「SSL/TLS」「TLS/SSL」などと両者を併記することが多い。
現在実際に使われているのはほとんどがTLSである。SSLの最終版であるSSL 3.0には保安上の弱点(脆弱性)が発見されており、もはや十分に安全とは言えない状況になっているため、インターネット上で運用されるサーバは早急なTLSへの移行とSSL旧バージョンの無効化が推奨されている。