Transport Layer Security
通信内容を暗号化するよ
インターネットで使うよ
「TLS」と表現されるのが一般的だよ
「SSL」のことだと思っていいよ
簡単に書くよ
Transport Layer Security(読:トランスポート・レイヤー・セキュリティ)とは
いわゆる「TLS」のこと。
用語の中身としては
一般的に「SSL」と呼ばれているもののことだと思っていいですよ、な用語
です。
もう少し具体的に書くと
インターネット上でやり取りする情報を暗号化して送受信するための仕組み(でSSLの後継者的なやつ)
です。
詳しく書くよ
最初に留意事項です。
「TLS」と言われて「あぁ、アレのことね」と分かる方は最後まで読む必要ありません。
TLSの正式名称(?)が「Transport Layer Security」です。
「Transport Layer Security」の頭文字を取ったのが「TLS」ね。
※「Transport Layer Security」を何となく日本語にすると「トランスポート層の安全」となります。[詳細]
以上が「TLS」の意味を知っている人向けの説明です。
「TLSって何?美味しいの?」な人は、このまま読み進めてください。
用語の中身について説明します。

それでは、いってみましょう。
まずは予備知識として「SSL(Secure Sockets Layer)」について説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。
SSL(Secure Sockets Layer)は「インターネット上の通信を暗号化するための仕組み」です。
インターネットをするときは線の中を情報がうねうね通りますが、線の中を通ってる間に情報がパクられたり盗み見られたりする恐れがあります。
「そんなことは、させない!」と熱く正義の心を燃やしても良いのですが、賢い人たちは一味違いました。
見られても実害がないようにすれば良いんじゃね?
と考えたのです。
彼らは、情報を送るときにメチャクチャにして、受け取ったときに元に戻せる方法を考えました。
そうすれば、途中でパクられようと、盗み見られようと、悪い人の手元に行くのはメチャクチャな情報です。
悪用しようにもメチャクチャなので、できません。
ざまーみろ、ばーか、ばーか。
そのような理念から生まれたのがSSLです。
ごめんなさい。
ちょっと適当なことを書きました。
実際に何を考えて生み出したのかは分かりません。
ただし
・通信内容を暗号化する
・だから盗み見られても大丈夫
というのは本当です。
以上を踏まえて
SSLの後継者的なポジションのやつ
であり
今の時代に「SSL」と呼ばれているものの正体
が「Transport Layer Security」です。
上でも書きましたが、一般的には「TLS」と表現されます。
※本ページでも以降は「TLS」と表現します。
SSLは最初「SSL 1.0」でした。
あれやこれやがあって「SSL 2.0」になりました。
バージョンアップしたわけです。
さらに、あれやこれやがあって「SSL 3.0」になりました。
さらに、あれやこれやがあって「SSL 4.0」……と見せかけて「TLS 1.0」になりました。
この時点でSSLの歴史は終了です。
SSLは「SSL 3.0」で滅びました。
以降、その役割はTLSに受け継がれています。
実際には少し違いますが、イメージはそんな感じです。
今の時代に「SSL」と言ったら実際には「TLS」を指しているはずです。
とはいえ「TLS」と言われても、あまり馴染みがありませんよね。
当時の人も同じように考えたのでしょう。
実際には「TLS」ですが「SSL」もしくは「SSL/TLS」と表現されることが多いです。
「自分は専門家じゃないよ」な人は「TLS」とか「SSL/TLS」とか出てきたら「SSL」と読み替えてOKです。
専門家な人は、一応、SSLとTLSを区別して覚えておいてください。
以上で、ざっくりとした概要の説明は終わりです。
次にTLSの仕組みについて、なんとなく見ていきましょう。
やり方自体はいろいろあるようですが、この説明を書いている時点の主流は以下の流れになります。
ちなみに、ここから先の説明はSSLで説明した内容と同じです。
すでにSSLの説明をご覧になった方は読んでも意味はないと思います。
1.まずクライアントさんがサーバさんに挨拶します。
2.挨拶を交わしたサーバさんは、クライアントさんに自己紹介のお手紙(サーバ証明書)を送ります。
お手紙の中にはサーバさんの「これを使って暗号化してね」な鍵(サーバの公開鍵)が入っています。
3.サーバさんから自己紹介のお手紙を受け取ったクライアントさんは、自分のやり取りしているサーバさんが本物か確認します。
場合によっては保証協会さん(認証局)に問い合わせたりもします。
確認して本物だった場合「これを使って暗号化してね」な鍵(サーバの公開鍵)を取り出します。
4.次にクライアントさんは、サーバさんと秘密の会話をするためのルール(共通鍵)を作ります。
5.作ったルール(共通鍵)を「これを使って暗号化してね」な鍵(サーバの公開鍵)を使って暗号化します。
6.暗号化されたルール(暗号化された共通鍵)をサーバさんに送ります。
7.サーバさんは、暗号化を解除する鍵(サーバさんの秘密鍵)を使って、暗号化されたルール(暗号化された共通鍵)を元に戻します(復号)。
これでクライアントさんもサーバさんもやり取りするためのルール(共通鍵)を手に入れました。
あとは、そのルール(共通鍵)に従ってやり取りをするだけです。
ルール(共通鍵)を知らない人は、やり取りを盗み見たところで、何が書いてあるか分からないってな理屈です。
これがTLSの仕組みですが、よく分からない人のために、もう少し簡略化した説明も書いておきますね。
1.まず宝箱とその宝箱を開ける鍵を2本用意します。
2.宝箱を開ける鍵をクライアントさんとサーバさんで1本ずつ持ちます。
3.あとは書いた内容を宝箱に入れてやり取りします。
これで、やり取りしている途中で宝箱を盗まれても、鍵がなければ中を見られません。
秘密は守られました。
めでたし、めでたし。
TLSの仕組みは、実はこれだけです。
宝箱を開ける鍵をクライアントさんとサーバさんで1本ずつ持って、情報は宝箱に入れてやり取りします。
ただし、宝箱を開ける鍵は、かなり大事ですよね。
宝箱を開ける鍵自体を盗まれてしまったり、怪しい人に渡しちゃったら大変です。
そこで、宝箱を開ける鍵をしかるべき相手(やり取りするサーバさん)にきちんと渡すために、あれやこれやとやっているのです。
これが、よく分からない人向けの説明です。
一言でまとめるよ
まぁ「Transport Layer Security」って単語が出てきたら「TLS
(インターネット上の通信を暗号化する仕組み)のことなんだな~」と お考えください。
おまけ
■訳してみるよ
「transport(トランスポート)」の意味は「運送」とか「運搬」とか「輸送」とかです。
「layer(レイヤ)」の意味は「層」とかです。
「security(セキュリティ)」の意味は「安全」とか「防犯」とかです。
何となく くっつけると
運搬層の安全
となります。






