本文实例讲述了PHP7实现和CryptoJS的AES加密方式互通。分享给大家供大家参考,具体如下:

PHP类:

class AES

{

/**

*

* @param string $string 需要加密的字符串

* @param string $key 密钥

* @return string

*/

public static function encrypt($string, $key)

{

// openssl_encrypt 加密不同Mcrypt,对秘钥长度要求,超出16加密结果不变

$data = openssl_encrypt($string, 'AES-128-ECB', $key, OPENSSL_RAW_DATA);

return base64_encode($data);

}

/**

* @param string $string 需要解密的字符串

* @param string $key 密钥

* @return string

*/

public static function decrypt($string, $key)

{

return openssl_decrypt(base64_decode($string), 'AES-128-ECB', $key, OPENSSL_RAW_DATA);

}

/**

* 获取秘钥

* @return string

*/

public static function getSecretKey()

{

$str='xxx';//生成16位的字符窜

return $str;

}

}

JS的写法:

AesKey = 'xxxxx';//加密时用的key,跟php一样

message='xxxxxxx';//加密后的字符窜

var ECBOptions = {

mode: CryptoJS.mode.ECB,

padding: CryptoJS.pad.Pkcs7

};

var key = CryptoJS.enc.Utf8.parse(AesKey);

var bytes = CryptoJS.AES.decrypt(message, key,ECBOptions);

var originalText = bytes.toString(CryptoJS.enc.Utf8);

console.log(originalText)

PS:关于加密解密感兴趣的朋友还可以参考本站在线工具:

在线MD5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160加密工具:http://tools.jb51.net/password/hash_md5_sha

希望本文所述对大家PHP程序设计有所帮助。

cryptojs php 互通_PHP7实现和CryptoJS的AES加密方式互通示例【AES-128-ECB加密】相关推荐

  1. cryptojs php 互通_关于PHP7和CryptoJS的AES加密方式互通

    对于PHP7与CryptoJS的AES加密的方式互通代码不能正确执行,我的测试代码为: JS端:let iv = CryptoJS.enc.Utf8.parse('1111111111111111') ...

  2. cryptojs vue 使用_VueJs里利用CryptoJs实现加密及解密的方法示例

    第一步 安装 安装crypto-js 第二步 创建 在js文件目录下创建一个js文件secret /** * 对页面上输入的密码进行加密传输给后台进行验证,对返回的数据进行解密,在页面展示 */ le ...

  3. cryptojs vue 使用_VueJs里利用CryptoJs实现加密及解密

    第一步 安装 安装crypto-js 第二步 创建 在js文件目录下创建一个js文件secret /** * 对页面上输入的密码进行加密传输给后台进行验证,对返回的数据进行解密,在页面展示 */ le ...

  4. java aes javascript_Java已有AES加解密,现需要前端Javascript加密调接口,返回的数据需要解密,目前互通不了,找不到原因...

    目前Javascript使用'crypto-js'包. 前后台可以自己跑通加解密,但是,无法互通. 针对对象{}加密--网上的方案,已经尝试了4天左右了,还没成功,请指导. 无思路,无报错. Java ...

  5. 明日之后android和ios,明日之后互通区有哪些 明日之后ios和安卓互通区一览

    明日之后互通区有哪些,明日之后许多玩家都在和小伙伴一起在体验着明日之后手游,由于手机系统型号不一样就有不少玩家在寻找着安卓和ios互通区体验,那么明日之后有哪些区服安卓和ios互通呢,一起来看看明日之 ...

  6. QQ手游微信互通服务器,使命召唤手游QQ和微信互通吗 能不能跨平台一起玩

    使命召唤手游如果玩家选择的是QQ服,而自己的好友选择的是微信,这两个能不能在一起玩?可不可以互通呢?不少玩家都有这个困惑吧,本次小编就为大家仔细介绍一下这两个平台的互通解答,如果你也有这个困惑,可以仔 ...

  7. Android平台和java平台 DES加密解密互通程序及其不能互通的原因

    为什么80%的码农都做不了架构师?>>>    网上的demo一搜一大堆,但是,基本上都是一知半解(包括我).为什么呢?我在尝试分别在两个平台加密的时候,竟然发现Android DE ...

  8. 鸿蒙安卓账号是否互通,苹果与安卓之间游戏账号不互通,那鸿蒙与安卓之间能否实现互通?...

    不是说PC版游戏不如手游,而是手游只需在手机有网.手机配置不算太差的情况下就可以随时随地的进行,并且手机自身的移动数据网络并不会造成太高的网络延迟.而PC版游戏则需在特定的情况下才能进行,并且对网速也 ...

  9. 互联互通动态 | 百度点石HIGHFLIP隐私计算互联互通框架实现开源

    隐私计算联盟 2022年12月,为了进一步推动隐私计算互联互通标准规范和试点实践,筑基可信数据流通网络,隐私计算联盟协同多家企业联合成立"隐私计算联盟互联互通推进计划".当前,隐私 ...

最新文章

  1. 前锋 php 杭州,前锋php培训
  2. libevent源码深度剖析十一
  3. 美国第一台电子计算机是由女程序员编写的
  4. 【数据结构与算法】之深入解析“恢复二叉搜索树”的求解思路与算法示例
  5. 如何选择高性能的数据分析工具,你需要看看数据架构的进化史!
  6. git 入门操作指令
  7. MOSS中删除绑定到List上的Eventhandler
  8. vue中html没引入js文件,vue.js如何引入非模块化的js文件并调用里面的方法和类。...
  9. 单片机C语言,从小白到菜鸟进阶教程(超详细代码解读)
  10. PreferenceScreen 中如何自定义SwitchPreferenceCompat的布局
  11. 6. LaTeX 参考文献的排版与引用
  12. 重新认识Windows计算器Calc(MatLab计算替代品)——你所不知道的细节
  13. echarts之饼图制作+标示线
  14. 计算机网络 密钥分配
  15. 游戏项目管理经验方法
  16. Flutter开发桌面应用
  17. 真实DOM和虚拟DOM
  18. Qt QIODevice::Unbuffered 理解
  19. 如何让两台笔记本电脑通过无线网卡连接起来
  20. proteus仿真-单片机-超声波测距报警

热门文章

  1. 判断一颗二叉树是否为二叉搜索树(Validate Binary Search Tree)
  2. 第一次搭建阿里云服务器
  3. Linux下载安装一个源码包
  4. spring注解controller示例
  5. 关注地方门户网站盈利模式
  6. C# Socket编程
  7. Flex开发中遇到未整理资源
  8. MVC 3.0 在各个版本IIS中的部署
  9. go调用ethereum_Go语言爱好者周刊:第 76 期 — 新年计划做了吗?
  10. Mysql自增列,并发插入时导致死锁的问题