セキュリティ
上級

TLS/SSL史 SSL 2.0→TLS 1.3 1995-2026(ティーエルエス史)

TLS Transport Layer Security 30年史 1995-2026。SSL 1.0 (1994 Netscape Taher Elgamal Father of SSL・公開せず)・SSL 2.0 (1995年2月 Netscape・初公開)・SSL 3.0 (1996年11月 RFC 6101・POODLE Attack 2014年破られる)→IETF統合・TLS 1.0 (1999年1月 RFC 2246 SSL 3.1相当)→TLS 1.1 (2006 RFC 4346)→TLS 1.2 (2008年8月 RFC 5246・GCM AEAD・10年Stand)→TLS 1.3 (2018年8月 RFC 8446 New Era・1-RTT Handshake+0-RTT Resume・PFS Perfect Forward Secrecy必須・ChaCha20+AES-GCM Suite限定・Removed: SHA-1+RSA Key Exchange+CBC+RC4 全廃)・QUIC (2012 Google Jim Roskind→2021 IETF RFC 9001・UDP+TLS 1.3 0-RTT組込・HTTP/3基盤)・OpenSSL (1998 Eric Young SSLeay→OpenSSL Project FOSS・現3.4 2024)→Heartbleed Bug (2014年4月 Neel Mehta Google→Codenomicon・$10B+被害推定)→OpenSSL 1.0.1g Patch・LibreSSL (2014 OpenBSD Theo de Raadt OpenSSL Fork)・BoringSSL (Google 2014 OpenSSL Fork内部利用)・mbed TLS (旧 PolarSSL ARM Embedded)・wolfSSL (旧CyaSSL)・rustls (2016 Joseph Birr-Pixton Rust Memory Safe・現rustls 0.23 2024)・Mutual TLS mTLS (Client+Server Cert)・Certificate Transparency (2013 Google Ben Laurie・Public Log)・Let's Encrypt (2014年11月 EFF+Mozilla+Cisco・Free DV Cert・5億+ Cert発行 2024・ACME RFC 8555)・cert-manager Kubernetes・Cloudflare Universal SSL (2014 Free)・AWS Certificate Manager (2016 Free DV)・SNI Server Name Indication (RFC 6066)+ESNI Encrypted SNI→ECH Encrypted Client Hello (2024 RFC 9000 Cloudflare先行)・Post-Quantum TLS: Kyber+Dilithium (2024 Cloudflare+Google統合)・¥0 OSS Free 2026 LE+Cloudflare→Universal HTTPS時代。

0 回閲覧
0 いいね
2026/4/30 更新

概要

TLS(Transport Layer Security)は、インターネット上で機密性・完全性・認証を保証するためのプロトコルである。1995 年に Netscape が SSL 2.0 を公開して以来、IETF によって標準化が進められ、現在は TLS 1.3(2018)をベースに QUIC(UDP 上で TLS 1.3 を実装したプロトコル)やポストクォンタム鍵交換が検討されている。1994 年に公開されなかった SSL 1.0 から始まり、2026 年には「Universal HTTPS」時代へと移行する見込みである。

主な特徴・仕組み

版公開年主要変更点代表的な数値
SSL 2.01995初公開、CBC モードのみ512‑bit RSA
SSL 3.019961 つのハンドシェイク、MAC 追加256‑bit MD5
TLS 1.01999RSA‑PKCS1 v1.5 で鍵交換1024‑bit RSA
TLS 1.12006CBC 攻撃対策128‑bit AES
TLS 1.22008GCM AEAD、SHA‑256256‑bit AES‑GCM
TLS 1.320181‑RTT ハンドシェイク、0‑RTT128‑bit ChaCha20-Poly1305
QUIC2012UDP + TLS 1.30‑RTT で 1 ms 以内
Post‑Quantum TLS2024Kyber‑512 + Dilithium‑2256‑bit PQC

ハンドシェイク

TLS 1.3 では「ClientHello → ServerHello → EncryptedExtensions → Certificate → CertificateVerify → Finished」の 1‑RTT で完結し、0‑RTT で再接続時の遅延を 0 ms 近くに抑える。QUIC ではさらに UDP の再送制御とマルチプレクシングを組み合わせ、平均 1 ms 以内のレイテンシを実現している。

鍵交換

TLS 1.3 では Diffie–Hellman で PFS(Perfect Forward Secrecy)を必須化。ECDHE‑P‑256 がデフォルトで、AES‑GCM か ChaCha20‑Poly1305 のいずれかが選択される。SHA‑1 と RSA‑PKCS1 v1.5 は完全に除外され、RC4 と CBC モードは廃止。

証明書

証明書は X.509v3 で、拡張キー使用(ServerAuth, ClientAuth)をサポート。Let’s Encrypt が 2014 年に導入した ACME(RFC 8555)により、DV 証明書を 5 億件以上発行。2025 年には「Certificate Transparency Log」を自動検証する機能が標準化され、証明書の不正発行をリアルタイムで検知できるようになった。

具体例・対応製品(テーブル必須)

製品名型番/バージョン対応 TLS バージョンQUIC/HTTP 3主要機能参考数値
OpenSSL3.0.8TLS 1.3なしFIPS 140‑2 互換256‑bit AES‑GCM
BoringSSL2025‑04TLS 1.3あり(QUIC 1.0)内部使用、Google Cloud0‑RTT 0.8 ms
LibreSSL3.8TLS 1.3なしOpenSSL からのフォーク128‑bit ChaCha20
mbed TLS2.28TLS 1.3なしARM Cortex‑M 用32‑bit ARMv7
wolfSSL5.0TLS 1.3あり(HTTP 3)IoT 専用128‑bit AES‑GCM
rustls0.23TLS 1.3なしRust で安全設計0‑RTT 1 ms
Cloudflare Universal SSL2026TLS 1.3あり(HTTP 3)CDN + DDoS 防御0‑RTT 0.5 ms
AWS Certificate Manager2025TLS 1.3あり(HTTP 3)無料 DV 証明書1 ms 以内
cert‑manager (Kubernetes)2026TLS 1.3なし自動証明書更新10 s 以内
Google QUIC (QUIC 1.0)2024TLS 1.3あり(HTTP 3)0‑RTT 0.6 ms

選び方・注意点

  1. TLS 1.3 の採用
    • 既存システムが TLS 1.2 しかサポートしない場合、レガシーサーバーを更新するか、プロキシで TLS 1.3 を終端する。
  2. QUIC の利用
    • 高速化が必要なリアルタイムアプリ(VoIP、ゲーム)では QUIC を採用。UDP のファイアウォール設定を確認。
  3. 証明書の自動更新
    • Let’s Encrypt の ACME を利用する場合、サーバー側に ACME クライアント(cert‑manager 等)が必要。
  4. Post‑Quantum への準備
    • 2025 年以降は PQC キー交換(Kyber‑512)を検討。現在は実験的であり、ハードウェアアクセラレーションが必要。
  5. パフォーマンス監視
    • 0‑RTT の再利用は再送時に失敗するとロールバックが発生。監視ツールで失敗率を 1 % 未満に抑える。

関連用語との違い

用語定義主な違い
SSL1990 年代に Netscape が開発したプロトコル。TLS の前身で、現在は非推奨。
TLS1999 年に IETF が標準化したプロトコル。SSL 3.0 の拡張版。
TLS 1.32018 年に RFC 8446 で定義。1‑RTT ハンドシェイク、0‑RTT、PFS 必須。
QUICGoogle が開発し、IETF が RFC 9001 で標準化。UDP 上で TLS 1.3 を実装し、HTTP 3 をベース。
mTLSMutual TLS の略。クライアントも証明書を提示。

よくある質問 (FAQ)

  1. TLS 1.3 で 0‑RTT を使うとセキュリティリスクは?
    0‑RTT は再送時に鍵が再生成されるため、鍵漏洩のリスクは低いが、再送失敗時にロールバックが必要。実装側でロールバックを許容できるか確認すること。

  2. Let’s Encrypt の無料証明書は有効期限が 90 日と短いのに、どのように運用するの?
    ACME クライアントを自動化し、証明書更新を 60 日前に実行。多くの CDN(Cloudflare、AWS ACM)では自動更新が組み込まれている。

  3. Post‑Quantum TLS を導入する際に注意すべき点は?
    PQC 鍵交換は現在実験的で、鍵長が長くなるため CPU 負荷が増大。ハードウェアアクセラレーション(AES‑NI、SHA‑NI)がある環境でのテストが必須。

まとめ

1995 年の SSL 2.0 から 2026 年の「Universal HTTPS」へ至るまで、TLS はプロトコル設計と実装の両面で大きく進化してきた。TLS 1.3 での 1‑RTT ハンドシェイクと PFS の必須化、QUIC による UDP 上での高速化、そして Let’s Encrypt と ACME による証明書自動化は、インターネット全体のセキュリティとパフォーマンスを向上させた。2025‑2026 年の動向としては、Encrypted Client Hello(ECH)での SNI 隠蔽、ポストクォンタム鍵交換の実装、そしてクラウドベースの自動証明書管理が主流となる見込みである。今後は、これらの技術を組み合わせて、ほぼ全ての通信が TLS 1.3 以上で保護される時代が到来する。

この記事について
カテゴリーセキュリティ
難易度上級
作成日2026/4/30