最近做项目时用到了3des加密算法,由于环境版本是php7.2 只能用openssl_encrypt()来加密:/* php 版本大于7.2  3des ecb模式加密*/

$res    = openssl_encrypt($value, 'des-ede3-ecb', $this->key, OPENSSL_RAW_DATA|OPENSSL_ZERO_PADDING);

return $res;

问题:

以上加密写法在测试环境正常,确认openssl扩展已打开,但是在上正式环境时报错:openssl_encrypt():Unknown cipher algorithm。

最终解决方法:/* 将'des-ede3-ecb' 改为 'des-ede3' */

$res    = openssl_encrypt($value, 'des-ede3', $this->key, OPENSSL_RAW_DATA|OPENSSL_ZERO_PADDING);

return $res;

原因分析:(个人分析)正式线环境是linux, php里并不支持 "des-ede3-ecb" 这种模式,所以报错,兼容的方法为:"des-ede3"。

补充:

要实现极强的兼容效果,不太注重速度的情况下建议安装使用 phpseclib:composer require phpseclib/phpseclib:~2.0

php openssl des ecb,php7.2 des-ede3-ecb加密报错:openssl_encrypt():Unknown cipher algorithm 落叶随风博客...相关推荐

  1. 对称加密算法DES,3重DES,TDEA,Blowfish,RC5,IDEA,AES。

    对称加密算法:DES,3重DES,TDEA,Blowfish,RC5,IDEA,AES. 1.对称加密算法 1.1 定义 对称加密算法是应用较早的加密算法,技术成熟.在对称加密算法中,数据发信方将明文 ...

  2. js des加密 java_java JS DES互相加密解密 通用!!!

    如果 出现 异常 javax.crypto.IllegalBlockSizeException 那就看我博客园的 另外一篇  解决这个异常 帮客户整了1天 试了N个JS 的方法 终于找我弄出来了! j ...

  3. python des解密_python实现DES加密解密方法实例详解

    本文实例讲述了python实现DES加密解密方法.分享给大家供大家参考.具体分析如下: 实现功能:加密中文等字符串 密钥与明文可以不等长 这里只贴代码,加密过程可以自己百度,此处python代码没有优 ...

  4. php 7.1 openssl安装,介绍 php7.1 安装openssl扩展,php openssl

    介绍 php7.1 安装openssl扩展介绍php7.1安装心脏出血扩展,PHP7栏目介绍php7.1 安装openssl扩展的方法 推荐(免费):PHP7 在安装(同脉冲亮度分析仪)脉冲振幅分析器 ...

  5. 证明:DES解密算法是DES加密算法的逆

    证明: 由于DES算法是在Feistel网络结构的输入和输出阶段分别初始置换IP和初始逆置换IP-1而构成的,其余DES和Feistel相同,IP和IP–1互逆.所以只需证明Feistel解密算法和加 ...

  6. 通俗易懂,十分钟读懂DES,详解DES加密算法原理,DES攻击手段以及3DES原理。Python DES实现源码

    文章目录 1.什么是DES 2.DES的基本概念 3.DES的加密流程 4.DES算法步骤详解 4.1 初始置换(Initial Permutation,IP置换) 4.2 加密轮次 4.3 F轮函数 ...

  7. nginx+php7+mysql+wordpress搭建自己的博客网站

    nginx+php7+mysql+wordpress搭建自己的博客网站 安装php7 这是通过源码安装的,也可以通过apt-get install php7来安装 1. tar zxvf php-7. ...

  8. php7.0和5.6哪个好,PHP7.0与PHP5.6下Laravel博客的应用性能对比介绍

    PHP7.0与PHP5.6下Laravel博客的应用性能对比介绍 发布时间:2020-04-24 09:49:17 来源:亿速云 阅读:131 作者:小新 这篇文章主要为大家详细介绍了PHP7.0与P ...

  9. Hexo+github搭建博客的错误:连接超时port 443: Timed out和OpenSSL错误

    问题描述 最近跟着知乎@枫叶的文章用Hexo+Github搭建个人博客,执行hexo clean,hexo g,hexo d三部曲生成和部署网页,到执行hexo d的时候总会出现连接超时或者SSL连接 ...

最新文章

  1. 如何让网页不受电信114劫持
  2. Tomcat集群+Nginx反向代理+负载均衡
  3. 扩展SpringMVC WebMvcConfigurerAdapter ||全面接管SpringMVC @EnableWebMvc
  4. [ASP.NET]EF选一个空表的情况
  5. java cookie 加密_java cookie encodeBase64加密
  6. 一步步把一个SpringBoot应用打包成Docker镜像并运行
  7. HDU 5037 Frog(2014年北京网络赛 F 贪心)
  8. 深圳本次核酸检普筛怎么将个人信息和结果对应上??
  9. 前端学习(1986)vue之电商管理系统电商系统之建立新分支
  10. java final static_Java基础之final、static关键字
  11. LEAGUE TABLES【模拟】
  12. QT新建项目显示项目未配置的原因与解决方案
  13. Nvidia-Docker
  14. KL散度 JS散度 熵
  15. GJB 8114-2013中不恰当的编码规则解析
  16. 伟大程序员必须具备的7个好习惯
  17. TP6如何配置多应用?
  18. 简单实用的vue常用后台管理模板框架
  19. java 屏蔽广告js_手机端JS屏蔽广告
  20. ICV:预计到2026年,全球乘用车单车将平均配置3.8颗摄像头

热门文章

  1. PyCUDA Documentation
  2. srsLTE源码学习:协议数据单元PDU:pdu.h
  3. python字典(一)
  4. Hbuilderx编辑器介绍(00)
  5. java策略模式学习
  6. eslint是什么_一起来用 eslint 吧
  7. SpringBoot重复配置数据库导致Access denied for user ‘root‘@‘localhost‘ (using password: YES)
  8. oracle集群服务删除,删除 Support for Oracle RAC
  9. ECS入门之Hello World
  10. Ubuntu Touch OTA-12 发布,Ubuntu 移动版本