Как использовать SSL_CERT_FILE для OpenSSL Windows (OpenSSL 1.0.1c)

Как (если вообще можно) определить один файл доверенного сертификата для OpenSSL в Windows (Win-7, OpenSSL 1.0.1c), используя переменную среды SSL_CERT_FILE?

Различные исследования привели меня к загрузке декабрьской версии 12 доверенных сертификатов Mozilla в формате PEM, отсюда:http://curl.haxx.se/docs/caextract.html Он содержит все сертификаты и различную связанную информацию, объединенную в один файл.

Я нашел различные ссылки на использование переменных среды SSL_CERT_DIR и SSL_CERT_FILE по отношению к другим продуктам, которые используют OpenSSL. Например,http://lynx.isc.org/current/README.sslcerts указывает, что можно установить оба из них, и базовые библиотеки OpenSSL будут использовать их. Однако это не был мой опыт работы с самим инструментом OpenSSL.

Я смог успешно использовать SSL_CERT_DIR, но с большой болью, как изложено ниже. Я экспортировал (из IE 8) сертификат из www.wellsfargo.com (выбранный случайным образом) вместе с двумя сертификатами в его цепочке доверия, оба из Verisign. Я поместил каждый из двух сертификатов Verisign в каталог C: \ ca_stuff, и для каждого из них сгенерировал хеш

openssl x509 -hash -noout -in "Verisign Intl Server.cer"

который имел вывод a302054c, и из этого создал ссылку таким образом

mklink a302054c.0 "Verisign Intl Server.cer"

и аналогично для другого сертификата Verisign. Я тогда положил сертификат Уэллса Фарго. в другом каталоге, и смог успешно проверить его, используя

set SSL_CERT_DIR = C: \ ca_stuff openssl проверить "Wells Fargo web.cer"

Однако после определения SSL_CERT_FILE, указывающего на загруженный файл cacert.pem, загруженный с сайта cURL, эта же команда не выполнена. Это было сделано с и без определения SSL_CERT_DIR. Я проверил, что необходимые сертификаты CA были в комплекте, и подтвердил, что их серийные номера совпадают с теми, которые я вручную извлек из IE.

Это кажется трудным процессом, чтобы вручную извлечь каждый сертификат и поместить его в свой собственный файл с хеш-ссылкой, указывающей на него. Если бы это был Unix, я мог бы автоматизировать его, но в Windows ... Я, очевидно, неправильно понял что-то о том, как заставить один большой файл сертификата CA работать с OpenSSL.

Заранее благодарю за любые рекомендации, идеи и помощь.

Ответы на вопрос(1)

Ваш ответ на вопрос