2023年4月17日~2023年4月23日に読んだ中で気になったニュースとメモ書き(TLSらじお第102回の原稿)です。
[CRYPTREC PQC報告書+ガイドライン]
こちらのツイートから。
PQCについて2冊をちょっと見てみたところPQC研究調査報告とPQC技術ガイドは内容が似通ってて、それぞれ有り難みが薄い、、、 https://t.co/j14p3YaUVA
— kjur (@kjur) 2023年4月17日
リンク先はこちら。
研究動向調査報告書の方はこんな構成。PQCガイドラインはほぼ同じ構成の簡略版だが、「PQCの活用方法」という章が追加されている。
第1章 はじめに
第2章 格子に基づく暗号技術
第3章 符号に基づく暗号技術
第4章 多変数多項式に基づく暗号技術
第5章 同種写像に基づく暗号技術
第6章 ハッシュ関数に基づく署名技術
TLSに関する話題を探しているうちに、耐量子暗号に出会ったのが2021年の夏だった。あらためて当時参照してた日銀のディスカッションペーパーの目次を見直してみると、TLSの仕様拡張の話とかも書かれてるので、ちゃんと読み直した方が良さそう...積んでおく。
当時、よくわからないなりに、格子系と符号系と同種写像と...みたいに耐量子暗号をぼんやり理解していた気がする。格子問題については、別の日銀のペーパーに図が付いてて比較的わかりやすかった気がする。本報告書はあまりずがないのでちょっと自分には難しい...。
で、そのあたりを個別の暗号技術の詳細に触れて説明してくれているのが本報告書。
「はじめに」では、共通鍵暗号も量子コンピュータによって安全性が低下するものの、公開鍵暗号に比べると影響が低いとして、PQC(耐量子暗号)は公開鍵暗号のみを示す、と定義されていた。そのあたりの理解が全く足りてなかったので助かる...。
具体的な量子コンピュータの近況についても、英語のニュースでぼんやりキャッチアップしていたものの、2019-2022年の方式別の開発状況が概観されており、今後の理解に役立ちそう。なんとなく、量子ビット(キュビット)がたくさんあれば正義、みたいに思ってたけど、量子コンピュータの性能を引き出すには、量子誤り訂正や量子ランダムアクセスメモリなど2022年時点で実用化されていない技術が不可欠とのこと。その辺の情報が出たら追いかけていこう。
年末に発表され話題となった論文Factoring integers with sublinear resources on a superconducting quantum processorについても、RSA暗号の安全性の文脈で取り上げられており、現時点で直接的な脅威ではないものの、数十年でRSA暗号・楕円曲線暗号の危殆化リスクがあると指摘されていた。
ガイドラインは実は2つ公開されていて、PQCガイドラインに加えて高機能暗号のガイドラインも公開されている。
高機能暗号に関する国際的な定義はないものの、本ガイドラインでは従来技術より低コストで高機能な暗号技術を指すらしい。医療データの活用や、AI用秘密計算(暗号化したまま計算する技術)、DBの秘匿検索などの利用が期待されているとのこと。
準同型暗号とかはなんか聞いたことある気がする...何もわからないけど。ちょうど先週の暗認本のコーナーで取り上げた、秘密分散やそれをベースにしたマルチパーティ計算(MPC)も高機能暗号の一種らしい。なるほど。
[その他のニュース]
▼TLS証明書の寿命
こちらのツイートから。
「TLS 証明書に関する Google の 90 日間の提案」https://t.co/QbEWEINvGb
— キタきつね (@foxbook) 2023年4月22日
リンク先はこちら。
証明書有効期限を90日にするCA/B Forumの投票はまだの様子。
Entrust(認証局)は、証明書の自動更新の普及が目的ならば90日の有効期限を強制するのは賛成できないとしている。こちらのACMEの導入が終わるまで、ぜひその論調でお願いしたいところ...。
▼AWS ALBのセッションチケットバグ(2021年)
こちらのツイートから。
If you like real world crypto bugs you are in for a treat. This is the story of how we discovered one of the most impactful TLS bugs since Heartbleed, allowing *passive* decryption (breaking PFS) in AWS ALBs. #USENIXSecurity'23 #bugbounty #bugbountytips https://t.co/wKeFRyMiXL
— Robert Merget (@ic0nz1) 2023年4月19日
リンク先はこちら。論文も公開されている。
ちょうど前々回まで読んでいた『プロフェッショナルSSL/TLS』の付録A TLS1.3で解説されていた内容だ。TLS1.2まではNewSessionTicketハンドシェイクメッセージがTLSレコード上は暗号化されずに送られるため、チケット鍵が弱い場合、セッション再開前後のTLS接続は同じ暗号鍵を利用するため、これを復号できてしまう。これがまさに実際に発生した。なんと、1903台のサーバですべて0のチケット鍵を利用していたというから驚き。せめて毎回同じレベルにして欲しかった...。
影響があったのはAWSのApplication Load Balancerとのこと。ちょうどこのTLSらじおが始まった直後くらいで、まだあまりニュースを拾えていなかった時期の話っぽい。
TLS1.3を利用していた場合は新しいセッションキーを作るので、問題が部分的に解消している、と説明されているものの、Application Load BalancerがTLS1.3をサポートしたのは2023年3月のことなので、あまり意味はない気がする...。
▼OpenSSL CVE-2023-1255
こちらのツイートから。
OpenSSL Security Advisory https://t.co/Z9SPxTSIs5
— OpenSSL announce (@OpenSSLannounce) 2023年4月21日
リンク先はこちら。
AES-XTSというモードを64bitARMマシンで利用している場合にDoSの脆弱性があるらしい。
XTSって知らないな...と思ったら、新しい暗号利用モードの仲間らしい。
2020年2月にCRYPTRECのレポートが上がっていた。そして2023年3月のCRYPTREC暗号リストでは電子政府推奨暗号リストにも上がっていた。このリスト上では、利用用途はストレージデバイスの暗号化に限る、とされている。
OpenSSLをストレージの暗号化に使うことはあまりなさそうな気がするので関係ないか...。
▼KLabプロトコルスタック自作インターン
こちらのツイートから。
こちら週明けの 4/24 (月) 23:59 JST が最終締め切りとなっております。参加希望の方はエントリーシートの提出まで忘れずにお願いします。腕に自身のある方はアドバンスドコースで TLS1.3 や QUIC の自作など好きなことやってください! https://t.co/hURhMZJvZd
— YAMAMOTO Masaya (@pandax381) 2023年4月21日
リンク先はこちら。
中学生が参加してTLS1.3やQUICの自作をやっているのか...怖い(誤読(ではないかもしれない))。
[暗認本:02暗号]
引き続き、ニュース以外のメインコンテンツとして『暗号と認証のしくみと理論がこれ1冊でしっかりわかる教科書』を読んでいきます。
今週は02をざっとまとめた。
- 暗号とは
- 平文を暗号鍵で暗号化する
- 暗号文を復号鍵(秘密鍵)で復号する
- 暗号鍵と復号鍵は同じ場合も異なる場合もある
- よい暗号と使い方
- 手順が公開され研究されているものが安全
- 同様に暗号ライブラリも広く使われているものがよい
- 暗号の動向を知る
[まとめ]
今週のネタ枠はChatGPTが作ったマイケル・ジャクソンのMan in the Mirrorの替え歌Man in the Middleです。
I’ve just asked ChatGPT to rewrite Michael Jackson’s “Man In The Mirror” to “Man-In-The-Middle” and this result is wondrous. pic.twitter.com/4Picp3lSoy
— Matthew Hardeman (@mdhardeman) 2023年4月19日