OpenSSL no Windows: Problemas ao assinar um arquivo por meio da linha de comando

0

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

    
por P. Baeumel-Private 21.06.2017 / 13:04

1 resposta

1

Verificando a página man do openssl-dgst (v1.0.2, mas também válido para outras versões menos recentes) mostra que o argumento correto para um argumento de frase secreta é -passin , não -pass .

Como o argumento -pass não é reconhecido como opção, e o (s) último (s) parâmetro (s) do comando dgst indica o nome do arquivo, presume-se que você esteja fornecendo três nomes de arquivos: chamado -pass e um arquivo chamado file:D:\..... , daí a mensagem de erro que você está recebendo.

    
por 25.07.2017 / 16:11