php7.0版本以上不支持mcrypt_encryp函数进行加密的代码,加密方式改为openssl_encrypt

用自己私人的服务器来测试吧,99买阿里云

openssl_系列支持php5.3以上版本

1、加密方式:openssl_encrypt

// 待加密数据$data

// 加密方式$method ='des-ecb';

// 密钥$key = 'dfsf3s@!Q$fse8';

// 加密后的数据$data2

$data2 = openssl_encrypt($data, 'des-ecb', 'dfsf3s@!Q$fse8');

2、加密方式:openssl_decrypt

// 待解密数据$data2

// 加密方式$method ='des-ecb';

// 密钥$key = 'dfsf3s@!Q$fse8';

// 解密后的数据$data

$data = openssl_decrypt($data2, 'des-ecb', 'dfsf3s@!Q$fse8');

3.扩展

PHP 的 OpenSSL 扩展中,对称加密的相关函数有:

  • openssl_encrypt()
  • openssl_decrypt()
  • openssl_random_pseudo_bytes()
  • openssl_cipher_iv_length()

函数openssl_encrypt和openssl_decrypt参数相同都是($data, $method, $key, $options, $iv)

  1. $data 字符串
  2. $method 加密算法,如:des-ecb,AES-128-CBC,AES-128-CBC-HMAC-SHA1,AES-128-ECB,seed-ofb大概100多种
  3. $key 密钥
  4. $options 可选, 填充方式,默认0
  5. $iv 可选,初始化向量,用 openssl_random_pseudo_bytes() 生成随机$iv。
  • $iv长度随加密算法不同而不同,需要函数openssl_cipher_iv_length($method)获取长度。如: openssl_cipher_iv_length('BC-CBC'); //长度 8,
  • 有些加密方式不用传$iv这个参数,如:des-ecb,AES-128-ECB


最后,加密和解密时候要确保除了$data以外其他参数相同哦。

PHP API接口数据简单快速的加密解密的更多相关文章

  1. PHP--通用化API接口数据输出 封装

    /** * 通用化API接口数据输出 * author qinpeizhou * @param $message * @param array $data * @param int $httpCode ...

  2. IdentityServer4实现.Net Core API接口权限认证(快速入门)

    什么是IdentityServer4 官方解释:IdentityServer4是基于ASP.NET Core实现的认证和授权框架,是对OpenID Connect和OAuth 2.0协议的实现. 通俗 ...

  3. 微信小程序入门教程(一)API接口数据记录

    今天测试用小程序调用API接口,发现有些数据打印都是对象,怎么全部打印详细点来 小程序代码: httpsearch: function (name, offset, type, cb) { wx.re ...

  4. React 获取服务器API接口数据:axios、fetchJsonp

    使用axios.fetchJsonp获取服务器的接口数据.其中fetchJsonp是跨域访问 一.使用axios 1.安装axios模块 npm install --save axios 2.引用模块 ...

  5. 使用js+Ajax请求API接口数据-带请求头方式

    C# http请求带请求头部分 先上代码: <script type="text/javascript"> function zLoginCheck() { var A ...

  6. C#,ASP.NET简单的MD5加密,解密

    简单的MD5加密 首先要有一个加解密的规则  就是key 代码如下 // 创建Key public string GenerateKey() { DESCryptoServiceProvider de ...

  7. nodejs+express+mongodb写api接口的简单尝试

    1:启动mongodb服务 我的mongoDB的安装目录:E:\mongoDB\bin,版本:3.4.9 打开cmd  -> e:(进入e盘) -> cd mongoDB/bin(进入mo ...

  8. API接口数据自检

    这个周末的娱乐,通用模块,让后端自检,严格客户端按照文档的要求来,妈妈再也不担心我加班了,对某些团队来说,可能根本用不着,本是想到就尝试一把而已. 哎,傻X的客户端程序员,时间都去推辞扯淡打扮啦,好好 ...

  9. C# 后台获取API接口数据

    using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net ...

  10. Json API接口数据生成

    偶然发现,对前端数据模拟挺好用,没有跨域问题 https://myjson.com/

随机推荐

  1. 关于uniapp的兼容性的一些问题

    .markdown-body { line-height: 1.75; font-weight: 400; font-size: 16px; overflow-x: hidden; color: rg ...

  2. linux 基础(5)文件的打包和压缩

    文件的压缩是非常重要和常见的操作. 在 Windows 下,zip 和 rar 经常使用的压缩软件,框选一堆文件,右键用 WinRAR 就可以完成压缩.不过在 linux 下通常不这么做.一是因为 l ...

  3. CentOS8安装RabbitMQ3.8.16

    之前安装过旧版的RabbitMQ和Erlang,先卸载. ①:卸载RabbitMQ /sbin/service rabbitmq-server stop yum list | grep rabbitm ...

  4. 修改Linux服务的文件打开句柄数

    在bash中,有个ulimit命令,提供了对shell及该shell启动的进程的可用资源控制.主要包括打开文件描述符数量.用户的最大进程数量.coredump文件的大小等. 在centos 5/6 等 ...

  5. NPM 包开发与优化全面指南

    前言 Hey, 我是 Immerse 系列文章首发于[Immerse],更多内容请关注该网站 转载说明:转载请注明原文出处及版权声明! 1. 理解 NPM 包的结构 1.1 package.json ...

  6. python统计人的视角(1)——python基础

    3D画图 import matplotlib import matplotlib.pyplot as plt import numpy as np fig=plt.figure() ax=fig.ad ...

  7. markdown小小白常用语法

    第一次用vscode写笔记去同步Cnblog,不知道写啥就记点常用的md语法吧 1. 标题怎么写? 利用"#" + " " 即可实现第几节标题(其中'/',表转 ...

  8. vue中获取v-for循环出来的元素的相对于父级的最左边的距离

  9. php-fpm相关操作

    php-fpm常用操作 一. php5.3.3之后使用新号方式控制php-fpm进程 INT, TERM 立即终止 QUIT 平滑终止 USR1 重新打开日志文件 USR2 平滑重启所有worker进 ...

  10. git针对指定网站设置代理

    我们经常要用到各种git地址,比如github.gitee还有自己搭建的git等等. 但是github我们经常拉取和推送代码的时候超时,这时候如果我们搜索会发现大量的文章都是告诉我们设置全局系统代理: ...