使用Key.txt和IV.txt文件进行OpenSSL解密

时间:2015-11-03 21:21:30

标签: ssl encryption openssl cryptography

使用客户端设置OpenSSL文件加密。他们向我们发送了一个加密文件(我将其称为 sample.encrypted ),以及密钥和iv文件( key.txt iv.txt )。

  • key.txt 文件的内容如下所示:

    KEY: [string of 32 characters]
    
  • iv.txt 文件的内容如下所示:

    IV: [string of 16 characters]
    

我正在运行Windows 7 Professional 64位,并了解到Windows默认安装OpenSSL(显然它主要由Linux用户使用?)

所以,我从这里下载并安装了64位OpenSSL软件包: (HTTPS:)// slproweb.com/products/Win32OpenSSL.html

具体来说," Win64 OpenSSL v1.0.2d Light"在这里发现: (HTTPS:)// slproweb.com/download/Win64OpenSSL_Light-1_0_2d.exe

安装完成后,我不得不为OpenSSL配置文件手动配置环境变量(从命令提示符下):

    set OPENSSL_CONF=C:\OpenSSL-Win64\bin\openssl.cfg

我验证了上面的路径信息是正确的,并且环境变量已经卡住了,然后尝试运行以下命令:

    openssl enc -d -K key.txt -iv iv.txt -in sample.encrypted -out sample.decrypted

这是基于此处的命令:
https://www.openssl.org/docs/manmaster/apps/openssl.html
和这里:
https://www.openssl.org/docs/manmaster/apps/enc.html

命令细分为:

  • openssl - OpenSSL基本命令
  • enc - 用于开始加密/解密的命令
  • -d - 用于指定解密的标记
  • -K - 用于指定密钥文件使用的标记
  • key.txt - 密钥文件本身
  • -iv - 用于指定使用附带初始化向量的标记
  • iv.txt - IV文件本身
  • -in - 用于指定输入文件的标记
  • sample.encrypted - 输入文件
  • -out - 用于指定输出文件的标记
  • sample.decrypted - 所需的输出文件

据我所知,该命令有效 - 输出文件已生成,但其内容未正确解密(它只是乱码文本)。我不认为客户端提供的文件有任何问题,而是我使用OpenSSL命令解密文件。

如果有人知道如何使用提供的Key和IV文件正确解密文件,将非常感谢帮助。我一直在放弃其他责任,同时谷歌搜索试图解决这个问题。

0 个答案:

没有答案