kdnakt blog

hello there.

今週気になったTLS関連のニュース

2023年2月13日~2023年2月19日に読んだ中で気になったニュースとメモ書き(TLSらじお第93回の前半用原稿)です。

[TurboTLS]

こちらのツイートから。

リンク先はこちらの論文。

arxiv.org

通常TLS1.3ではTCPハンドシェイク、TLSハンドシェイクが完了してHTTPなどのアプリケーションデータを送信できる。TurboTLSでは、画像のようにTCPハンドシェイクと並行してUDPでTurboTLSのハンドシェイクを実行することで2回目のラウンドトリップでアプリケーションデータを送信できるようにするらしい。
TurboTLSに対応しているかどうかはDNSHTTPS RRのフラグに持たせるとのこと。なるほど。

(上記論文より)

論文中では、TLS1.2 False StartやTLS1.3+TCP Fast Openとの比較をしつつ、MinimaLTというプロトコルとも比較を行なっていた。2013年ごろに提案されたUDP上で動く暗号化プロトコルらしい。

こんなツイートも。

Jump Startについてはゆきさんがまとめてくれている。TLS1.3が出る前の2015年のドラフトなので、TLS1.2とUDPを組み合わせている。このページを見る限り結局ドラフトのままで、RFCにはなってなさそう。
TurboTLSの論文中でJump Startに触れられていないのが気になる...。

asnokaze.hatenablog.com

知らない間に色んなプロトコルや仕様が提案されているんだな...。

参考。

asnokaze.hatenablog.com

[kTLS + Nginx]

こちらのツイートから。

リンク先はこちら。

www.nginx.co.jp

(自分の知ってるところだと)JavaとかGoではアプリケーションがTLSの処理を担当している。で、それだと遅いのでカーネルTLSの処理をさせようぜ、というのがkTLS。Erlangでは最近サポートされたらしい。

Nginxでは通常、静的ファイル配信時にカーネルを通してファイルを読みこみ、ユーザー空間のNginxで暗号化、カーネルに戻してネットワークにデータを渡す。kTLSを利用すると、カーネルとユーザー空間の間でのデータコピーがなくなるので高速化できる。OSにもよるが、8-29%改善されたとのこと。

こちらのHackerNewsのスレッドによると、CPUの節約にもなるらしい。なるほど。

他にもkTLS関連の発表資料がちらほら。どれもNetflixの人による発表のよう。そりゃ秒間100GBとか400GBとかデータ転送してたら効率化しないとやってられませんわな...。

先週のニュースではkernel通してたら遅いやんけ、ということでkernelを通さず直接ネットワークスタックを操作するDPDKによる高速化手法に触れた。同じ静的ファイル配信をやるとしたらどっちがいいんだろうか...。

[その他のニュース]

▼NIST PKITSについて

こちらのツイートから。

リンク先はこちら。

zenn.dev

zenn.dev

超複雑なcertification path validationの実装を確認するためにNISTが公開しているテストケースがあって、これのPerl実装がOpenSSLのソースコードにこっそり含まれているらしい。知らんかった...。

昔kjurさんが書いたJUnitでのテストも紹介されていた。

blog.livedoor.jp

Indirect CRLって何だろうと思ったら、CRLの発行者が発行していない証明書に関するCRLってことらしい。そういうのもあるのか...証明書検証は難しいな。

TLSとメモリ帯域

こちらのツイートから。

ネットワークカード周りとか大変そうだな...と思った(小並感
TLSとパケットのずれってどうやって吸収するんだろう?

Java 19とJava 20

こちらのツイートから。

スレッドにて各種変更点がピックアップされている。KeyPairGeneratorでRSAの鍵長がデフォルト3072ビットになったり、SHA-3のパフォーマンスが改善したり、RC4がレガシーアルゴリズムになったり。
TLSハンドシェイク自体のパフォーマンス改善も入っている模様。

これらが入るLTSバージョンはJava 21(2023年9月リリース予定)なので、自分が使うのはだいぶ先になりそう...。

▼MS WinGetのSSL証明書期限切れ

こちらのツイートから。

リンク先はこちら。

www.bleepingcomputer.com

https://cdn.winget.microsoft.comの証明書が2023/2/12で切れて問題を起こしてるとのこと。2023/02/18に確認したところ、新しい証明書がデプロイされていたが、有効期間が2022/11/14から2023/11/9というものだった。なぜもっと早くデプロイできなかったのか...。
天下のMS様でもSSL証明書の運用ミスるんだから仮に将来うちがミスっても仕方ないよね(違

▼TrustCorとmacOS Ventura

こちらのツイートから。

TrustCorについてはこちら。

kdnakt.hatenablog.com

MS、ChromeFirefoxは対応したのにmacOSはいつになるんだろう...。

[まとめ]

TurboTLSはどうなるのかしら...Jump Startとかそもそもどうなったんだろう?どっかでこっそり実用化されたりするのかな...。