php实现基于openssl的加密解密方法


Posted in PHP onSeptember 30, 2016

本文实例讲述了php实现基于openssl的加密解密方法。分享给大家供大家参考,具体如下:

通过openssl加密解密方法

1. openssl加密方法:

function encrypt($id){
  $id=serialize($id);
  $key="1112121212121212121212";
  $data['iv']=base64_encode(substr('fdakinel;injajdji',0,16));
  $data['value']=openssl_encrypt($id, 'AES-256-CBC',$key,0,base64_decode($data['iv']));
  $encrypt=base64_encode(json_encode($data));
  return $encrypt;
}

2. openssl解密方法:

function decrypt($encrypt)
{
  $key = '1112121212121212121212';//解密钥匙
  $encrypt = json_decode(base64_decode($encrypt), true);
  $iv = base64_decode($encrypt['iv']);
  $decrypt = openssl_decrypt($encrypt['value'], 'AES-256-CBC', $key, 0, $iv);
  $id = unserialize($decrypt);
  if($id){
    return $id;
  }else{
    return 0;
  }
}

PHP 相关文章推荐
php mssql 日期出现中文字符的解决方法
Mar 10 PHP
PHP取得一个类的属性和方法的实现代码
May 22 PHP
PHP Session 变量的使用方法详解与实例代码
Sep 11 PHP
CodeIgniter框架过滤HTML危险代码
Jun 12 PHP
一个不易被发现的PHP后门代码解析
Jul 05 PHP
YII中assets的使用示例
Jul 31 PHP
PHP生成数组再传给js的方法
Aug 07 PHP
php中用memcached实现页面防刷新功能
Aug 19 PHP
thinkPHP自动验证、自动添加及表单错误问题分析
Oct 17 PHP
iis 7下安装laravel 5.4环境的方法教程
Jun 14 PHP
PHP基于堆栈实现的高级计算器功能示例
Sep 15 PHP
基于laravel belongsTo使用详解
Oct 18 PHP
利用php抓取蜘蛛爬虫痕迹的示例代码
Sep 30 #PHP
php通过执行CutyCapt命令实现网页截图的方法
Sep 30 #PHP
linux平台编译安装PHP7并安装Redis扩展与Swoole扩展实例教程
Sep 30 #PHP
利用PHP生成静态html页面的原理
Sep 30 #PHP
Yii2框架实现注册和登录教程
Sep 30 #PHP
php多线程并发实现方法
Sep 30 #PHP
PHP7安装Redis扩展教程【Linux与Windows平台】
Sep 30 #PHP
You might like
Oracle Faq(Oracle的版本)
2006/10/09 PHP
PHP array_push 数组函数
2009/12/26 PHP
php实现的九九乘法口诀表简洁版
2014/07/28 PHP
php中explode的负数limit用法分析
2015/02/27 PHP
php传值和传引用的区别点总结
2019/11/19 PHP
Avengerls vs KG BO3 第三场2.18
2021/03/10 DOTA
javascript 变量作用域 代码分析
2009/06/26 Javascript
网站导致浏览器崩溃的原因总结(多款浏览器) 推荐
2010/04/15 Javascript
关于juqery radio写法的兼容性问题(新老版本jquery)
2010/06/14 Javascript
检测input每次的输入是否合法遇到汉字输入就有问题
2012/05/23 Javascript
javascript删除option选项的多种方法总结
2013/11/22 Javascript
javascript修改图片src的方法
2015/01/27 Javascript
JS+CSS实现仿支付宝菜单选中效果代码
2015/09/25 Javascript
利用原生JS自动生成文章标题树的实例
2016/08/22 Javascript
AngularJS的脏检查深入分析
2017/04/22 Javascript
用户管理的设计_jquery的ajax实现二级联动效果
2017/07/13 jQuery
JS实现table表格固定表头且表头随横向滚动而滚动
2017/10/26 Javascript
JavaScript实现二叉树的先序、中序及后序遍历方法详解
2017/10/26 Javascript
vue-cli3添加模式配置多环境变量的方法
2019/06/05 Javascript
JS利用prototype给类添加方法操作详解
2019/06/21 Javascript
python函数局部变量用法实例分析
2015/08/04 Python
Python使用回溯法子集树模板获取最长公共子序列(LCS)的方法
2017/09/08 Python
python3+PyQt5实现文档打印功能
2018/04/24 Python
python中subprocess批量执行linux命令
2018/04/27 Python
Python自动生成代码 使用tkinter图形化操作并生成代码框架
2019/09/18 Python
python创建n行m列数组示例
2019/12/02 Python
使用Numpy对特征中的异常值进行替换及条件替换方式
2020/06/08 Python
Python基于gevent实现文件字符串查找器
2020/08/11 Python
Pyinstaller打包Scrapy项目的实现步骤
2020/09/22 Python
Python根据字符串调用函数过程解析
2020/11/05 Python
运动会四百米广播稿
2014/01/19 职场文书
歌唱比赛获奖感言
2014/01/21 职场文书
《钱学森》听课反思
2014/03/01 职场文书
医生辞职信范文
2015/03/02 职场文书
如何用Node.js编写内存效率高的应用程序
2021/04/30 Javascript
golang生成vcf通讯录格式文件详情
2022/03/25 Golang