Openssl-1.0.1fを使用しています。そして、設定ファイルにpkcs11エンジンをロードしようとしていますが、機能しません。これが私の設定です:
openssl_conf = openssl_def
[openssl_def]
engines = engine_section
[engine_section]
pkcs11 = pkcs11_section
[pkcs11_section]
engine_id = pkcs11
dynamic_path = /usr/lib/ssl/engines/engine_pkcs11.so
MODULE_PATH = /usr/lib/arm-linux-gnueabihf/opensc-pkcs11.so
default_algorithms = ALL
init = 0
openssl engine pkcs11 -t
の結果は次のとおりです。
1996159072:error:25066067:DSO support routines:DLFCN_LOAD:could not load the shared library:dso_dlfcn.c:185:filename(/usr/lib/arm-linux-gnueabihf/openssl-1.0.0/engines/libpkcs11.so): /usr/lib/arm-linux-gnueabihf/openssl-1.0.0/engines/libpkcs11.so: cannot open shared object file: No such file or directory
1996159072:error:25070067:DSO support routines:DSO_load:could not load the shared library:dso_lib.c:244:
1996159072:error:260B6084:engine routines:DYNAMIC_LOAD:dso not found:eng_dyn.c:447:
1996159072:error:2606A074:engine routines:ENGINE_by_id:no such engine:eng_list.c:418:id=pkcs11
明らかに、設定ファイルをロードするのではなく、OpenSSL設定ファイルをロードするには、環境変数を介してパスを指定する必要があります。export OPENSSL_CONF=/path/to/config
その後、実行できますopenssl engine pkcs11 -t -c
少なくとも、正しいエンジンとモジュールが読み込まれます。それでもエラーが発生する場合は、新しい投稿を行う必要があります。