OpenSSL 加密/解密字符串

标签 openssl aes

我尝试加密/解密 aes 字符串,但解密时不断收到错误。

set OPENSSL=C:\Projects\WinTools\Tools\OpenSSL\x86\bin
set Key=748FBA160C30A2624859A44A1830C061434C76E3278AFB75330C8CA2CF1F5184
set IV=84DB32005B226D7F9964B758C9157538
set Salt=96F697CA35CED67A

我加密如下:

echo "Test is test" | %OPENSSL%\openssl enc -base64 -e -aes-256-cbc -S %Salt% -K %Key% -iv %IV%

解密:

echo "7nO8yVKleLvbSneIi7qr82oSuiwRtnt5Iqqoynidl90=" | %OPENSSL%\openssl enc -base64 -d -aes-256-cbc -S %Salt% -K %Key% -iv %IV%

解密时出现的错误是:

警告:无法打开配置文件:/usr/local/ssl/openssl.cnf 解密错误 4124:错误:0606506D:数字信封例程:EVP_DecryptFinal_ex:最终 block 长度错误:.\crypto\evp\evp_enc.c:532:

最佳答案

更新:我找到了问题所在。我将加密数据括在双引号之间。当我删除它并像这样运行它时:

echo 7nO8yVKleLvbSneIi7qr82oSuiwRtnt5Iqqoynidl90= | %OPENSSL%\openssl enc -base64 -d -aes-256-cbc -S %Salt% -salt -K %Key% -iv %IV% 

完美解密

关于OpenSSL 加密/解密字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23622725/

相关文章:

key - 使用 MD5 从密码生成加密 key ?

c++ - Poco SSLManager 和 SecureStreamSocket 可以支持 SSL/TLS PSK(预共享 key 密码套件)吗?

SSL 证书文件和使用

c - 试图修复有关 ‘const’ 限定符的警告

ruby - 如何将 PKCS1_PSS_PADDING 与 Ruby 的 RSA 实现一起使用?

c# - 字节数组在 C# 中的编码方式对 AES 的安全性有影响吗?

android - 如何将 OpenSSL 构建为 Android 的未版本化共享库?

python - 如何在不使用 key 的情况下验证 Fernet token ?

java - NodeJs 从 JAVA 解密 AES256 加密

c# - "Padding is invalid and cannot be removed"使用Aes解密密文时出错