スクリーンショット_2018-10-27_11

英語で読む「TLS1.3」

このnoteを書くようになってから、幾つかネタとしてリストアップしているものの、なかなか難しくて書けてないものがある。そのひとつが、今年の8月にRFCとなったTLS1.3だ。

冒頭にかかれている、TLS1.3はTLS1.2と何が違うの?という箇所をピックアップしてみる。

The list of supported symmetric encryption algorithms has been pruned of all algorithms that are considered legacy. Those that remain are all Authenticated Encryption with Associated Data (AEAD) algorithms.

prunは「刈る」ということ。では何を刈ったかというと、symmetric、つまり共通鍵暗号のうちレガシーとなった暗号方式だ。残っているのはAEADだけで、RC4やCBCは廃止となった。

A zero round-trip time (0-RTT) mode was added, saving a round trip at connection setup for some application data, at the cost of certain security properties.

0-RTTは再接続の際にラウンド・トリップを省略して。高速化するという機能。

All handshake messages after the ServerHello are now encrypted. The newly introduced EncryptedExtensions message allows various extensions previously sent in the clear in the ServerHello to also enjoy confidentiality protection.

TLS1.2ではServerHelloまでは平文で、その後から暗号化されていたが、TLS1.3はServerHelloも暗号化される。これも高速化につながる。

The key derivation functions have been redesigned. The new design allows easier analysis by cryptographers due to their improved key separation properties. The HMAC-based Extract-and-Expand Key Derivation Function (HKDF) is used as an underlying primitive.

鍵導出も再設計されHKDFという方式が取られる。この方式は分析のしやすさも考えられている。背景にはTripleHandshake攻撃のような手法が考案されたことがあるようだ。

RFCだけだとシーケンス図などわかりにくいし、その技術の背景(たとえば攻撃手法など)が書かれていないので、結局、RFCと一緒に、有識者が書いたパワポなど合わせて読むほうが理解が深まる。ただ、それでもRFCでどう書かれているかという拠り所としての重要性は高い。

https://www.jnsa.org/seminar/pki-day/2016/data/1-3_ootsu_.pdf

http://www.mew.org/~kazu/material/2018-tls13.pdf


この記事が気に入ったらサポートをしてみませんか?