针对php的AES-128-CBC加解密代码,需要使用JAVA解密。

1. php加解密

//加密
$result = openssl_encrypt($data, "AES-128-CBC", $aesKey, 0, $aesIv);
//解密
$result = openssl_decrypt($data, "AES-128-CBC", $aesKey, 0, $aesIv);
需要注意$options变量的不同。
加密过程中的$options=1, 意味着使用OPENSSL_RAW_DATA。
解密过程中的$options=1, 意味着使用OPENSSL_RAW_DATA。$options=0,意味着使用base64_encoded文本。此外,$aesKey和$aesIv要求16位长度,超过限制长度,截取前16位。

2. java解密

    public String aesDecrypt(String data, String aesKey, String aesIv) throws Exception {Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");cipher.init(Cipher.DECRYPT_MODE, new SecretKeySpec(aesKey.substring(0, 16).getBytes(), ALGORITHM),new IvParameterSpec(aesIv.getBytes()));byte[] plainText = Base64.getDecoder().decode(Base64.getDecoder().decode(data));byte[] plainBytes = cipher.doFinal(plainText);return new String(plainBytes);}

AES-128-CBC加解密/openssl_decrypt相关推荐

  1. Go Nodejs Java Aes 128 ECB加密解密结果保持一致

    在多语言的生产环境下,常常是由一种语言进行加密而由另一种语言来进行解密,因此有必要保持各种语言之间加密解密算法的一致性.下面列出了Go,Nodejs,Java 的 Aes-128-Ecb的加密解密算法 ...

  2. aes 256 ecb 加解密 pkcs7补全 python JS

    python aes 256 ecb 加解密 功能 实现 Python ECB 256 JS版本 ECB 算法 JS版本 CBC 算法Pkcs7填充 SQL AES 在线验证网站 notice 功能 ...

  3. aes加密算法python语言实现_如何用Python实现AES CCM的加解密

    1.简介 AES CCM被广泛应用于现代通讯中,在学习过程中需要验证数据的加解密的结果,那么有个方便修改的Python脚本工具就是一个迫切的需求. 2. 实施 我们下面介绍如何实现AES CCM的Py ...

  4. RSA+AES数字信封加解密设计

    登录认证.鉴权这些都做好了过后.就开始我们的加密设计了.这里采用了简化数字信封进行加密.首先客户端(浏览器)先请求一份RSA非对称密钥.如果我们采用了openresty或者有能力在nginx开发C模块 ...

  5. Java实现Base64、DES、AES、RSA加解密以及加密方式之间的区别

    Base64 加密, 这个其实不可以算作加密方法,它可以看作是一种编码方式,它的用途只是二进制数字和字符串进行相互转化. Base64是网络上最常见的用于传输 8Bit字节码的编码方式之一,是一种基于 ...

  6. python实现AES对文件加解密(这里使用ECB密码本模式)

    文章目录 1.加密 2.解密 pip install pycryptodome 请注意加解密成功的前提条件 加解密密匙key值相同 加解密密匙长度相同 加解密补长度的逻辑相同 加解密的模式相同 1.加 ...

  7. JavaIO流加解密,AES对字符串加解密

    加解密文件? 哈哈哈哈,当然是为了安全,自己的东西不像让别人看见. 1,学了JavaIO流的字节流的读取写入,便可实现. 加密原理: 把文件读取,然后,按某个特定的规则改变其字节写入一个新文件. 解密 ...

  8. java aes解密算法_使用java实现AES算法的加解密(亲测可用)

    话不多说,直接上代码 import javax.crypto.Cipher; import javax.crypto.spec.IvParameterSpec; import javax.crypto ...

  9. BouncyCastle C# SM4 CBC加解密

    说明 从bouncycastle C#的主页中可以看到 1.8.4版本增加了SM4分组加密算法的支持. 通过官方提供的测试用例我们可以知道如何调用该算法. 测试用例: SM4Test.cs 本次将使用 ...

最新文章

  1. 保险业尚不能完全发挥CRM优势 需强化
  2. 单连接算法与全连接算法
  3. 在java中下列描述错误的是_在 JAVA 中 , 关于类的方法 , 下列描述错误的是 ()._学小易找答案...
  4. C++ Primer 5th笔记(chap 19 特殊工具与技术)控制内存分配
  5. MindManager脑图之项目管理甘特图
  6. 二级java考什么_计算机二级Java考试资料!
  7. Mysql union联合查询_Mysql联合查询union和union all的使用介绍
  8. chromium浏览器开发系列第五篇:Debugging with WinDBG
  9. SpaceEmacs Rocks Day8 学习笔记
  10. CentOS7安装wxWidgets错误解决
  11. php 如何下载,php的包怎么下载
  12. 英伟达控制面板打不开的解决办法
  13. C# ajax上传图片
  14. ios相机黑边_iOS照相机去黑框
  15. 聚苯乙烯微球(PS)高分子微球材料
  16. 获取Json对象中Json数组中的一个Json对象
  17. Android实现应用内多语言切换
  18. 免费的java外文文献,JAVA外文文献翻译[共18页].doc
  19. 支付宝APP支付 ---服务器开发
  20. linux 文件中查找内容

热门文章

  1. stm32f4串口接收与发送
  2. disable_functions绕过总结
  3. Sentaurus TCAD学习之SVISUAL
  4. java集成r语言_R语言- 实验报告 - 利用R语言脚本与Java相互调用
  5. 将大数据运用于投资,结果会如何?
  6. 2023年了,现在学Java还有机会吗?
  7. pycharm配置环境
  8. Wwise 101-01 整合声音 图文版
  9. VMware安装Debian9及开发环境配置
  10. redis集群搭建及连接(阿里云)