数日前 マット・キャスウェル、 OpenSSLプロジェクトの開発チームのメンバー、 OpenSSL3.0のリリースを発表しました これは、3年間の開発、17のアルファ版、2つのベータ版、7500を超える確認、および350を超えるさまざまな作成者からの寄稿の後に提供されます。
そしてそれはそのOpenSSLです 何人かのフルタイムのエンジニアがいたことは幸運でした さまざまな方法で資金提供されたOpenSSL3.0に取り組んだ人。 一部の企業は、OpenSSL 3.0で検証を復元する計画があるFIPSモジュールなどの特定の機能を後援したOpenSSL開発チームとサポート契約を締結しましたが、大幅な遅延が発生し、FIPS140-2テストが2021月に終了したように140年、OpenSSLは最終的に、FIPS3-XNUMX標準にも注力することを決定しました。
主な機能 OpenSSL3.0による 新しいFIPSモジュールです。 OpenSSL開発チームは、モジュールをテストし、FIPS140-2検証に必要なドキュメントを収集しています。 アプリケーション開発プロジェクトで新しいFIPSモジュールを使用することは、構成ファイルにいくつかの変更を加えるのと同じくらい簡単ですが、多くのアプリケーションは他の変更を行う必要があります。 FIPSモジュールのマニュアルページには、アプリケーションでFIPSモジュールを使用する方法に関する情報が記載されています。
OpenSSL 3.0以降、OpenSSLも注意する必要があります。 Apache2.0ライセンスに切り替えました。 OpenSSLおよびSSLeayの古い「デュアル」ライセンスは、以前のバージョン(1.1.1以前)にも引き続き適用されます。 OpenSSL 3.0はメジャーバージョンであり、完全な下位互換性はありません。 OpenSSL 1.1.1で動作したほとんどのアプリケーションは引き続き変更されずに動作し、単に再コンパイルする必要があります(おそらく、古いAPIの使用に関する多くのコンパイル警告があります)。
OpenSSL 3.0では、プログラムで、または構成ファイルを介して、ユーザーが特定のアプリケーションに使用するプロバイダーを指定できます。。 OpenSSL 3.0には、5つの異なるプロバイダーが標準で付属しています。 時間の経過とともに、サードパーティはOpenSSLと統合できる追加のプロバイダーを配布する可能性があります。 ベンダーから入手可能なアルゴリズムのすべての実装には、「高レベル」API(たとえば、接頭辞EVPが付いた関数)を介してアクセスできます。 「低レベル」APIを使用してアクセスすることはできません。
利用可能な標準プロバイダーのXNUMXつは、FIPS検証済みの暗号化アルゴリズムを提供するFIPSプロバイダーです。 FIPSプロバイダーはデフォルトで無効になっており、enable-fipsオプションを使用して構成中に明示的に有効にする必要があります。 有効にすると、他の標準プロバイダーに加えてFIPSプロバイダーが作成およびインストールされます。
アプリケーションで新しいFIPSモジュールを使用することは、構成ファイルにいくつかの変更を加えるのと同じくらい簡単ですが、多くのアプリケーションは他の変更を行う必要があります。 OpenSSL 3.0 FIPSモジュールを使用するように作成されたアプリケーションは、FIPSモジュールをバイパスするレガシーAPIまたは機能を使用しないでください。 これには特に次のものが含まれます。
- 低レベルの暗号化API(EVPなどの高レベルのAPIを使用することをお勧めします)。
エンジン - カスタムメソッドを作成または変更するすべての関数(たとえば、EVP_MD_meth_new()、EVP_CIPHER_meth_new()、EVP_PKEY_meth_new()、RSA_meth_new()、EC_KEY_METHOD_new())。
さらに OpenSSL暗号化ライブラリ (libcrypto) さまざまなインターネット標準で使用される幅広い暗号化アルゴリズムを実装します。 機能には、対称暗号化、公開鍵暗号化、鍵合意、証明書管理、暗号化ハッシュ機能、暗号化疑似ランダム番号ジェネレーター、メッセージ認証コード(MAC)、鍵導出機能(KDF)、およびさまざまなユーティリティが含まれます。 このライブラリによって提供されるサービスは、他の多くのサードパーティ製品およびプロトコルを実装するために使用されます。 以下は、libcryptoの主要な概念の概要です。
SHA256ハッシュやAES暗号化などの暗号化プリミティブは、OpenSSLでは「アルゴリズム」と呼ばれます。 各アルゴリズムでは、複数の実装を利用できます。 たとえば、RSAアルゴリズムは、一般的な使用に適した「デフォルト」の実装、および重要な状況でFIPS標準に対して検証された「fips」の実装として利用できます。 サードパーティが、たとえばハードウェアセキュリティモジュール(HSM)に実装を追加することも可能です。
最後に あなたが知ることに興味があるなら 詳細については、詳細を確認できます 次のリンクで。