PHP使用openssl扩展实现加解密方法示例


Posted in PHP onFebruary 20, 2020

从PHP7版本开始很多依赖mcrypt扩展的方法都不支持了,PHP7.2.0及以上版本已经完全不支持mcrypt扩展的任何方法了,所以PHP7及以上版本都应该使用openssl扩展来实现加解密。

以DES-CBC加密方式为例:

<?php

class DesUtil
{
  /**
   * Des 加密
   *
   * @param $str
   * @param $secretKey
   * @param string $iv
   * @return string
   */
  public static function encrypt($str, $secretKey, $iv = '')
  {
    return base64_encode(openssl_encrypt($str, 'des-cbc', $secretKey, OPENSSL_RAW_DATA, $iv));
  }

  /**
   * Des 解密
   *
   * @param $str
   * @param $secretKey
   * @param string $iv
   * @return string
   */
  public static function decrypt($str, $secretKey, $iv = '')
  {
    return openssl_decrypt(base64_decode($str), 'des-cbc', $secretKey, OPENSSL_RAW_DATA, $iv);
  }
}

到此这篇关于PHP使用openssl扩展实现加解密方法示例的文章就介绍到这了,更多相关PHP openssl扩展实现加解密内容请搜素三水点靠木以前的文章或下面相关文章,希望大家以后多多支持三水点靠木!

PHP 相关文章推荐
PHP执行linux系统命令的常用函数使用说明
Apr 27 PHP
PHP 基于文件头的文件类型验证类函数
May 01 PHP
php模拟ping命令(php exec函数的使用方法)
Oct 25 PHP
php使用反射插入对象示例分享
Mar 11 PHP
CI使用Tank Auth转移数据库导致密码用户错误的解决办法
Jun 12 PHP
CentOS 6.3下安装PHP xcache扩展模块笔记
Sep 10 PHP
Linux下安装PHP MSSQL扩展教程
Oct 24 PHP
php获取百度收录、百度热词及百度快照的方法
Apr 02 PHP
深入浅析PHP无限极分类的案例教程
May 09 PHP
CI框架(ajax分页,全选,反选,不选,批量删除)完整代码详解
Nov 01 PHP
PHP封装的PDO数据库操作类实例
Jun 21 PHP
PHPExcel实现的读取多工作表操作示例
Apr 14 PHP
php使用redis的有序集合zset实现延迟队列应用示例
Feb 20 #PHP
解决windows上php xdebug 无法调试的问题
Feb 19 #PHP
laravel框架路由分组,中间件,命名空间,子域名,路由前缀实例分析
Feb 18 #PHP
laravel框架select2多选插件初始化默认选中项操作示例
Feb 18 #PHP
laravel框架使用FormRequest进行表单验证,验证异常返回JSON操作示例
Feb 18 #PHP
PHP For循环字母A-Z当超过26个字母时输出AA,AB,AC
Feb 16 #PHP
php反序列化长度变化尾部字符串逃逸(0CTF-2016-piapiapia)
Feb 15 #PHP
You might like
Cappuccino 卡布其诺咖啡之制作
2021/03/03 冲泡冲煮
虹吸壶是谁发明的?煮出来的咖啡好喝吗
2021/03/04 冲泡冲煮
php mysql Errcode: 28 终极解决方法
2009/07/01 PHP
PHP上传文件时自动分配路径的方法
2015/01/09 PHP
PHP的Yii框架中移除组件所绑定的行为的方法
2016/03/18 PHP
javascript 兼容FF的onmouseenter和onmouseleave的代码
2008/07/19 Javascript
JavaScript获取GridView选择的行内容
2009/04/14 Javascript
一个简单的js动画效果代码
2010/07/20 Javascript
JS中动态添加事件(绑定事件)的代码
2011/01/09 Javascript
jquery动态增加text元素以及删除文本内容实例代码
2013/07/01 Javascript
Javascript 颜色渐变效果的实现代码
2013/10/01 Javascript
JavaScript中instanceof运算符的用法总结
2013/11/19 Javascript
JavaScript中使用ActiveXObject操作本地文件夹的方法
2014/03/28 Javascript
jQuery ajax MD5实现用户注册即时验证功能
2016/10/11 Javascript
JavaScript将base64图片转换成formData并通过AJAX提交的实现方法
2016/10/24 Javascript
解决eclipse中没有js代码提示的问题
2018/10/10 Javascript
深入浅析Vue 中 ref 的使用
2019/04/29 Javascript
如何在项目中使用log4.js的方法步骤
2019/07/16 Javascript
React+Redux实现简单的待办事项列表ToDoList
2019/09/29 Javascript
微信小程序基于高德地图API实现天气组件(动态效果)
2020/10/22 Javascript
[02:41]《西雅图我们来了》2015国际邀请赛出征全记录
2015/07/23 DOTA
python基础教程之数字处理(math)模块详解
2014/03/25 Python
利用Python实现图书超期提醒
2016/08/02 Python
独特的python循环语句
2016/11/20 Python
Python使用pandas处理CSV文件的实例讲解
2018/06/22 Python
python使用turtle库绘制树
2018/06/25 Python
Python二叉搜索树与双向链表转换算法示例
2019/03/02 Python
Python中那些 Pythonic的写法详解
2019/07/02 Python
python实现异常信息堆栈输出到日志文件
2019/12/26 Python
Python爬虫设置ip代理过程解析
2020/07/20 Python
荷兰照明、灯具和配件网上商店:dmlights
2019/08/25 全球购物
经销商会议欢迎词
2014/01/11 职场文书
先进个人材料怎么写
2014/12/30 职场文书
机关工会工作总结2015
2015/05/26 职场文书
CentOS7安装GlusterFS集群以及相关配置
2022/04/12 Servers
Python安装使用Scrapy框架
2022/04/12 Python