PHP的AES加密,模式为“AES/CBC/PKCS5Padding“,含解密

2023-10-27

加密需要php5版本,php7方法已弃用 

/**************AES加密请求数据*******************/
    /**
     * 加密通过AES加密请求数据/
     *
     * @param array $query
     * @return string
     */
    public function enAES($key, $input)
    {
        $size = mcrypt_get_block_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC);
        $input = $this->pkcs5_pad($input, $size);
        $td = mcrypt_module_open(MCRYPT_RIJNDAEL_128, '', MCRYPT_MODE_CBC, '');
        $iv = $key;
        mcrypt_generic_init($td, $key, $iv);
        $data = mcrypt_generic($td, $input);

        mcrypt_generic_deinit($td);
        mcrypt_module_close($td);
        $data = base64_encode($data);
        return $data;

    }

    public function pkcs5_pad($text, $blocksize)
    {
        $pad = $blocksize - (strlen($text) % $blocksize);
        return $text . str_repeat(chr($pad), $pad);
    }

    //解密
    public function decrypt($encryptStr, $key)
    {
        $localIV = $key;
        $encryptKey = $key;

        $encryptStr = base64_decode($encryptStr);

        //Open module
        $module = mcrypt_module_open(MCRYPT_RIJNDAEL_128, '', MCRYPT_MODE_CBC, $localIV);

        //print "module = $module <br/>" ;

        mcrypt_generic_init($module, $encryptKey, $localIV);

        $encryptedData = $encryptStr;
        $encryptedData = mdecrypt_generic($module, $encryptedData);

        return $encryptedData;
    }

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP的AES加密,模式为“AES/CBC/PKCS5Padding“,含解密 的相关文章

  • 使用 PHP 创建图表并导出为 PDF

    我正在寻找有关使用 PHP 创建图表的建议 我还希望能够将这些图表导出到 PDF 文档 我目前正在使用谷歌图表 但我不喜欢将我的所有信息发送到谷歌的想法 我更喜欢自己的托管解决方案 我见过很多 Flash 解决方案 但我不知道有什么方法可以
  • PHP 文件上传帮助

    div align center div 这是我的代码
  • Laravel 5.1 中的VerifyCsrfToken.php 第 53 行:(Firefox 浏览器)中出现 TokenMismatchException?

    我试图找出为什么会出现这个错误 即使它是全新安装的 我在我的项目中遇到了这个错误 所以我用谷歌搜索 没有一个答案对我有用 所以我创建了新项目并复制了所有控制器 视图和模型 几个小时后工作正常 再次出现令牌不匹配错误 为什么在 laravel
  • 如何在 Zend Framework 中存储 cron 作业的脚本?

    因为 ZF 的所有 URL 都依赖于 mod 重写 所以我并不清楚应该在哪里存储用于 cron 作业的本地脚本 有人有什么建议 或者有 正式接受 的方式吗 我用模块化目录结构 http framework zend com manual e
  • 如何将 PHPMailer 与 Codeigniter 3 集成

    嗨 我正在尝试使用PHPMailer 库 https github com PHPMailer PHPMailer来自我的 Codeigniter 应用程序中的 GitHub 我下载了代码并解压到我的application library文
  • strlen()==0 和empty()之间有区别吗?

    我正在查看其他人编写的一些表单验证代码 我看到了这个 strlen 0 当测试表单变量是否为空时 我使用empty 功能 一种方法比另一种方法更好吗 它们在功能上等效吗 strlen是获取字符串中的字符数 同时empty用于测试变量是否为空
  • 使用 php 更改白天和黑夜的背景?

    我正在制作一个 tumblr 页面 我的 html 页面有两种不同的背景 我希望白天背景从早上 7 点到晚上 8 点显示 夜间背景从晚上 8 点到早上 7 点显示 我决定用 php 来做这件事 但对于 php 来说我是个新手 我的朋友给我发
  • 将函数中的会话变量传递给 codeigniter 中的助手

    这就是我正在尝试做的事情 这是控制器中的功能 public function get started if test login this gt session gt all userdata this gt load gt view te
  • 使用 PHP 的 Google Glass GDK 身份验证

    我正在尝试点击此链接来验证 GDK 中的用户 https developers google com glass develop gdk authentication https developers google com glass de
  • 使用日语“Enter”键进行搜索功能

    我在日语方面遇到了问题 我有一个允许用户搜索数据的表单 当用户输入要搜索的字符串并按 Enter 键时 搜索功能就会执行 我的代码是 formSearch input keyup function event var key event c
  • CakePHP Xml 实用程序库触发 DOMDocument 警告

    我正在使用 CakePHP 在视图中生成 XMLXML核心库 http book cakephp org 2 0 en core utility libraries xml html xml Xml build data array ret
  • 通过JS Laravel访问存储目录

    有没有办法访问storage目录 该目录已经链接到publicJS 中的目录 我正在尝试制作一个上传图片的表单 验证脚本 if request gt hasFile photos marker gt photos request gt ph
  • postgreSQL 在 WAMP 上的集成

    我刚刚在 Windows 7 上安装了 postgreSQL 我正在尝试将 postgreSQL 与 WAMP 服务器集成 为此 我在 httpd conf 和 php ini 文件中进行了以下更改 1个加载模块c path to libp
  • 将数组拆分为特定数量的块

    我知道array chunk 允许将数组拆分为多个块 但块的数量根据元素的数量而变化 我需要的是始终将数组拆分为特定数量的数组 例如 4 个数组 以下代码将数组分为 3 个块 两个块各有 2 个元素 1 个块有 1 个元素 我想要的是将数组
  • 如何从字符串中删除所有数字?

    我想删除字符串 0 9 中的所有数字 我写了这段有效的代码 words preg replace 0 words remove numbers words preg replace 1 words remove numbers words
  • PHP文件上传

    如果我想在文件名转到服务器的永久位置 而不是临时位置 之前更改文件名 我该如何执行此操作 代码如下
  • 为什么 PHP 中不允许“传统”类型提示?

    刚刚发现类型提示 http php net manual en language oop5 typehinting phpPHP 中允许 但不适用于整数 字符串 布尔值或浮点数 为什么 PHP 不允许对整数 字符串等类型进行类型提示 从 P
  • 在 PHP 中模拟 jQuery.ajax 请求

    我必须在 PHP 中模拟 AJAX 请求 就像在 jQuery 中一样 我当前的代码在这里 原始 AJAX 调用 不得修改 ajax type POST url someFile php data data success function
  • “pdo_mysql”已禁用,我无法启用它。我在 iMac 7.1 OSX 10.6.8 上安装了 MAMP v. 3.0.4

    pdo mysql 已禁用 我无法启用它 我在 iMac 7 1 OSX 10 6 8 上安装了 MAMP v 3 0 4 在我的 phpinfo 页面上 我可以看到唯一启用的 PDO 是 sqlite 如果我查看 php 5 5 10 扩
  • 文件修改时间检查的成本

    对于Linux下包含少量字节的文件 我只需要处理自上次处理以来发生更改的时间 我通过调用 PHP 检查文件是否被更改clearstatcache filemtime 定期 由于整个文件总是很小 因此删除对 filemtime 的调用并通过将

随机推荐

  • vue踩坑填坑(四):在vue单页中修改title

    由于在vue单页应用中title只设定在入口文件index html 如果切换路由 title怎么更换 在路由router中设置meta path chooseBrand component resolve gt require compo
  • 数据链路层简介

    1 数据链路层的基本概念 数据链路层在物理层提供服务的基础上向网络层提供服务 其最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层 其主要作用是加强物理层传输原始比特流的功能 将物理层提供的可能出错的物理连接改造成为逻辑上
  • Python 保存数据的方法(4种方法)

    Python 保存数据的方法 open函数保存 使用with open 新建对象 写入数据 这里使用的是爬取豆瓣读书中一本书的豆瓣短评作为例子 import requests from lxml import etree 发送Request
  • 无线连接打印服务器,如何用旧电脑架设无线网络打印服务器

    如何用旧电脑架设无线网络打印服务器 由会员分享 可在线阅读 更多相关 如何用旧电脑架设无线网络打印服务器 4页珍藏版 请在人人文库网上搜索 1 如何用旧电脑架设无线网络打印服务器在工作中 单位需要打印的文件还是不少的 可是笔记本电脑连接一个
  • input框限输入数字并保留两位小数

    先把非数字的都替换掉 除了数字和 obj value obj value replace d g 保证只有出现一个 而没有多个 obj value obj value replace 2 g 必须保证第一个为数字而不是 obj value
  • iOS上架及ipa包上传到AppStore

    概述 由于苹果的机制 在非越狱机器上安装应用必须通过官方的Appstore 开发者开发好应用后上传Appstore 也需要通过审核等环节 AppCan作为一个跨主流平台的一个开发平台 也对ipa包上传Appstore作了支持 本文从三个流程
  • 通过canvas实现将html的某些元素转为png图片

    有时候我们需要把html或者某些html元素转换为图片 并且支持下载 下面是学习之后的总结 希望能给大家带来帮助 所需插件库 html2canvas js canvas2image js base64 js 资源地址 链接 https pa
  • 蛇形矩阵(完全)

    画 n阶蛇形方阵 比如如图是5阶方阵 5条对角线 1 2 6 7 15 3 5 8 14 16 4 9 13 17 22 10 12 18 21 23 11 19 20 24 25 解题思路 1 分为上三角和下三角 上三角的思路是同蛇形矩阵
  • 训练自己的ai模型(一)学习笔记与项目实操

    ai模型大火 作为普通人 我也想做个自己的ai模型 训练自己的ai模型通常需要接下来的的六步 一 收集和准备数据集 需要收集和准备一个数据集 其中包含想要训练模型的数据 这可能需要一些数据清理和预处理 以确保数据集的质量和一致性 二 选择和
  • clash设置代理后内网访问慢及访问不到问题

    配置忽略代理的ip及域名即可 在 config clash文件夹下新建 proxyIgnoreList plist文件 如果不知道 config clash在哪的 可以通过打开本地文件夹来定位 然后在新创建的文件内写入要忽略代理的域名及ip
  • 链表与节点

    链表 java中通过 node next 表示 node的下一个节点 同理 node next next 表示 node后的第二个节点 通过链表这种数据结构 可以实现许多奇妙的组合 这里我通过接口的方式 把重要的方法进行了封装 虽然只有三个
  • 逆流而上——泛谈对二进制可执行程序的静态反编译

    欢迎对本blog相关主题感兴趣的团体或单位转载相关文章 但转载时请注明出处 谢谢 一 概述 首先应该声明的是 这里讨论的反编译是针对二进制可执行程序进行的静态反向编译操作 虽然对于类似Java Bytecode和MSIL的虚拟机中间代码的反
  • 【layui】 灵活使用弹出层iframe 让你的父界面代码更加清晰

    第一次使用layui框架时候 layer open 使用了最最累赘的 静态布局div 在写入content中不但让你的代码逻辑很乱 而且不利于开发 所以整理一款 弹出层js 是在开发中必不可少的 在此感谢 X admin2 0 提供的源码
  • python实现次梯度(subgradient)和近端梯度下降法 (proximal gradient descent)方法求解L1正则化

    l1范数最小化 考虑函数 显然其在零点不可微 其对应的的次微分为 注意 的取值为一个区间 两个重要定理 1 一个凸函数 当且仅当 为全局最小值 即 为最小值点 2 为函数 不一定是凸函数 的最小值点 当且仅当在该点可次微分且 考虑最简单的一
  • scrapy爬取王者官网壁纸

    1 安装scrapy pip install scrapy pip install Pillow 2 创建项目 scrapy startproject wangzhe cd wangzhe scrapy genspider wz xxx 3
  • 蓝牙定位技术原理--蓝牙人员定位--蓝牙定位--新导智能

    众所周知 蓝牙通讯技能被广泛用于手的机 智能家居 智能穿戴等通讯中 随着物联网生态链逐渐走向成熟 对定位的需求也大大增加 这给蓝牙在该范畴又发明了一番宽广的六合 接下来首要剖析一下蓝牙定位技能的作业原理与首要使用场景 一 蓝牙人员定位原理
  • K8S master高可用,多master节点 (keepalived + haproxy)案例

    说明 Apiserver是用户和 kubernetes 集群交互的入口 封装了核心对象的增删改查操作 提供了 RESTFul 风格的 API 接口 通过etcd来实现持久化并维护对象的一致性 所以在整个K8S集群中 Apiserver服务至
  • Python实战项目(一)网页虚拟访问程序

    作者 尘世镜花恋 声明 本文章纯属个人学习所作 切勿用于非法渠道 转载请注明原文链接 有一些网站 对于本机用户自身的访问也计入访问量内 所以我们可以利用这一点利用自己的电脑提高自己网页的访问量 这里仅介绍用本机ip访问 首先导入reques
  • 小白_Unity引擎_详细Camera以及代码设置

    Cemera摄像机 Unity主要核心组件之一 显示场景中 摄像机照射部分 是向玩家捕获和显示世界的设备 1 ClearFlags 清除标记 显示背景内容 默认为天空盒子 代码设置 m Camera GetComponent
  • PHP的AES加密,模式为“AES/CBC/PKCS5Padding“,含解密

    加密需要php5版本 php7方法已弃用 AES加密请求数据 加密通过AES加密请求数据 param array query return string public function enAES key input size mcrypt