2023年3月13日~2023年3月19日に読んだ中で気になったニュースとメモ書き(TLSらじお第97回の前半用原稿)です。
[複合証明書対応ビューア]
こちらのツイートから。
The @peculiarventure certificate viewer now supports PQ composite certificates and signatures. https://t.co/95XdiU4Juk pic.twitter.com/wdTkpLwOLJ
— Ryan Hurst (@rmhrisk) 2023年3月14日
リンク先はこちら。
以前取り上げた複合証明書というタイプの証明書がある。複合、というのは従来のアルゴリズムと耐量子暗号アルゴリズムを1つの証明書内で同時に利用し、SubjectPublicKeyInfo(サブジェクトの公開鍵情報)に2つの公開鍵情報が入る形となる。
まだドラフトが検討中の段階だが、ちょうど2023年3月13日に、新しくバージョン4のドラフトが公開されていた。
前のバージョンとの差分を見ると、かなり書き換えられてて変更を追うのが辛い感じ(なので諦めた...)。
で、冒頭のツイートは、PV Certificates Viewerがこの複合証明書に対応した、ということらしい。そもそも耐量子暗号アルゴリズムに対応した証明書なんてどこで発行できるんだろう...。
[Cloudflareの耐量子暗号対応]
こちらのツイートから。
Cloudflareが、ポスト量子暗号の自社実装は、今後永久に万人に無償で提供することを宣言。既にHTTP/3を含むTLS 1.3を用いる全てのトラフィックでは、鍵合意のKYBERに対応している。Cloudflare Tunnelでは--post-quantumオプションを付けることでポスト量子暗号を使用可能。 https://t.co/nnB3lei3pV
— kokumօtօ (@__kokumoto) 2023年3月17日
リンク先はこちら。
鍵合意で使うKyberってことは1個前のニュースで出てきた証明書の件とはまた別っぽい。証明書どこで手に入るんだろう...自作してるのかな。
で、Cloudflareの話。Universal SSLを無料で提供したのと同じように、耐量子暗号の機能を永久に無料で提供するとのこと。すごい。
GoogleのBoringSSLのフォークをベースにKeyberの鍵合意機能提供をしており、BoringSSL本体にも取り込まれる予定とのこと。
TLS1.2を利用している部分についても、TLS1.3へ移行予定とも書かれている。プロトコルのバージョンアップについて行かねば...。
[その他のニュース]
▼X.509証明書のDoS対策
こちらのツイートから。
まじかー、変にポリシー処理だけ切り出すなよな〜〜。RFC 5280 6章のポンコツな前世代のフローチャートのようなFORTRANみたいなアルゴリズム記述からして全部書き直してほしい。 https://t.co/TQ7BTKnuzN
— kjur (@kjur) 2023年3月13日
リンク先はこちら。
元になってるRFC 5280はX509証明書とCRLの話。6章は証明書パス検証の話が書かれている。
ポリシーマッピングという証明書ポリシー拡張を証明書パスに適用していくとDoS攻撃に繋がる恐れがある、ということでRFC 5280を更新するドラフトが提出されたらしい。
ポリシーマッピングはCAの証明書の証明書ポリシー拡張にしか入っていないとのことなので、いくつかの中間証明書を見てみたが、該当するOIDのものを見つけられなかった。
そもそも証明書パス検証の深さが2か3を超えるようなケースってあるんだろうか...深さに応じて指数関数的に計算量が増えるとはいえ、3程度ならなんとかなりそうな気もするが...。
▼qcStatements、LEI、Role
こちらのツイートから。
拙作の証明書ビューアーですが、qcStatements、LEI、Roleの拡張の表示に対応しました。https://t.co/iDjcYBAN3V
— kjur (@kjur) 2023年3月13日
リンク先はこちら。
X.509の拡張にqcStatements、LEI、Roleというのがあるらしい。初耳。
qcStatements拡張は人間に対して発行される証明書に使う拡張とのこと。
対して、LEIはLegal Entity Identifierの略で、法人などが利用するもの。ISO 17442でX.509証明書との関係が定義されているとのこと。
https://www.boj.or.jp/paym/iso/iso_panel/data/isop201127.pdf
Roleはよくわからず...。
▼Zigの耐量子暗号サポート
こちらのツイートから。
@ziglang is the first programming language to land post-quantum TLS in their stdlib. https://t.co/c5HXiAEHfp (🙌 @jedisct1) Which one is next?
— Bas Westerbaan (@bwesterb) 2023年3月18日
リンク先はこちら。
Zig言語が標準ライブラリで耐量子暗号のサポートを取り込んだらしい。と言ってもまだmasterブランチに入っただけで、正式リリースはされていない様子。
内容としてはx25519の楕円曲線とKyberのハイブリッドな鍵合意アルゴリズムに対応した、というところらしい。詳細は理解できていないので、またいずれ...。
[まとめ]
証明書、特に拡張、何もわからん...。ChatGPT(無料版)に聞いても、間違った答えが返ってくるし、これは課金するしかないか...?