wolfSSL 5.8.4では、GPLv3例外リストの追加を含むいくつかの更新を行いました。これにより、wolfSSLにリンクする特定のGPLv3ライセンスコードベースは、引き続きGPLv2の下でwolfSSLを利用できます。
現在の GPLv3 例外対象ソフトウェアリスト
- MariaDBサーバ
- MariaDBクライアントライブラリ
- OpenVPN-NL
- Fetchmail
- OpenVPN
セキュリティ修正
本リリースには、TLS 1.2、TLS 1.3、X25519、XChaCha20-Poly1305、PSK 処理に関する複数の修正が含まれています。主な修正点は以下のとおりです。
- XtensaベースのESP32デバイスに特有の、X25519におけるタイミングサイドチャネル問題に対処しました。Xtensa向けには、省メモリ版X25519実装がデフォルトになりました。
- 悪意のあるClientHelloメッセージにおいてKeyShareEntryが繰り返されることによる、TLS 1.3 サーバー側の中程度のDoSリスクに対処しました。
- TLS 1.3における複数のダウングレード関連問題(PFSダウングレード、署名アルゴリズムのダウングレード、重複拡張の解析)に対処しました。
- TLS 1.2の証明書ダイジェスト処理におけるメモリリークリスクに対処しました。
- XChaCha20-Poly1305の復号時の境界チェックを修正し、PSKバインダー検証における定数時間処理を改善しました。
Adrian Cinal氏、POSTECHのJaehun Lee氏およびKyungmin Bae氏、Aisle ResearchのLuigino Camastra氏、ならびに貢献いただいたすべての研究者の方々に感謝します。
新機能
本リリースでは、いくつかの重要な改善と機能追加を行いました。
- ML-KEM / ML-DSA
新しいAPIの追加、PKCS8のシード/インポート対応、鍵管理の改善。 - FreeBSDカーネルモジュール
FreeBSDカーネル内でのwolfCrypt初期対応。 - PKCS7/CMS
デコード機能の拡張、追加コールバック、より柔軟なビルド構成。 - Rustラッパーの強化
対応アルゴリズムの拡充、heap/dev_idのオプション対応、Cビルドオプションに基づく条件付きコンパイル。 - ハードウェアプラットフォームポーティングの更新
STM32U5のSAES対応など、STM32およびPSoC6に関する改善。 - より小さなcURLリンクビルド向けの、新たな –enable-curl=tinyオプション
改善および最適化
主な改善点は以下のとおりです。
- TLS 1.3/1.2、libssh2、Arduino、ESP-IDF、ナイトリーワークフローにおける、より広範で一貫性のあるテスト。
- ドキュメントの更新、暗号コールバック対応の拡張、AES/ハードウェアオフロード機能の改善。
- ESP32、Renesas FSP/RA、SGX ビルドの強化。
- Autotools、CMake、Appleプラットフォーム、Debianパッケージングにおけるビルドシステムの改善。
- RISC-VおよびPPC32 向けアセンブリ解析支援機能とベンチマークの更新。
バグ修正
主な修正内容は以下のとおりです。
- Ed25519生公開鍵インポートに関するC#ラッパーの修正。
- スニファの安定性改善、X.509のパス長および証明書チェーンの改善。
- DTLSの順序制御、クッキー処理、リプレイ防止機能の更新。
- カーネルモード、FIPS、PIE関連のビルド修正。
- ML-KEM / ML-DSAの正確性および安全性に関する修正。
- 各種静的解析対応、警告整理、メモリ管理、未定義動作に関する修正。
変更点の詳細については、wolfSSLに同梱されている ChangeLog.md をご確認ください。
最新リリースのダウンロードはダウンロードページから行えます。
ご質問やお問い合わせは info@wolfssl.jpまでお寄せください。