php7.1以上版本使用mcrypt问题

php的 mcrypt扩展,在php7.1版本以后便不支持,在7.2版本则直接废弃。
但是在旧项目中使用的支付宝sdk以及composer引入的部分包中使用了此扩展的功能。
网上找到的解决办法有:
升级到7.1以上的话

1是用openssl替换掉mcrypt 不过比较麻烦 要去改支付宝的sdk 还有composer引入的部分文件,
2是直接把扩展安装回去 php7.1版本本身还有mcrypt扩展 不过所有mcrypt类的函数都要用@抑制错误 不然会报错(不明白为什么还会报错) 7.2版本就要自己重新安装扩展了

上面两种方法都要去改动composer引入的文件和sdk的文件,有没有不用改动这些文件的方法?

php

1个回答

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
【PHP7.1】使用OpenSSL来代替Mcrypt加解密【原创】
PHP7.1使用OpenSSL来代替Mcrypt加解密
php7.0以及php7.1版本
下载配置好即可使用,php各种扩展齐全,只要打开配置。
***Mcrypt 使用出错***
以下是代码rnfunction encrypt($txt)rnrn $key="gogogogo";rn $iv = mcrypt_create_iv (mcrypt_get_iv_size (MCRYPT_RIJNDAEL_256, MCRYPT_MODE_CFB), MCRYPT_RAND);rn $encodething=mcrypt_encrypt (MCRYPT_RIJNDAEL_256, $key, $txt, MCRYPT_MODE_CFB,$iv);rn return $encodething;rnrnrnfunction decrypt($txt)rnrn $key="gogogogo";rn $iv = mcrypt_create_iv (mcrypt_get_iv_size (MCRYPT_RIJNDAEL_256, MCRYPT_MODE_CFB), MCRYPT_RAND);rn $key="gogogogo";rn $dncodething=mcrypt_decrypt (MCRYPT_RIJNDAEL_256, $key, $txt, MCRYPT_MODE_CFB,$iv);rn return $dncodething;rnrnrn$result=encrypt("this is a test");rnprint bin2hex($result);rn$result1=decrypt($result);rnecho $result1;rnrn为何不能还原rn结果如下rneefccb960e7862f22de11b950fcf
如何使用mcrypt库?????
在手册中有这么介绍mcrypt库的:rn要使用本函数库要先准备 mcrypt 程序,可以到 ftp://argeas.cs-net.gr/pub/unix/mcrypt 下载这个程序 libmcrypt-x.x.tar.gz。同时在编译 PHP 程序时需要加入 --with-mcrypt 的选项,俾使本函数库能顺利运作rnrn问题:mcrypt库是下载了,但最后一句"编译 PHP 程序时需要加入 --with-mcrypt 的选项"这句我就不懂了,要怎么做才能使用呢??????请各位老大帮帮忙
如何使用Mcrypt库
如何使用Mcrypt库
Unity使用Protobuf3.0以上版本
1:,选择.net3.5程序集,然后重新编译源码 2:报错后,你打开报错的.cs文件,然后你会发现这些文件里面有个DOTNET35(大概就是这个预处理指令),复制这个预处理指令,在工程属性里,找到预编译命令,粘贴 3:然后编译后,就可以使用了 我已经在Windows上测试过了,没错。 Android与IOS 没有测过。
如何使用msxml3.0以上的版本?
怎么用?我这样rn#import rnusing namespace MSXML2;rn可还是msxml1 ? rnrn比如selectSingleNode函数还是一个参数
php7.0以上版本 mcrypt拓展无法使用导致小程序登录数据无法解密
小程序
PHP7.1 变量相加问题
用的是 PHP7.1.7rn如下会报错,有没有配置直接在PHP.INI中修改,让它支持,不然改代码,实在太多了,很多地方要改,rn[code=php]rnecho 1+'q';//报错rnecho 1+$aa;//$aa没有值时,报错rnrn $a=$b+$c;//最常用的就是这种,$b $c 2个变量有时是没有值的,就报错,程序很多都是这样写,难以全部改rn[/code]rn
phpstudy切换的php7.1版本php-cgi报错

 phpstudy切换的php7.1版本php-cgi报错 是因为没有装对应vc的插件。 下载地址:https://www.microsoft.com/zh-CN/download/details.aspx?id=48145 注意:下32位的。 
 
 
 
 
 
 
 
 
 
...
使用groovy和jdk9以上的版本配合使用
在groovy的官方文档中,groovy3是最高版本,最高支持到jdk1.8,如果使用jdk10的话,安装groovy后或出现警告: WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by org.codehaus.groovy.reflection.C...
使用PHP7.1的openssl加解密AES-128-CBC,与7.0之前的版本匹配
因为老版本与线上环境的mcrypt不兼容,在php7.1上使用会报错,官网也说了:Warning This function has been DEPRECATED as of PHP 7.1.0. Relying on this function is highly discouraged. 这里贴上解决办法。 先上7.0之前的代码:<?php class Security { pr
php 的加密解密mcrypt问题
有谁知道 mcrypt_cbc,mcrypt_cfb 的加密解密是怎么实现的?rn哪里有下载mcrypt 函数库?rn参数传递中如何将传递值加密?(xxxx.php?name=aaaa&pass=aaaa,中加密密码啊?)谢谢!!!
【PHP】Mcrypt 扩展模块安装及使用
Mcrypt 简介 Mcrypt 库提供了对多种块算法的支持, 包括:DES,TripleDES,Blowfish (默认), 3-WAY,SAFER-SK64,SAFER-SK128,TWOFISH,TEA,RC2 以及 GOST,并且支持 CBC,OFB,CFB 和 ECB 密码模式 安装过程 (Linux) PHP7 要想使用 M...
PHP安全处理之Mcrypt使用总结
我们知道在编写代码程序时,除了要保证代码的高性能,还有一个非常重要的,就是数据的安全。对于PHP而言,它本身提供了几种加密数据的办法,不过还是有限,对于满足特殊数据加解密方面有些欠缺,所以这里推荐使用的第三方拓展mcrypt库,它提供了类型、算法及模式繁多的加解密功能,那么下面来介绍下它的使用。 • 安装及配置 • 预定义常量 • 例子的验证
php7.1 redis
windows php redis3.1.3版本 nts vc14X86专用 适用于php7.1版本
CentOS7.0以上版本linux防火墙问题
CentOS 7.0默认使用的是firewall作为防火墙,使用iptables来做防火墙,那么必须重新设置一下 1、直接关闭防火墙 systemctl stop firewalld.service #停止firewall systemctl disable firewalld.service #禁止firewall开机启动 2、设置 iptables service
android4.0以上版本联网问题
之前没考虑到4.0联网问题,后来发现了,到网上查了帖子,加了StrictMode,模拟器上可以了,高兴死了,但是一到真机就发现又不行了,而且也没报错,大神,救命
xcode6以上版本上线问题
1.因为真机调试无需自己再创建调试证书,所以只需要创建发布证书就可以。提交CSR文件给你创建证书的权限。 2.provisional profile 也只需要创建发布的就行,反正我是没有创建develop的 3.当出现签名不成功(not signed),可以吧证书删了重新做,我是这样解决的 4.构建版本显示正在处理,刷新界面可以解决!
android4.4以上版本蓝牙连接问题
在android4.0版本上开发的基于蓝牙的APP移植到android4.4设备上,蓝牙无法连接,但是调试模式发现蓝牙连接正常。 使用的连接方法如下: mmSocket=device.createRfcommSocketToServiceRecord(uuid); mmSocket.connect(); android4.4上升级了蓝牙协议栈,怀疑因此导致此问题,解决方法是在mmS
springmvc4.0以上和jackson版本问题
在整合springmvc时,要返回json格式的数据出现问题,特地记录下供以后查看。 先看下错误: org.springframework.web.util.NestedServletException:Handler dispatch failed; nested exception is java.lang.NoSuchMethodError 一般都是通过 @ResponseBody 返
PHP5.6.15 使用mCrypt加密失效
我没安装mcrypt,但是phpinfo里面显示如下:[img=https://img-bbs.csdn.net/upload/201603/23/1458735579_335513.png][/img]rn 这表示已经预先安装了吧?rnrn但是页面怎么也显示不出来加密后的文字:rn[img=https://img-bbs.csdn.net/upload/201603/23/1458735831_310788.png][/img]rnrn[code=php]rn";rn$str_encrypt = mcrypt_encrypt($cipher,$key,$str,$mode,$iv);rnecho "加密后的内容是:".$str_encrypt." ";rn$str_decrypt = mcrypt_decrypt($cipher,$key,$str_encrypt,$mode,$iv);rnecho "解密后的内容:".$str_decrypt." ";rn?>rn[/code]rnrn求解答。。
Php7.1 编译安装
Environment CentOS Linux release 7.5.1804 (Core) Process 获取 Php7.1 官方安装包 wget -c http://cn2.php.net/get/php-7.1.27.tar.gz/from/this/mirror 解压安装包 tar -xzvf mirror 查看配置项 ./configure --help 配置...
MySQL JDBC 8.0以上版本使用经验
加载驱动 加载驱动需要导入的类名称为:com.mysql.cj.jdbc.Driver 若导入com.mysql.jdbc.Driver会产生提示: Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is ...
vue-cli工具2.9以上版本的使用
新版vue-cli使用基础第一步安装安装和原来的一样,执行命令,全局安装 npm install vue-cli -g新建项目 vue init webpack Vue-Project进入到项目,安装依赖包 cd Vue-Project npm install运行项目 npm run dev 与旧版本区别  安装与新建项目跟旧版本没有什么变化,最大的变化是build文
Hibernate5以上版本使用SchemaExport创建数据库
Hibernate根据实体类和实体类映射文件生成数据表模型:Hibernate发布的几个版本对于使用SchemaExport导出数据库,变化的版本还是很大的。现在使用的最新的发布版本是5.2.10。先创建好实体类,之后进行如下的操作:        public void createDB() { ServiceRegistry serviceRegistry=new StandardServi...
CW8可以使用SDK5以上的版本吗?
手头只有CW8,想开发Palm OS5.3的程序,可以吗?
jbox最新版,可以使用jquery-1.9.1以上版本
jbox最新版,可以使用jquery-1.9.1以上版本。
怎么使用OpenGL2.0以上版本的glTexImage2D
加载了glew 但是wglGetProcAddress里面没有这个函数 glTexImage2D是在glew里直接有声明 不过调用的又是1.1的版本rn我需要支持任意分辨率的贴图啊 怎么才能用2.0以上的glTexImage2D呢rnrnrn在线等~~~
使用iis7及以上版本配置伪静态
一 在解决方案中新建一个类库,命名为UrlReWriter(随意),在该类库中新建一个类,命名为MyUrlWriter(随意),该类中的代码如下:public class MyUrlWriter:IHttpModule { public void Init(HttpApplication context) { conte
如何使用ado 2.6以上版本?
大家好,我程序中用到了ado连接,但是vb怎么参考的是2.1版本,怎么能用到更高的版本?rn我一般直接就用 new rst as new adodb.recordset方法来定义的
怎样在ccs6.0以上的版本使用软件仿真功能
How to Obtain the Simulator for CCSv6 下面来阐述问题 和 解决问题 The problem with version 6 is that TI withheld the simulation files and drivers necessary to run the simulator on version 6. The trick is to co...
mysql-connector-java 版本8以上使用注意
做一个新产品调试,测试库数据库突然被产品部的小弟弟给干掉了,加班,他们都没来,就自己本地搭一个服务器进行测试。 没想到一下出了好多问题。 下载了8.1.12的mysql 数据库,然后就使用了对应版本的mysql jar包,却发现发现连不上数据库。 第一次运行报错同时还警告数据库驱动字符串有问题,需要用 “com.mysql.cj.jdbc.Driver”,比以前多一个cj, 于是就更改了驱...
Android 视频录制(1.6以上版本使用)
以前发的一个版本是在1.6版本上做的,很多人发现在1.6以上的版本运行都报错,经过查阅资料,得知1.6以上的版本将摄像头初始化的功能已经封装好了,所有在1.6以上的版本初始化后再录制会报错"prepared failed",将初始化的代码屏蔽掉,再处理一些设置就好了。 唯一不好的是,屏蔽掉初始化功能后就没有预览效果了,后期再改进一下。
Unity2018.3.0 版本以上使用的TextMeshPro 中文字体包
Unity2018.3.0 版本以上使用的TextMeshPro 中文字体包
mcrypt 安装
phpMyAdmin 提示 扩展 需要安装 mbstringrnyum install php-mbstringrn可以装好rnrn下面3个rpm 安装来不行 不知怎么编译phprn首先需要下载3个安装包rnLibmcrypt libmcrypt-2.5.8-11.fc17.i686.rpmrnmhash mhash-0.9.9.9-5.fc17.i686.rpmrnmycrypt mcrypt-2.6.8-5.fc17.i686.rpmrn依次安装 注意依存关系rn以上安装最终找不到如果修改php 中配置rn改源码安装rn从 下载源码包rnlibmcrypt-2.5.8.tar.gzrnmhash-0.9.9.9.tar.gzrnmcrypt-2.6.8.tar.gzrnrn这3个包按 下面到说明 安装了 最后一步不知道怎么配置phprnrn有经验到说说吧。rnrninux下mcrypt安装rn作者: 蓝天下云层上 发表于 2009年11月12日 14:44 最后更新于 2009年11月12日 14:45 rn版权声明:转载请征求作者同意,转载时必以超链接形式标明文章原始出处和作者信息及版权声明。rn/blog/weblog-20439-1.htmlrn2.先安装Libmcryptrnrntar -zxvf libmcrypt-2.5.8.tar.gzrncd libmcrypt-2.5.8rn./configure --prefix=/usrrnmakernmake installrnrncd libmcrypt-2.5.8/libltdlrn./configure --prefix=/usrrnmake rnmake installrnrn注意:不安装libltdl会导致php编译通不过。rnrn3.安装mhashrntar -zxvf mhash-0.9.9.9.tar.gzrncd mhash-0.9.9.9rn./configure --prefix=/usrrnmakernmake installrnrn4.安装mcryptrntar -zxvf mcrypt-2.6.8.tar.gzrncd mcrypt-2.6.8rn./configure --prefix=/usrrnmakernmake installrnrn5.安装PHPrn在配置PHP是加入:rn./configure --with-mcrypt --with-mhash
mcrypt 安装使用
[b]用途:[/b] 用于加密,解密数据。 [b]安装:[/b] 先安装libmcrypt库 #wget http://softlayer.dl.sourceforge.net/sourceforge/mcrypt/libmcrypt-2.5.8.tar.gz#tar -zxvf libmcrypt-2.5.8.tar.gz#cd 源代码/libmcrypt-2.5.8...
关于PHP的MCRYPT的解密问题
最近想找一个PHP的密匙可逆加密函数rnrn几经周折找到了MCRYPT。并在网上找到了一个DEMOrnrn[code=php]"; rn// Encrypt $string rn$encrypted_string = mcrypt_encrypt($cipher_alg, $key, $string, MCRYPT_MODE_CBC, $iv); rn// Convert to hexadecimal and output to browser rnprint "Encrypted string: ".bin2hex($encrypted_string)." "; rn$decrypted_string = mcrypt_decrypt($cipher_alg, $key, $encrypted_string, MCRYPT_MODE_CBC, $iv); rnprint "Decrypted string: $decrypted_string"; rn?> [/code]rnrn原程序当然可以直接加解密rnrn但是把转换后的16进制的字符串还原成2进制的密文去解密的时候却发现不能解密了rnrn经过对比发现还原成2进制后的密文和直接加密完的密文是一样的,为什么不能解密就很困惑了 希望有人能帮我解答下哈
mysql56以上版本安装
MySQL编译安装 环境:   OS: CentOS 6.6x64 mini   mysql: mysql-5.6.25 mysql 下载:     http://dev.mysql.com/downloads/mysql/     说明:这个网站有时候JS被墙,你选择了Source Code会没有反应,所以可以考虑翻翻翻翻翻翻翻Q或者直接点下边的链接     下载地址:     wget ht...
Android5.0及以上版本新特性
Android5.0 1.采用全新Material Design设计风格。 Material Design,扁平化的设计理念。新的视觉语言,在基本元素的处理上,借鉴了传统的印刷设计,字体版式、网格系统、空间、比例、配色、图像使用等这些基础的平面设计规范。 2.支持多种设备。 Android系统的身影早已出现在多种设备中,比如:智能手机、平板电脑、笔记本电脑、智能电视、汽车、智能手表甚至是各种家用电...
相关热词 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池 c#5.0 安装程序 c# 分页算法