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 相关文章推荐
怎样在UNIX系统下安装php3
Oct 09 PHP
一个分页的论坛
Oct 09 PHP
PHP正则提取不包含指定网址的图片地址的例子
Apr 21 PHP
使用array_map简单搞定PHP删除文件、删除目录
Oct 29 PHP
使用PHP生成二维码的方法汇总
Jul 22 PHP
WordPress用户登录框密码的隐藏与部分显示技巧
Dec 31 PHP
PHP数组实例详解
Jun 26 PHP
PHP简单判断手机设备的方法
Aug 23 PHP
PHP 中使用explode()函数切割字符串为数组的示例
May 06 PHP
PHP单例模式数据库连接类与页面静态化实现方法
Mar 20 PHP
Yii实现微信公众号场景二维码的方法实例
Aug 30 PHP
php慢查询日志和错误日志使用详解
Feb 27 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
xajax写的留言本
2006/11/25 PHP
php number_format() 函数通过千位分组来格式化数字的实现代码
2013/08/06 PHP
PHP中mysql_field_type()函数用法
2014/11/24 PHP
php数组函数array_walk用法示例
2016/05/26 PHP
PHP 面向对象程序设计之类属性与类常量实现方法分析
2020/04/13 PHP
用Javascript做flash做的事..才完成的一个类.Auntion Action var 0.1
2007/02/23 Javascript
ExtJS Window 最小化的一种方法
2009/11/18 Javascript
nodejs教程 安装express及配置app.js文件的详细步骤
2013/05/11 NodeJs
捕获和分析JavaScript Error的方法
2014/03/25 Javascript
JavaScript中removeChild 方法开发示例代码
2016/08/15 Javascript
学习掌握JavaScript中this的使用技巧
2016/08/29 Javascript
JS实现点击Radio动态更新table数据
2017/07/18 Javascript
前端跨域的几种解决方式总结(推荐)
2017/08/16 Javascript
JS实现点击按钮随机生成可拖动的不同颜色块示例
2019/01/30 Javascript
如何用原生js写一个弹窗消息提醒插件
2019/05/24 Javascript
浅谈JS中this在各个场景下的指向
2019/08/14 Javascript
Node.js API详解之 V8模块用法实例分析
2020/06/05 Javascript
jquery.validate自定义验证用法实例分析【成功提示与择要提示】
2020/06/06 jQuery
VSCode launch.json配置详细教程
2020/06/18 Javascript
Vue点击切换Class变化,实现Active当前样式操作
2020/07/17 Javascript
解决Django的request.POST获取不到内容的问题
2018/05/28 Python
Django数据库类库MySQLdb使用详解
2019/04/28 Python
Matplotlib绘制雷达图和三维图的示例代码
2020/01/07 Python
如何将tensorflow训练好的模型移植到Android (MNIST手写数字识别)
2020/04/22 Python
HTML5手机端弹出遮罩菜单特效代码
2016/01/27 HTML / CSS
新西兰最大的天然保健及护肤品网站:HealthPost(直邮中国)
2021/02/13 全球购物
PHP使用Redis队列执行定时任务实例讲解
2021/03/24 PHP
24岁生日感言
2014/01/13 职场文书
新闻编辑专业毕业自荐书范文
2014/02/05 职场文书
户外活动策划方案
2014/03/12 职场文书
学校领导干部民主生活会整改方案
2014/09/29 职场文书
2015年技术工作总结范文
2015/04/20 职场文书
2015年秋季运动会广播稿
2015/08/19 职场文书
在K8s上部署Redis集群的方法步骤
2021/04/27 Redis
javascript条件式访问属性和箭头函数介绍
2021/11/17 Javascript
【DOTA2】高能暴走TK秀!PSG LGD vs ASTER - DPC 2022 WINTER TOUR CN
2022/04/02 DOTA