Eu tenho que assinar um arquivo XML com o OpenSSL em um Windows-Server 2012 através da linha de comando.
Infelizmente, não funcionou se eu definir a frase secreta dentro do comando.
Eu sempre recebo o erro: "Só posso assinar ou verificar um arquivo"
Se eu usar a linha de comando sem a opção passphrase, então, ela parece funcionar e, em seguida, questiona a frase secreta e, se inserida, cria o sig-file.
Infelizmente eu gostaria de usar o comando em um script automatizado, então eu preciso passar a senha via linha de comando.
Tentei com as seguintes linhas:
Sem a opção passphrase (funciona bem):
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"
Com a opção passphrase (Não está funcionando / Nota: A senha armazenada no arquivo txt, pois contém caracteres especiais e escapando por meio de aspas duplas em torno da senha, não funcionou):
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"
Talvez eu tenha uma sintaxe incorreta em qualquer lugar.
Qualquer ajuda seria apreciada.
Atenciosamente,
Baeumel