問題タブ [openssl-engine]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
openssl - Cavium による OPENSSL
Cavium は、ハードウェアのパフォーマンスを向上させるために構成された OPENSSL を提供します。これを使用するには、暗号化操作のオフロードによって CPU 使用率を下げる必要があります。標準の OPENSSL をインストールするのと同じように、Linux OS (Cavium ハードウェア) に Cavium OPENSSL Toolkit をインストールできるかどうかお尋ねしたいと思います。または、この Cavium OPENSSL を使用する唯一の方法は、単純なエグゼクティブ アプリケーション/ユーザー スペースを作成し、提供された OPENSSL を API として使用することです。
Cavium OPENSSL に関する詳細 (readme、チュートリアル、リンクなど) を案内し、共有してください。
よろしく
openssl - openssl を使用して HSM からキーをリロードする方法は?
pkcs11 openssl エンジン経由で HSM を使用しています。
ENGINE_load_private_key()
使用するキーをロードするために使用されます。キーペアの生成後を除いて、正常に動作します。
HSM への新しいキー ペアを生成した後ENGINE_load_private_key()
も、古いキーが返されます。
明らかに、後で を呼び出すとENGINE_load_private_key()
、HSM からキーが読み取られません。代わりENGINE_load_private_key()
に、キャッシュされた値を返すようです。
openssl に HSM から新しいキーを読み取らせ、HSM に存在しない古いキーを返さないようにする方法はありますか?
このコードは、問題を解決するために使用されました。
結果: HSM のキーは変更されましたが、openssl はまだ古いキーを返します:
いくつかのプログラムは、HSM からの鍵ペアを使用します。また、これらのプログラムは、TLS のために他の鍵ペアも積極的に使用します。したがって、プロセスを再起動することは解決策ではありません。
c - RSA 暗号化と BSD cryptodev エンジン
OpenSSL を使用して、Linux で実行されている組み込みシステムで文字列を暗号化しようとしています。システムは imx6ul マイクロプロセッサを使用しています。ハードウェア暗号化エンジンで構成されています。
コードで RSA_public_encrypt() 関数を呼び出すと、エラーが発生します。
また、組み込みシステムの起動時にロード中の cryptodev ドライバーを削除してからプログラムを実行すると、正常に動作します。しかし、システム内の他の操作には cryptodev サポートが必要です。
これが私のコードです
cryptodev エンジンを使用しないように RSA_public_encrypt() 関数を指定する方法はありますか?
c - コマンドラインからのカスタム openSSL エンジンのテスト
簡単な質問: コマンド ラインから作成しているカスタム openSSL エンジンの機能を確認するにはどうすればよいですか?
現在、私はこのすばらしいチュートリアルに従っており、テスト プログラム (ソース コードはこちら、test/wssha256engine_test.c にあるテストプログラム) を使用してエンジン (すべて 2 のダイジェスト値を返す) を正常に実行できます。
ただし、理由により、openssl コマンド ライン インターフェイスを使用して、先ほど書いたエンジンを実行し、md5 ではなく sha256 を使用して、この他のチュートリアルのようにランダムな文字列のダイジェストを計算させたいと思います。
しかし、これを実行しようとすると、エンジンが読み込まれず、ダイジェストの NID が存在しないというエラーが表示され、代わりに標準アルゴリズムで文字列がハッシュされます。
コマンド ラインでエンジンを使用できないのに、それをロードする C プログラムを作成できるのはなぜですか? また、エンジンを使用してコマンド ラインからダイジェストを計算するにはどうすればよいでしょうか?
注: コマンド ラインからエンジンをロードすることはできますが、使用することはできません。