OpenSSL | P12 証明書

OpenSSL 3.0 は、廃止または安全でないいくつかのアルゴリズムを legacy provider と呼ばれる内部ライブラリモジュールに移動しました。デフォルトでは読み込まれないため、OpenSSL を暗号化操作に使用するアプリ(またはその言語ランタイム)は、証明書の読み込みやメッセージダイジェストの作成などの際にそれらのアルゴリズムを使用できません。

 

レガシープロバイダーのアルゴリズムには、MD2、MD4、MDC2、RMD160、CAST5、BF (Blowfish)、IDEA、SEED、RC2、RC4、RC5、DES (ただし 3DES を除く) が含まれます。

 

セキュリティ上の理由から、これらのレガシーアルゴリズムの使用を廃止することを強くお勧めします。

 

アプリケーションが、RC2-40-CBC などのレガシー暗号で暗号化されたファイルに保存されたクライアント証明書を使用している場合、opensslプログラムで再暗号化することにより、証明書ファイルを「最新化」できます。

 

例えば、ローカルコンピューターに client.p12 (または client.pfx) 証明書ファイルがある場合。

 

$ openssl pkcs12 -legacy -in client.p12 -nodes -out cert-decrypted.tmp
(パスフレーズを求められた場合は入力してください)


$ openssl pkcs12 -in cert-decrypted.tmp -export -out client-new.p12
(enter passphrases if prompted)


$ rm cert-decrypted.tmp

 

エクスポートされた client-new.p12 証明書ファイルには同じキーが含まれていますが、AES-256-CBC を使用して暗号化されています。

 

以下のsgcWebSocketsおよびsgcIndyパッケージの構成を確認してください:

 

sgcWebSockets

 

 

sgcIndy