AES-128-CBC加解密/openssl_decrypt
针对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相关推荐
- Go Nodejs Java Aes 128 ECB加密解密结果保持一致
在多语言的生产环境下,常常是由一种语言进行加密而由另一种语言来进行解密,因此有必要保持各种语言之间加密解密算法的一致性.下面列出了Go,Nodejs,Java 的 Aes-128-Ecb的加密解密算法 ...
- aes 256 ecb 加解密 pkcs7补全 python JS
python aes 256 ecb 加解密 功能 实现 Python ECB 256 JS版本 ECB 算法 JS版本 CBC 算法Pkcs7填充 SQL AES 在线验证网站 notice 功能 ...
- aes加密算法python语言实现_如何用Python实现AES CCM的加解密
1.简介 AES CCM被广泛应用于现代通讯中,在学习过程中需要验证数据的加解密的结果,那么有个方便修改的Python脚本工具就是一个迫切的需求. 2. 实施 我们下面介绍如何实现AES CCM的Py ...
- RSA+AES数字信封加解密设计
登录认证.鉴权这些都做好了过后.就开始我们的加密设计了.这里采用了简化数字信封进行加密.首先客户端(浏览器)先请求一份RSA非对称密钥.如果我们采用了openresty或者有能力在nginx开发C模块 ...
- Java实现Base64、DES、AES、RSA加解密以及加密方式之间的区别
Base64 加密, 这个其实不可以算作加密方法,它可以看作是一种编码方式,它的用途只是二进制数字和字符串进行相互转化. Base64是网络上最常见的用于传输 8Bit字节码的编码方式之一,是一种基于 ...
- python实现AES对文件加解密(这里使用ECB密码本模式)
文章目录 1.加密 2.解密 pip install pycryptodome 请注意加解密成功的前提条件 加解密密匙key值相同 加解密密匙长度相同 加解密补长度的逻辑相同 加解密的模式相同 1.加 ...
- JavaIO流加解密,AES对字符串加解密
加解密文件? 哈哈哈哈,当然是为了安全,自己的东西不像让别人看见. 1,学了JavaIO流的字节流的读取写入,便可实现. 加密原理: 把文件读取,然后,按某个特定的规则改变其字节写入一个新文件. 解密 ...
- java aes解密算法_使用java实现AES算法的加解密(亲测可用)
话不多说,直接上代码 import javax.crypto.Cipher; import javax.crypto.spec.IvParameterSpec; import javax.crypto ...
- BouncyCastle C# SM4 CBC加解密
说明 从bouncycastle C#的主页中可以看到 1.8.4版本增加了SM4分组加密算法的支持. 通过官方提供的测试用例我们可以知道如何调用该算法. 测试用例: SM4Test.cs 本次将使用 ...
最新文章
- 保险业尚不能完全发挥CRM优势 需强化
- 单连接算法与全连接算法
- 在java中下列描述错误的是_在 JAVA 中 , 关于类的方法 , 下列描述错误的是 ()._学小易找答案...
- C++ Primer 5th笔记(chap 19 特殊工具与技术)控制内存分配
- MindManager脑图之项目管理甘特图
- 二级java考什么_计算机二级Java考试资料!
- Mysql union联合查询_Mysql联合查询union和union all的使用介绍
- chromium浏览器开发系列第五篇:Debugging with WinDBG
- SpaceEmacs Rocks Day8 学习笔记
- CentOS7安装wxWidgets错误解决
- php 如何下载,php的包怎么下载
- 英伟达控制面板打不开的解决办法
- C# ajax上传图片
- ios相机黑边_iOS照相机去黑框
- 聚苯乙烯微球(PS)高分子微球材料
- 获取Json对象中Json数组中的一个Json对象
- Android实现应用内多语言切换
- 免费的java外文文献,JAVA外文文献翻译[共18页].doc
- 支付宝APP支付 ---服务器开发
- linux 文件中查找内容