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 相关文章推荐
模拟OICQ的实现思路和核心程序(二)
Oct 09 PHP
php中模拟POST传递数据的两种方法分享
Sep 16 PHP
探讨如何把session存入数据库
Jun 07 PHP
ajax返回值中有回车换行、空格的解决方法分享
Oct 24 PHP
PHP改进计算字符串相似度的函数similar_text()、levenshtein()
Oct 27 PHP
基于PHP实现的事件机制实例分析
Jun 18 PHP
PHP与Ajax相结合实现登录验证小Demo
Mar 16 PHP
Yii净化器CHtmlPurifier用法示例(过滤不良代码)
Jul 15 PHP
php中Ioc(控制反转)和Di(依赖注入)
May 07 PHP
PHP 中魔术常量的实例详解
Oct 26 PHP
PHP使用ActiveMQ实例
Feb 05 PHP
Laravel框架Eloquent ORM简介、模型建立及查询数据操作详解
Dec 04 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
php模拟js函数unescape的函数代码
2012/10/20 PHP
PHP连接MySQL查询结果中文显示乱码解决方法
2013/10/25 PHP
PHP简单判断手机设备的方法
2016/08/23 PHP
Yii框架安装简明教程
2020/05/15 PHP
关于JavaScript中原型继承中的一点思考
2012/07/25 Javascript
javascript教程之不完整的继承(js原型链)
2014/01/13 Javascript
javascript实现日期格式转换
2014/12/16 Javascript
JavaScript 事件入门知识
2015/04/13 Javascript
Bootstrap Scrollspy源码学习
2017/03/02 Javascript
JS数组去重(4种方法)
2017/03/27 Javascript
通过一次报错详细谈谈Point事件
2018/05/17 Javascript
JavaScript实现PC端四格密码输入框功能
2020/02/19 Javascript
详解element-ui 表单校验 Rules 配置 常用黑科技
2020/07/11 Javascript
vuex的数据渲染与修改浅析
2020/11/26 Vue.js
python递归计算N!的方法
2015/05/05 Python
Python实现HTTP协议下的文件下载方法总结
2016/04/20 Python
python脚本实现数据导出excel格式的简单方法(推荐)
2016/12/30 Python
python list删除元素时要注意的坑点分享
2018/04/18 Python
用pandas中的DataFrame时选取行或列的方法
2018/07/11 Python
pandas 根据列的值选取所有行的示例
2018/11/07 Python
PyGame贪吃蛇的实现代码示例
2018/11/21 Python
python redis 批量设置过期key过程解析
2019/11/26 Python
Python 实现Serial 与STM32J进行串口通讯
2019/12/18 Python
pyMySQL SQL语句传参问题,单个参数或多个参数说明
2020/06/06 Python
使用CSS3实现多列布局与多背景的技巧
2016/02/29 HTML / CSS
英国高街电视:High Street TV
2018/05/22 全球购物
婴儿地球:Baby Earth
2018/12/25 全球购物
PHP两种查询函数array/row的区别
2013/06/03 面试题
十一个高级MySql面试题
2014/10/06 面试题
物流管理专业大学生自荐信
2013/10/04 职场文书
咖啡店自主创业商业计划书
2014/01/22 职场文书
成语的广告词
2014/03/19 职场文书
机关班子查摆问题及整改措施
2014/10/28 职场文书
2015年政治教研组工作总结
2015/07/22 职场文书
经典祝酒词大全
2015/08/12 职场文书
SQL Server数据库的三种创建方法汇总
2023/05/08 MySQL