Попробовав много вещей, я наконец-то понял ответ. В сообщении об ошибке указано, что файл не найден, неверная пароль или неправильный формат. Так как команда работала в git bash, я был уверен, что это не проблема с файлом или парольной фразой. Концентрируясь на том, что ни один файл не найден, я нашел ниже ссылку
Windows ПУТЬ к преобразованию пути posix в bash
, что дало мне представление о том, как я могу Я указываю неверный путь в зависимости от того, какую версию curl мы используем. Итак, после попытки различных комбинаций я обнаружил, что если вы используете обычный curl в git bash, то оба cmd будут работать
curl -v https://localhost:9400/<URL> -H "Connection:close" --cacert 'C:/local_cert/root.crt' --cert 'C:/local_cert/client.crt' --key 'C:/local_cert/client.key' --pass client_key_passwd
и
curl -v https://localhost:9400/<URL> -H "Connection:close" --cacert C:/local_cert/root.crt --cert C:/local_cert/client.crt --key C:/local_cert/client.key --pass client_key_passwd
Но в windows Cmd или при вызове curl из python будет работать только следующий cmd
curl -v https://localhost:9400/<URL> -H "Connection:close" --cacert C:/local_cert/root.crt --cert C:/local_cert/client.crt --key C:/local_cert/client.key --pass client_key_passwd
Так что в двух словах это была проблема с qoutes, потому что то, как вызывается ваша утилита curl и какая версия curl используется (скомпилировано для windows или нет) толкование цитат будет другим.