You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac终端OpenSSL加密文件在Ubuntu终端解密失败求助

解决Mac与Ubuntu跨系统OpenSSL解密不兼容问题

问题根源

Mac自带的OpenSSL版本偏旧,加密时默认使用MD5作为密钥哈希算法;而Ubuntu使用的新版OpenSSL默认采用更安全的SHA-256,且要求使用PBKDF2迭代器。两者密钥派生方式不一致,导致解密时密钥不匹配,出现块长度错误,最终图片损坏。

临时解决:在Ubuntu上兼容旧加密文件

直接在解密命令中指定与Mac加密时一致的MD5算法,即可正常解密:

openssl enc -d -aes-256-cbc -salt -md5 -in Image.enc -out Image.jpg

永久解决:使用跨系统兼容的加密命令

为避免后续跨系统出现同样问题,重新加密时采用PBKDF2密钥派生方式(Mac和Ubuntu新版OpenSSL均支持):

  • 加密命令:
openssl enc -aes-256-cbc -salt -pbkdf2 -iter 100000 -in Image.jpg -out Image.enc
  • 解密命令(Mac/Ubuntu通用):
openssl enc -d -aes-256-cbc -pbkdf2 -iter 100000 -in Image.enc -out Image.jpg

其中-pbkdf2指定使用更安全的密钥派生函数,-iter 100000设置迭代次数(数值越高破解难度越大,10万是兼顾安全与速度的合理值)。

关于警告的说明

终端提示的deprecated key derivation used是因为旧加密方式安全性较低,新版OpenSSL建议使用-pbkdf2或-iter参数提升安全性,这也是永久解决办法采用该参数的原因。

内容的提问来源于stack exchange,提问作者user820913

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 21:52:46