kdnakt blog

hello there.

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

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

 

 

[Hertzbleed攻撃]

こちらのツイートから。

リンク先のサイトはこちら。

www.hertzbleed.com

 

日本語でも紹介されていた。

gigazine.net

forest.watch.impress.co.jp

 

CPUの消費電力を観察することで処理データを推測することができ、耐量子暗号アルゴリズムとしてNISTの標準化プロセスで検討中のアルゴリズムSIKEが実際に攻撃されたようだ。

 

SIKEはAWS Key Management Service (AWS KMS)のAPIへのアクセス時に、ハイブリッド耐量子暗号(TLS 1.2)の鍵交換アルゴリズムとしてサポートされており、AWS SDK for Java2.x経由で利用できる。

aws.amazon.com

 

SIKEはNIST標準化プロセス第3ラウンドでもファイナリストからは外れているし、上記AWSの記事でも他のアルゴリズムと比べて桁違いに遅い。今回の件でどうなってしまうのだろうか...。

今回の件について、AWSから特にまだアナウンスはなさそうだ。今後に期待。

 

[RSA鍵交換等の非推奨化案]

こちらのツイートから。

ドラフトはこちら。

www.ietf.org

 

ポイントは以下の3点。

  • TLSにおけるRSA鍵交換の使用を非推奨とする
  • 有限体上の Diffie Hellman鍵交換の使用を制限する
  • 静的な楕円曲線Diffie Hellman暗号スイートの使用を非推奨とする

 

RSAに限らず、弱い鍵交換アルゴリズムを制限しようという話らしい。

前方秘匿性のないRSA鍵交換および静的なDH鍵交換については、『プロフェッショナルSSL/TLS』でも危険性が指摘されている。

 

有限体上のDH鍵交換(Ephemeral Finite Field Diffie Hellman、FFDHE)は知らなかったが楕円曲線上のDH鍵交換とは別に、そういうのがあるらしい。2020年9月に公開されたRaccoon攻撃の問題があるとのこと。

raccoon-attack.com

 

[HyStart++]

こちらのツイートから。

ドラフトはこちら。現在第5版。

www.ietf.org

 

TLSのパフォーマンスに影響するTCP輻輳制御によるスロースタート問題を解決するための方法として、HyStart(Hybrid Startの略)というのが元々2011年に提案された。それをさらに改良したのが今回のHyStart++で、2020年ごろから提案されている様子。

 

CloudflareのQUICライブラリquicheでサポートされているらしい。QUICはUDPなのになぜ...と思ったが、TCPと似た問題を抱えているらしいことだけはなんとなく読み取れた。

blog.cloudflare.com

 

[その他のニュース]

▼バナナ乱数生成器

こちらのツイートから。

リンク先の記事はこちら。

www.valerionappi.it

 

バナナで乱数生成できるってのがまず面白いし、entとかdieharderとか乱数生成器の質をテストするツールがあるということを知れたのも良かった。

www.fourmilab.ch

 

いくつかのテストが通らなくて修正中らしいけど、それにしてもすごい。

 

▼OpenSSL 3.0.4/1.1.1p

こちらのツイートから。

リンク先はこちら。

mta.openssl.org

 

6/21(ということはおそらく日本時間では6/22(水))にOpenSSLの最新バージョンが出る模様。MODERATE(中程度)の脆弱性が修正されたらしい。

詳細は現時点では公開されていない。コミット履歴を見たがよく分からず...。

 

▼QUICとLinuxカーネル

こちらのツイートから。

 

確かに、ChromeとかがQUICを実装してはいるものの、他のアプリケーションがQUICを使おうと思うとデファクトスタンダートと呼べるようなものはないのかも。

quic-goとか先日取り上げたs2n-quic(Rust)とか、言語ごとの実装は色々ありそうだけど。

 

SSL Pulseアップデート(2022.06)

こちらのツイートから。

SSL Pulseはこちら。

www.ssllabs.com

SSL Pulse Trendsはこちら。目立った変化はなさそう?

kjur.github.io

 

▼redbean

こちらのツイートから。

公式サイトはこちら。

redbean.dev

 

TLS1.3はまだサポートしていない模様。

 

▼Messaging Layer Security (MLS) Protocolドラフト

こちらのツイートから。

ドラフトはこちら。

www.ietf.org

 

メッセージアプリなどでのE2E暗号化のためのプロトコルとのこと。TLSと違う点は、メッセージのやり取りが1対多になり、同じ鍵を共有する必要がある点。

ちゃんと読むと面白そうだけど時間が取れず...。

 

楕円曲線暗号解説

こちらのツイートから。

リンク先の記事はこちら。

techblog.gaudiy.com

 

楕円曲線暗号の公開鍵と秘密鍵の関係をイメージできた気がする。

 

実際には、こちらのアニメーションを見ると楕円曲線上の点を加算したりしていて、もっと複雑なのがわかる。

curves.ulfheim.net*1

 

[まとめ]

 

*1:作者はTLSプロトコルをバイト毎に解説するサイトなども公開してくれているが、類似のドメイン名が悪用され始めたため、ドメインhttps://xargs.org/に変更するとツイートしている。