TLS1.3の1-RTTで暗号化できる理由について

Cebollaさん  
(No.1)
いつもお世話になっております。

TLS1.3について教えてほしいことがございます。
TLS1.3では、Client Hello、ServerHelloのやり取りで暗号化が開始されるとありました。
IPAの「TLS 暗号設定ガイドライン」では、ClientHelloでサーバーが指示したPSK使用し、ServerHelloで、事前に渡したPSKの使用許可をすると記載がありました。

PSKはいつ渡されているのでしょうか。また、そのPSKは暗号化をされずにやり取りされていると思うのですが、それは問題ないのでしょうか。

IPA「TLS 暗号設定ガイドライン」
https://www.ipa.go.jp/security/crypto/guideline/gmcbt80000005ufv-att/ipa-cryptrec-gl-3001-3.0.1.pdf
2024.03.11 22:26
GinSanaさん 
SC ブロンズマイスター
(No.2)
この投稿は投稿者により削除されました。(2024.03.12 11:04)
2024.03.12 11:04
むぐむぐさん 
(No.3)
PSKは初回接続の場合と、再接続の場合の2パターンで使用されます。
初回接続の場合は事前に手動でクライアントとサーバ側にセットしておきます。

再接続の場合はまず、初回接続をP.12の記載通りPSKを使用せずに接続し、初回接続時にNewSessionTiket(ticket)がサーバから送られた際(このタイミングでは暗号化されて送信される)にクライアント側で保存します。

クライアントからPSKを送信する場合は、そもそも暗号化開始前に必要な情報のやりとりになるので暗号化ができないです。
2024.03.12 11:46
Cebollaさん  
(No.4)
むぐむぐさん

ご説明ありがとうございます。
失礼いたしました。質問した1-RTTの上のページに流れの記載がありましたね。
最初の接続時は、1-RTTではPSK交換は行えず、証明書を通してPSKをやり取りすることで保存するということで理解しました。

その後で、そのPSKで1-RTTでやり取りするってことなのですね。

お手数おかけしました。
2024.03.12 13:29

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。

その他のスレッド


Pagetop