ChangeCipherSpec

ChangeCipherSpec

仕様書

意味

[2] change cipher spec protocol は、 cipher 戦略 (ciphering stragegy) の遷移を伝えるものです >>1

プロトコル

[3] ChangeCipherSpec メッセージは、 (type) として値 1 (change_cipher_spec) のみから構成されます >>1

ChangeCipherSpec

type
change_cipher_spec (1)

[5]メッセージを送信した者は、送信後直ちに記録層において write pending statewrite current state に複製します >>1

[4]メッセージを受信した者は、受信後直ちに記録層において read pending stateread current state に複製します >>1。 その後 ChangeCipherSpec メッセージを送信者に対して送ります。

[6] ですから、最初の ChangeCipherSpec は元の接続状態に従い暗号化・圧縮されて送信され、 その返信となる ChangeCipherSpec は pending から複製された新しい接続状態に従い暗号化・圧縮されて送信されることになります。

[7] ChangeCipherSpec は、 handshake においてセキュリティー引数を合意した後 Finished が送信されたと検証する前に送信します >>1

文脈

[8] ChangeCipherSpecTLS Handshake Protocol の最後、 Finish の直前に送受信されます。

[10] 実質的に TLS Handshake Protocol の一部を構成しますが、 独自のプロトコル内容型を割り当てられているのは、パイプラインstall を防ぐため >>9 です。