先週に続き、2022年7月4日~7月10日に読んだ中で気になったニュースとメモ書き(TLSらじお第64回の前半用原稿)です。
[NIST耐量子暗号コンペ最終候補]
こちらのツイートから。
7/5昨日発表のNISTのPQCコンペで最終結果は以下に決まったそうでおめでとうございます。
— kjur セキュリティ IT 開発の私的情報収集用+少しつぶやき (@kjur) 2022年7月5日
鍵交換(KEM)
CRYSTALS-KYBER 格子
署名
CRYSTALS-Dilithium 格子
Falcon 格子
SPHINCS+ ハッシュベース
結局、格子が強かったんすね。符号ベース、同種写像、多変数多項式とか残ってたけど選に漏れたと
NISTの発表本体はこちら。
Kyberは既にAWSでも利用されている。署名の方はどこかで使われているのだろうか...。
日本語でも解説記事が出ていた。まだアルゴリズムとして確定したわけではなく、今後変更になる可能性もあるらしい。ということはAWS KMSの対応もこれで終わりというわけではなさそう。
GoogleもChromeとGoogleサーバーの間で耐量子暗号アルゴリズムを利用したり、NISTのコンペにSPHINCS+を提案したりと色々やっていたらしい。耐量子暗号とTLSに関する実験もやっていて、互換性のないネットワーク製品を発見したとも書かれている。
こちらのIEEEの記事やCloudflareの記事によると、これから第4ラウンドが始まって、追加のアルゴリズムが選出され、2024年に標準化に至る模様。
[量子コンピュータの近況]
NISTの耐量子暗号選定の結果を受けてか、量子コンピュータ関連の記事がちらほら。
前掲のgigazineの記事では以下のように書かれていた。
2021年、Googleとスウェーデンの研究者は、2000万量子ビットの量子コンピュータがあれば、(中略)RSA暗号の2048ビットの(中略)暗号を解読することが可能であると示唆しました。また、フランスの研究者は、1万3436量子ビットとマルチモードメモリを用いれば、2048ビットの整数を177日間で因数分解できるはずだと主張しています。
ただし、2022年時点で研究されている量子コンピュータの量子ビットは(中略)IBMが開発したものでも127量子ビットです。一方でIBMは2023年末までに1000量子ビットのマシンを開発するロードマップを組んでいる
こちらの記事によると500量子ビットのマシンが既にあるらしい。2024年には7000量子ビットのマシンも登場予定とか。IBMとどっちが速いかしら...。
[TLS1.3+ECHの問題点]
こちらのツイートから。
Challenges in Adapting ECH in TLS for Privacy Enhancement over the Internethttps://t.co/Zrxkxdwi29 (pdf)
— ゆき (@flano_yuki) 2022年7月8日
リンク先の論文はこちら。
メインのサービスはTLS1.3+ECH(Encrypted ClientHello)を使うことで、それ以外のプロトコルではSNIとかALPNで接続先情報が漏洩する問題を解決している。...と思いきや、サイドチャネル(論文の例ではYouTubeのサムネイル取得など)ではTLS1.3+ECHを利用していないために、メインの接続先を特定してサイドチャネル接続をブロックし、メインのサービス利用を妨げることができてしまうらしい。
ECH良さそうだけど、Wiresharkでパケットを覗く楽しみが減るので悲しい。
[その他のニュース]
▼PeopleCertの証明書エラー
こちらのツイートから。
ITIL認定資格について調べててオンライン試験やってるPeopleCertのサイト行ったらコレで一気に信用が… pic.twitter.com/63BWl6pK2F
— Satoshi Ohgoh🥃 (@sohgoh) 2022年7月4日
新証明書の開始日を見るに、当日のうちに復旧はしたっぽい。
▼Expect-CTヘッダ廃止論
こちらのツイートから。
CT過渡期に利用したExpect-CTヘッダ。RFC 9163となったばかりだけど、CTが一般に要求されるようになったので廃止の方向 https://t.co/QJPv5YU0cv
— ゆき (@flano_yuki) 2022年7月9日
リンク先のメーリングリストはこちら。
Expect-CTヘッダはそもそもChromeしか対応していない上に、CTは認証局が証明書に対して設定するもので、ChromeがCTを強制するようになったので、もういらないからやめようぜ、ということらしい。
標準化って難しいな...。
▼HTTPSレコード+HTTP/3
こちらのツイートから。
[chromium] Support HTTP/3 protocol upgrade for HTTPS DNS recordshttps://t.co/j1RH2AZyDb
— ゆき (@flano_yuki) 2022年7月4日
お!HTTPSレコードでHTTP/3に初回からつなぎに行くやつ!
ChromiumでDNSのHTTPSレコードによるHTTP/3へのアップグレードが可能になるらしい。
C++のコード見てもよく分からない...。メソッドのシグネチャとかガンガン書き換えててちょっと怖いな。
[まとめ]
いろんなTLSライブラリにKYBER対応が進んでいくのだろうか。
rustlsはまだのようだけど。