見えるセキュリティ
TLSのバージョン比較(1.2/1.3)
TLS 1.2 VS TLS 1.3
この概念とは?
TLS 1.2とTLS 1.3は、通信を保護するTLSのバージョン違いです。接続先を確かめ、通信の鍵を準備する目的は共通しています。ここでは、準備の進め方やデータを送れるまでの待ち方を、同じ観点で比べます。
「1.2なら2往復、1.3なら0往復」と決まるわけではありません。初めて接続する場合と、前回の情報を使って接続する場合を分けて見ていきましょう。
- THEME
- crypto
- KIND
- protocol
- REVIEW
- self-reviewed ·
2つのバージョンを並べて、接続準備の違いを比べます。
各STEPは比較する観点です。1つの接続の時系列ではありません。Clientは接続する側、Serverは接続先を表します。
目的は共通、進め方が違う:TLS 1.2/1.3の比較
この教材では、既存のフルハンドシェイク・セッション再開教材と同じ条件を使います。TLS 1.2のフルハンドシェイクは、ECDHEとAES-GCMを使う例です。
比較する場面:新しい接続でのフルハンドシェイク
TLS 1.2
- 通信に使う方式を決める
- Serverを確認する
- 通信の鍵を準備する
TLS 1.3
- 通信に使う方式を決める
- Serverを確認する
- 通信の鍵を準備する
役割の整理です。この3項目の並びは通信の順序を表しません。
STEP 01 / 7
目的は共通、進め方が違う
STEP 1 / 7: 目的は共通、進め方が違う
TLS 1.2もTLS 1.3も、接続先を確かめ、通信を保護する鍵を準備します。違いは、そのための情報をいつ交換し、どの鍵で保護するかです。まずは共通する目的を押さえましょう。
技術的な詳細を見る
主な比較は、Server証明書で接続先を確認するフルハンドシェイクです。TLS 1.2側ではECDHE・AES-GCM・EMS、TLS 1.3側でも新しいECDHEを使います。両方の例で、鍵共有用の公開値と端点内の秘密値を使って鍵を準備します。秘密値そのものは送りません。 TLS 1.3では暗号スイートがAEAD方式と鍵導出用のハッシュを指定し、鍵共有方式・署名方式の合意を分けて扱います。TLS 1.2側のECDHE_RSAのRSAは署名の役割です。TLS 1.3でRSA鍵輸送が使われないことと、証明書や署名にRSAを使えないことは同じ意味ではありません。 TLS 1.2側の具体例はTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256です。主な比較にClient証明書は含めません。方式の合意と必要な検証が成功する例を扱います。バージョンだけで個別システムの安全性を格付けしたり、両バージョンの安全性が同一だと評価したりする比較ではありません。
この概念の要点
要点
同じ目的を、違う手順で実現する
TLS 1.2とTLS 1.3は同じTLSのバージョン違いです。接続先の確認や鍵の準備という役割を、どのタイミングで行うかに注目しましょう。
要点
暗号化する範囲と、鍵の用途を分けて見る
TLS 1.3ではServerHelloの後の証明書や署名も暗号化し、接続準備用とデータ通信用の鍵を分けます。通信の方向ごとに鍵が違うことは、今回の両バージョンに共通します。
要点
往復数には比較条件がある
今回のフルハンドシェイクはTLS 1.2で2-RTT、1.3で1-RTTです。通常の再開は両方1-RTTです。TCP接続の時間や、追加のやり直しはこの数に含めていません。
要点
再開と早期送信は分けて考える
セッション再開でも応答を待ってから通常データを送れます。0-RTTは条件が整った場合の早期送信で、受け入れやリプレイへの注意が必要です。
理解確認
参考資料
- RFCThe Transport Layer Security (TLS) Protocol Version 1.3
RFC 9846IETF / §1.3、§2〜2.3、§4.3.11、§4.5.2〜4.5.3、§7.1〜7.3、§8、Appendix D / 出典確認日(提供資料):2026-09-08
- RFCThe Transport Layer Security (TLS) Protocol Version 1.2
RFC 5246IETF / §6.2.3.3、§6.3、§7.1、§7.3、§7.4.9 / 出典確認日(提供資料):2026-09-08
- RFCElliptic Curve Cryptography (ECC) Cipher Suites for TLS Versions 1.2 and Earlier
RFC 8422IETF / §2、§5.3〜5.4、§5.7 / 出典確認日(提供資料):2026-09-08
- RFCTLS Elliptic Curve Cipher Suites with SHA-256/384 and AES Galois Counter Mode (GCM)
RFC 5289IETF / §3.2 / 出典確認日(提供資料):2026-09-08
- RFCTLS Session Hash and Extended Master Secret Extension
RFC 7627IETF / §3〜4、§5.1 / 出典確認日(提供資料):2026-09-08
- RFCTLS Session Resumption without Server-Side State
RFC 5077IETF / §3.1 / 出典確認日(提供資料):2026-09-08
- RFCTLS False Start
RFC 7918IETF / §1、§4 / 出典確認日(提供資料):2026-09-08
- RFCExample Handshake Traces for TLS 1.3
RFC 8448IETF / §3(ClientHello・ServerHelloの公開値) / 出典確認日(提供資料):2026-09-08