3月26日、OpenSSL 3.5 Betaがリリースされた。

このリリースで追加された新機能は以下のとおりだ。
QUIC (RFC 9000) のサーバサイドサポート:
HTTP/3などで利用されるQUICプロトコルをサーバ側で扱えるようにする機能である。従来のTCPに比べ、コネクションの確立を迅速化し、通信の効率を高めることが期待できる。0-RTTを含むサードパーティQUICスタックのサポート:
外部のQUICスタックを利用する際の互換性を高める拡張だ。0-RTTによって、過去に接続したことがあるクライアントとの通信でハンドシェイク時間を短縮できる。PQCアルゴリズム (ML-KEM、ML-DSA、SLH-DSA) のサポート:
量子コンピュータ時代を見据えた耐量子計算機暗号(PQC)の一種をサポートする。従来の公開鍵方式が量子コンピュータで解読されるリスクに備えるための機能である。RFC8422で非推奨となったTLSグループを無効化する
no-tls-deprecated-ec
オプションの追加:
セキュリティ要件が高い環境において、古くなった曲線(ECグループ)を強制的に使用不可にすることで安全性を強化できる。FIPSプロバイダで
JITTER
を乱数シード源として使用するenable-fips-jitter
オプションの追加:
RNG(乱数生成器)のシードにシステムのジッタ(揺らぎ)を利用することで、より安全な乱数の生成を実現するオプションである。CMPにおける中央集約型キー生成機能のサポート:
Certificate Management Protocol (CMP) を使用する際に、サーバや専用サービスなどで集中して鍵を生成し、管理できる仕組みを提供する。不透明な対称鍵オブジェクト (
EVP_SKEY
) のサポート:
アプリケーション層から鍵の内部構造を見えなくすることで、セキュリティ上のリスクを低減する。外部からは鍵データに直接アクセスせず、APIを通じてのみ操作が可能となる。複数のTLSキーシェアのサポートとTLSキー確立グループ設定の強化:
TLSハンドシェイク時に複数の鍵交換手法を提示し、より柔軟なキー合意を可能にする。管理者や開発者がシステムに応じた適切な暗号グループを選択しやすくなる。提供される暗号アルゴリズムにおけるパイプライン化対応のAPIサポート:
大量のデータ処理を行う際、並列的に暗号処理を実行しやすくするAPIを備える。これによりパフォーマンスの向上が見込める。
また、このリリースにおいては以下のような重要な変更が行われており、対処が必要な場合がある。
- 既存の複数アプリケーション (
req
,cms
,smime
) におけるデフォルト暗号化アルゴリズムがdes-ede3-cbc
からaes-256-cbc
に変更された。 - デフォルトのTLSサポートグループリストにハイブリッドPQC KEMグループを追加し、優先するように変更された。利用頻度の低い一部のグループはデフォルトリストから削除された。
- デフォルトTLSキーシェアは
X25519MLKEM768
とX25519
を提供するように変更された。 BIO_meth_get_*()
関数がすべて非推奨となった。- なお、今回のBetaリリースはGitHubのリリースページやOpenSSL Library公式サイトのダウンロードページから入手できる。
詳細はOpenSSL 3.5 Beta Release Announcementを参照していただきたい。
Exciting to see OpenSSL 3.5 Beta supporting QUIC and PQC! The enhanced key management and TLS improvements are a step forward for secure communications. Curious how the pipeline API impacts performance in high-load scenarios. snow rider