Проблемы выпуска сертификатов в OpenSSL
Скачена текущая версия OpenSSL(http://slproweb.com/products/Win32OpenSSL.html) и библиотеки rtpkcs11ecp и rtengine для Windows (Пробывал как 32x-битные, так и 64x битные версии).
Настроен openssl.cfg. Сгенерировал ключевую пару.
Пытаюсь выполнить создание самоподписанного сертификата как описано в https://dev.rutoken.ru/pages/viewpage.a … d=43450394.
Выполняю команду (с правами администратора):
openssl req -utf8 -x509 -keyform engine -key "pkcs11:id=12" -engine rtengine -out cert.cer
после чего ввожу PIN.
Команда завершается без ошибок, но cert.cer не создается.
Аналогичная проблема при создании запроса PKCS#10 (Даже если использовать ключ не из токена, а из файла, выходные файлы не создаются).
В чем может быть проблема?
На всякий случай прикладываю openssl.cfg:
openssl_conf = openssl_def
RANDFILE = .rnd
[ openssl_def ]
engines = engine_section
[ engine_section ]
rtengine = gost_section
[ gost_section ]
dynamic_path = c:/OpenSSL/bin/rtengine.dll
MODULE_PATH = c:/OpenSSL/bin/rtpkcs11ecp_new.dll
RAND_TOKEN = pkcs11:manufacturer=Aktiv%20Co.;model=Rutoken%20ECP
default_algorithms = CIPHERS, DIGEST, PKEY, RAND
# Настройки создания запросов на сертификат
[ req ]
prompt = no
distinguished_name = req_distinguished_name
req_extensions = ext
# Сведения о владельце сертификата
[ req_distinguished_name ]
countryName = RU
commonName = Ivanov
emailAddress = ivanov@mail.ru
stateOrProvinceName = Moscow
# Расширения сертификата
[ ext ]
subjectSignTool = ASN1:FORMAT:UTF8,UTF8String:СКЗИ \"Рутокен ЭЦП 2.0\"
extendedKeyUsage=emailProtection
keyUsage=digitalSignature,nonRepudiation,keyEncipherment,dataEncipherment
# Настройки удостоверяющего центра
[ ca ]
default_ca = CA_default
[ CA_default ]
dir = ./demoCA # папка УЦ
database = $dir/index.txt
new_certs_dir = $dir/newcerts # папка, куда кладутся новые сертификаты
certificate = $dir/cacert.pem # сертификат УЦ
serial = $dir/serial
private_key = $dir/private/cakey.pem # закрытый ключ УЦ
RANDFILE = $dir/private/.rand # private random number file
default_days = 365 # сколько дней будет действителен выданный сертификат
default_crl_days = 30
default_md = md_gost12_256 # алгоритм хеширования по умолчанию
policy = policy_any
email_in_dn = no
name_opt = ca_default
cert_opt = ca_default
copy_extensions = copy
# Обязательность полей в запросе на сертификат
[ policy_any ]
countryName = supplied
stateOrProvinceName = optional
organizationName = optional
organizationalUnitName = optional
commonName = supplied
emailAddress = optional