Я должен подписать XML-файл с OpenSSL на Windows-Server 2012 через командную строку.
К сожалению, это не сработало, если я установил фразу-пароль внутри команды. Я тогда всегда получаю ошибку: "Могу только подписать или подтвердить один файл"
Если я использую командную строку без опции passphrase-option, то, похоже, она будет работать, как тогда, и будет задавать вопросы для passphrase и, если введено, создаст sig-файл.
К сожалению, я хотел бы использовать команду в автоматическом сценарии, поэтому мне нужно передать фразу-пароль через командную строку.
Пробовал со следующими строками:
Без опции-фразы (работает нормально):
C:\OpenSSL-Win64\bin\openssl.exe dgst -sha512 -binary -out "D:\BZSt\CRS\m5_cs_bz101481661_1013801661_test00000001.xml.sig" -sign "D:\BZSt\CRS\SFTP-Keys\FinDK_elster_2048.pem" "D:\BZSt\CRS\m5_cs_bz101481661_1013801661_test00000001.xml"
С параметром passphrase (не работает / Примечание: пароль хранится в txt-файле, так как он содержит специальные символы и экранирование через двойные кавычки вокруг пароля не работает):
C:\OpenSSL-Win64\bin\openssl.exe dgst -sha512 -binary -out "D:\BZSt\CRS\m5_cs_bz101481661_1013801661_test00000001.xml.sig" -sign "D:\BZSt\CRS\SFTP-Keys\FinDK_elster_2048.pem" "D:\BZSt\CRS\m5_cs_bz101481661_1013801661_test00000001.xml" -pass file:"D:\BZSt\CRS\SFTP-Keys\BZSt-Passphrase.txt"
Возможно, у меня где-то неправильный синтаксис. Любая помощь будет оценена.
С наилучшими пожеланиями,
П. Беумель