Decodificando um arquivo crypted por openssl não funcionando desde a mudança do SO (linux para windows)

1

Estou trabalhando em um pequeno script que criptografa um arquivo a ser enviado para um de nossos fornecedores.

O fluxo de trabalho é o seguinte:

  1. Criamos uma chave, a qual nós assimetria usando a chave pública eles forneceram
  2. Com chave criptografada, fazemos uma criptografia simétrica do arquivo que precisa enviar
  3. Em seguida, compactamos os dois arquivos (chave + arquivo)
  4. Uma vez recebidos, eles descompactam o arquivo
  5. Eles criptografam a chave usando sua chave privada
  6. Em seguida, eles criptografam o arquivo usando a chave descriptografada

Aqui estão os comandos usados:

NO LINUX

  • openssl rand -base64 30 > my.key
  • chmod 700 my.key
  • openssl enc -aes-256-cbc -in myfile.zip -out myfile.bin -kfile my.key
  • openssl rsautl -encrypt -pubin -inkey supplier_key.pem -in my.key -out encrypted.key

NO WINDOWS

  • openssl\bin\openssl.exe rand -base64 30 > my.key
  • openssl\bin\openssl.exe enc -aes-256-cbc -in myfile.zip -out myfile.bin -kfile my.key
  • openssl\bin\openssl.exe rsautl -encrypt -pubin -inkey supplier_key.pem -in my.key -out encrypted.key

Temos que fazer isso porque o arquivo é muito grande para ser assimétrico.

Para fazer isso, eu estava no começo em um ambiente cygwin e estava funcionando perfeitamente. Mas agora, tenho que executá-lo em um ambiente Windows completo. Eu adaptei o script e baixei o programa openssl para windows.

Mas, quando nosso fornecedor recebe o arquivo, a etapa 6) não está funcionando: /

Eles têm esse erro:

> bad decrypt 6566:error:06065064:digital envelope
> routines:EVP_DecryptFinal_ex:bad decrypt:evp_enc.c:325:

Eu não mudei absolutamente nada para o modo de trabalho, o script é basicamente o mesmo, então eu não vejo porque a descriptografia do arquivo não está funcionando (eles podem decifrar a chave)

    
por Zapp 30.08.2012 / 10:29

0 respostas