SSLとTLSの違いとは?
SSLに取って代わったTLS
2023年12月8日
著者: Ahona Rudra
翻訳: 高峯 涼夏
この記事はPowerDMARCのブログ記事 What is the Difference Between SSL and TLS? の翻訳です。
Spelldataは、PowerDMARCの日本代理店です。
この記事は、PowerDMARCの許可を得て、翻訳しています。
最近、SSLやTLSに関するニュースを耳にする機会が増えてきたかもしれません。
これらの用語は、ブラウジングの際にその重要性をより多くの人に認識してもらうために、Googleなどの企業によって使用されています(あなたのことですよ、Chrome)。
SSLとTLSの間には明確な違いがあります。
これらはインターネット上で送信されるデータを暗号化する2つのプロトコルです。
これらのプロトコルは、Webサーバとブラウザ間の暗号化されたリンクを確立したい暗号学者や、ネットワークセキュリティの専門家や開発者のためのものです。
SSLとTLSとは?
安全な接続は暗号化されています。
暗号化により、送受信するデータを保護し、他人がそれを読むことができないようにします。
暗号化にはSSLとTLSの2種類があります。
それぞれに長所と短所がありますが、どちらも安全な接続を提供します。
SSL
SSL(Secure Sockets Layer)はC言語で書かれた暗号プロトコルで、コンピュータネットワーク上で通信セキュリティを提供します。
暗号化によって、データの完全性と機密性を保護します。
TLS
TLS(Transport Layer Security)は、インターネット上での安全な通信のための規格です。
これにより、クライアント/サーバアプリケーションは、情報の盗聴や改竄を防ぐように設計された方法で、ネットワーク上で通信することができます。
SSL/TLS証明書が必要な理由とは?
SSL/TLS証明書は、Webサイトとユーザ間で送信されるデータを暗号化します。
これにより、送信する情報は安全に保護され、他人には見えません。
これは、クレジットカード番号やパスワード、その他のデータなどの機密情報を保護するために重要です。
SSL/TLS証明書がない場合、Webサイトと同じネットワーク上の誰でも、サーバとユーザのWebブラウザ間のトラフィックを傍受することができます。
これにより、やりとりされるすべての情報を見たり、送信前に情報を改竄することさえ可能です。
したがって、Webサイト構築のコストを計算する際には、SSL/TLS証明書を考慮に入れることも重要です。
SSLとTLSの違い
TLSとSSLは、インターネット上での安全な認証とデータ転送を提供します。
しかし、TLSとSSLはどのように異なるのでしょうか?
気にする必要はあるのでしょうか?
SSL | TLS |
---|---|
SSLはSecure Sockets Layerの略です。 | TLSはTransport Layer Securityの略です。 |
Netscapeが1995年にSSLを作成しました。 | Internet Engineering Taskforce(IETF)が1999年に初めてTLSを開発しました。 |
SSLには3つのバージョンがあります: ・SSL 1.0 ・SSL 2.0 ・SSL 3.0 | TLSには4つのバージョンがあります: ・TLS 1.0 ・TLS 1.1 ・TLS 1.2 ・TLS 1.3 |
SSLは全てのバージョンで脆弱性が発見され、全て非推奨となっています。 | 2020年3月以降、TLS 1.0と1.1はサポートされなくなりました。 ほとんどの場合、TLS 1.2が使用されます。 |
Webサーバとクライアントは、明示的に接続を確立する暗号プロトコルであるSSLを用いて安全に通信します。 | TLSを使用することで、Webサーバとクライアントは秘匿された接続を介して安全に通信することができます。 これにより、TLSはSSLに取って代わりました。 |
SSLとTLSの動作におけるその他の主な違いは以下の通りです。
- メッセージ認証
- SSLとTLSの主な違いの1つはメッセージ認証です。
SSLはメッセージ認証コード(MAC)を使用して、メッセージが送信中に改竄されないようにします。
一方、TLSはMACを使わず、暗号化などの他の手段で改竄を防ぎます。 - レコードプロトコル
- レコードプロトコルは、TLSとSSLの両方で使用される、安全な通信チャネルを通じてデータを運ぶ方法ですが、若干の違いがあります。
TLSでは1つのパケットに1つのレコードしか含まれませんが、SSLではパケットごとに複数のレコードを含むことができます(ただし、これはあまり実装されていませんでした)。
さらに、TLSのレコードプロトコルには、圧縮やパディング(データのサイズを一定に保つために余分なデータを追加すること)のオプションなど、SSLにはない機能がいくつかあります。 - 暗号スイート
- TLSは、暗号化および復号化に使用されるアルゴリズムである様々な暗号スイートをサポートしています。
最もよく知られた暗号スイートは、完全前方秘匿性(PFS)を提供し、任意の鍵長で使用できる楕円曲線に基づくEphemeral Diffie-Hellman(DHE)鍵交換です。
他にもPFSをサポートするいくつかの暗号スイートがありますが、あまり使用されていません。
SSLは、1024ビットのRSA鍵を使用するPFSを持つ暗号スイートを1つだけサポートしています。 - アラートメッセージ
- SSLプロトコルは、通信中の特定のエラーについてクライアントやサーバに通知するためにアラートメッセージを使用します。
TLSプロトコルには同等のメカニズムがありません。
要約すると、SSLはもはや使用されておらず、TLSは、すべての人が使用する現在の暗号化標準として、時代遅れのSSLプロトコルに代わる新しい用語です。
技術的にはTLSの方が正確ですが、SSLという用語が広く使用されています。
なぜTLSがSSLに取って代わったのか?
オンラインアプリケーションや転送中のデータを盗聴や改竄から守るために、TLS暗号化は今や日常的な手順となっています。
ただ、TLSは2012年のCrimeや2014年のHeartbleedなどのような侵害に対して脆弱でした。
TLSは効率とセキュリティの面で大きな進歩を示しているものの、最も安全なプロトコルであると信じるのは非現実的です。
Consensus Development社のChristopher AllenとTim DierksがSSL 3.0を改良したTLS 1.0プロトコルを作成しました。
名前の変更によって両者に大きな違いがあるように思われるかもしれませんが、実際にはそれほど大きな違いはありません。
Dierksによると、Microsoftが面目を保つために名前を変えたそうです。
彼は次のように述べています。
IETFがNetscapeのプロトコルを支持したかのような印象を与えないようにするため、私たちは交渉の一環としてSSL 3.0のブランド名を変更する必要がありました(同じ理由で)。
その結果、TLS 1.0(これがSSL 3.1でした)が作成されました。
もちろん、振り返ると、この状況全体が馬鹿げているように思えます。
SSLはTLSに取って代わられ、事実上すべてのSSLバージョンは、文書化されたセキュリティ上の欠陥により時代遅れとみなされています。
例えば、Google Chromeは2014年にSSL 3.0の使用を停止しました。
現代のほとんどのオンラインブラウザはSSLを全くサポートしていません。
SSL証明書をTLS証明書に置き換える理由とは?
既存のSSL証明書を新しいTLS証明書に置き換える主な理由は、それらが互いに互換性がないためです。
つまり、異なるプロトコルとアルゴリズムを使用しているためです。
一方のプロトコルを使用するブラウザやクライアントアプリケーションは、両者が明示的な設定変更を行わない限り、他方のプロトコルを使用するサーバと安全に接続することができません。
最後に
SSL証明書もTLS証明書も、比べてみると、データフローを暗号化するという同じ機能を提供します。
SSLを改良し、より安全にしたものがTLSです。
しかし、オンラインで広く利用可能なSSL証明書も、Webサイトを保護するという機能は同じです。
実際には、どちらもHTTPSアドレスバーを提供しており、これはオンラインセキュリティの特徴的な機能として認識されるようになりました。
SSLとTLSがWebサイトを不正使用から守る一方で、DMARCはメールドメインをなりすましから保護します。
DMARCはメール認証の標準で、ドメイン名になりすます不正な送信元からのメールに対して措置を講じることができます。
PowerDMARCを使用してDMARC実施への道を歩み始めることで、ドメインを完全に管理し、市場で最も迅速にメールチャネルに対する可視性を獲得し、より厳格なポリシーに安全に移行することができます!