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 相关文章推荐
别人整理的服务器变量:$_SERVER
Oct 20 PHP
Smarty模板快速入门
Jan 04 PHP
mysql下创建字段并设置主键的php代码
May 16 PHP
第四章 php数学运算
Dec 30 PHP
深入密码加salt原理的分析
Jun 06 PHP
Codeigniter注册登录代码示例
Jun 12 PHP
php解析http获取的json字符串变量总是空白null
Mar 02 PHP
thinkphp微信开之安全模式消息加密解密不成功的解决办法
Dec 02 PHP
PHP设计模式之工厂模式与单例模式
Sep 28 PHP
php实现的双色球算法示例
Jun 20 PHP
php微信开发之关注事件
Jun 14 PHP
PHP获取php,mysql,apche的版本信息及更多服务器信息
Mar 09 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
yii2.0实现验证用户名与邮箱功能
2015/12/22 PHP
PHP使用DOM对XML解析处理操作示例
2019/07/04 PHP
ThinkPHP5.1框架数据库链接和增删改查操作示例
2019/08/03 PHP
jquery插件 cluetip 关键词注释
2010/01/12 Javascript
div+css布局的图片连续滚动js实现代码
2010/05/04 Javascript
兼容IE与firefox火狐的回车事件(js与jquery)
2010/10/20 Javascript
根据表格中的某一列进行排序的javascript代码
2013/11/29 Javascript
jquery实现相册一下滑动两次的方法
2015/02/09 Javascript
JavaScript驾驭网页-DOM
2016/03/24 Javascript
vue.js指令和组件详细介绍及实例
2017/04/06 Javascript
带你快速理解javascript中的事件模型
2017/08/14 Javascript
详解nodejs中express搭建权限管理系统
2017/09/15 NodeJs
解决vue.js在编写过程中出现空格不规范报错的问题
2017/09/20 Javascript
基于Vue实现图书管理功能
2017/10/17 Javascript
深入了解query和params的使用区别
2019/06/24 Javascript
vue addRoutes路由动态加载操作
2020/08/04 Javascript
微信小程序实现上传照片代码实例解析
2020/08/04 Javascript
Python字符串拼接的几种方法整理
2017/08/02 Python
Python if语句知识点用法总结
2018/06/10 Python
简单了解python单例模式的几种写法
2019/07/01 Python
详解使用Python下载文件的几种方法
2019/10/13 Python
福克斯租车:Fox Rent A Car
2017/04/13 全球购物
世界上最大的专业美容用品零售商:Sally Beauty
2017/07/02 全球购物
欧尚俄罗斯网上超市:Auchan俄罗斯
2018/05/03 全球购物
Champion澳大利亚官网:美国冠军运动服装
2018/05/07 全球购物
是否有自动比较结构的方法
2015/06/03 面试题
高校毕业生自我鉴定
2013/10/27 职场文书
化学教师教学反思
2014/01/17 职场文书
保安的辞职报告怎么写
2014/01/20 职场文书
更夫岗位责任制
2014/02/11 职场文书
少儿节目主持串词
2014/04/02 职场文书
交通事故私了协议书
2014/04/16 职场文书
中学生运动会口号
2014/06/07 职场文书
给校长的建议书范文
2015/09/14 职场文书
《辉夜大小姐想让我告白》第三季正式预告
2022/03/20 日漫
德生2P3收音机开箱评测
2022/04/30 无线电