java加密和js的CryptoJS加密
背景:java的解密加密和js的对应这里做个记录,这里加密hello字符串为示例
CryptoJS.enc.Base64.stringify
对应的加密示例
js
加密
sign = 'hello';
var signmd5 = CryptoJS.MD5(sign);
var signbase64 = CryptoJS.enc.Base64.stringify(signmd5)
console.log("signmd5 = "+signmd5);
console.log("signbase64 = "+signbase64);
输出
signmd5 = 5d41402abc4b2a76b9719d911017c592
signbase64 = XUFAKrxLKna5cZ2REBfFkg==
java
加密
这里注意包的选择,转md5
和base64
用的是spring包下的,在转base64
之前做了个byte
转换用的是apache.commons.codec
包下的。
import org.apache.commons.codec.digest.DigestUtils;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import java.io.UnsupportedEncodingException;
import java.util.Base64;
@SpringBootTest
class Utils2Tests {@Testpublic void test1() throws UnsupportedEncodingException {String str = "hello";String md5 = org.springframework.util.DigestUtils.md5DigestAsHex(str.getBytes("utf-8"));byte[] sign = DigestUtils.md5(str);String encodedString = Base64.getEncoder().encodeToString(sign);System.out.println("md5 = "+md5);System.out.println("base64 = "+encodedString);}
}
输出
md5 = 5d41402abc4b2a76b9719d911017c592
base64 = XUFAKrxLKna5cZ2REBfFkg==
至此
js
和java
加密一致的方法结束
CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse())
对应的加密示例
js
加密
sign = 'hello';
var signmd5 = CryptoJS.MD5(sign);
var signbase64 = CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse(signmd5));
console.log("signmd5 = "+signmd5);
console.log("signbase64 = "+signbase64);
输出
可以看到和最开始js加密的结果不一致,这里得到的是NWQ0MTQwMmFiYzRiMmE3NmI5NzE5ZDkxMTAxN2M1OTI=
然而最开始js加密结果是XUFAKrxLKna5cZ2REBfFkg==
signmd5 = 5d41402abc4b2a76b9719d911017c592
signbase64 = NWQ0MTQwMmFiYzRiMmE3NmI5NzE5ZDkxMTAxN2M1OTI=
java
加密
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.util.DigestUtils;
import java.io.UnsupportedEncodingException;
import java.util.Base64;@SpringBootTest
class Utils2Tests {@Testpublic void test1() throws UnsupportedEncodingException {String sign = "hello";String md5 = DigestUtils.md5DigestAsHex(sign.getBytes("utf-8"));System.out.println("md5 = "+md5);String encodedString = Base64.getEncoder().encodeToString(md5.getBytes());System.out.println("base64 = "+encodedString);}
}
输出
可以看到和上面的js加密结果一致
md5 = 5d41402abc4b2a76b9719d911017c592
base64 = NWQ0MTQwMmFiYzRiMmE3NmI5NzE5ZDkxMTAxN2M1OTI=
java加密和js的CryptoJS加密相关推荐
- python js加密解密_AES用cryptojs加密,用python解密加密Ciph
使用js CryptoJS加密和使用python解密时遇到问题密码密码在 这是我在js中的实现, 用加密消息附加iv并用base64编码 var message='Secreat Message to ...
- js des加密 java_java JS DES互相加密解密 通用!!!
如果 出现 异常 javax.crypto.IllegalBlockSizeException 那就看我博客园的 另外一篇 解决这个异常 帮客户整了1天 试了N个JS 的方法 终于找我弄出来了! j ...
- js怎么实现对html代码加密解密,JS实现Base64加密解密
JavaScript实现Base64加密解密.Base64与其说是加密算法不如说是方便数据传输而生的数据转换手段. 测试代码:html> test .resource_enc, .resourc ...
- java nodejs aes_Java与Node.js利用AES加密解密出相同结果的方法示例
前言 工作中遇到nodejs端通过aes加密,安卓客户端Java解密,同样nodejs也需要解密安卓客户端加密过来的内容,发现两个加密结果不一样,查询资料发现java端需要对密钥再MD5加密一遍,以下 ...
- js实现md5加密,可以加密成16位或32位
js实现md5加密,可以加密成16位或32位 md5在线加密工具 js实现md5加密 加密成16位 加密成32位 md5在线加密工具 md5在线加密工具,321在线工具站 https://www.32 ...
- java des加密与js解密
java代码:import java.io.IOException; import java.security.SecureRandom;import javax.crypto.Cipher; imp ...
- ss加密php,js前端加密,php后端解密(crypto-js,openssl_decrypt)
基于PHP和JS的AES相互加密解密方法详解(CryptoJS) 基于PHP和JS的AES相互加密解密方法详解(CryptoJS) 注意说明: 1. 首先引入CryptoJS包中的aes.js和pad ...
- RSA对称加密(JS加密,C#、Java解密)
目录 一.背景介绍 二.工作原理 三.实现步骤 (一)JS前端加密,.NET后端解密 1.生成RSA加密的公钥和私钥. 2.前端js加密. 3.C#解密 (二)JS前端加密,Java后端解密 1.前端 ...
- java gcm_Java实现AES-GCM解密,JS实现AES-GCM加密。
JS实现AES-GCM加密 首先我们先引用asmcrypto.js来实现JS端的加密. const asmcrypto = require('asmcrypto.js') 有了asmcrypto 对象 ...
最新文章
- iptables配置-Linux系统安全防火墙
- Fashion MNIST自编码器网络实战
- 微信公众平台消息接口PHP版
- 阿里云 OSS+CDN
- spring的事务有几种方式
- 学习响应式BootStrap来写融职教育网站,Bootsrtap第十一天Dplayer播放器
- Securing Spring Cloud Microservices With OAuth2
- 多媒体方面的应用程序java_Java编程之多媒体基础
- js 正则判断用户是否输入表情
- 自己手写一个Spring MVC框架
- 数学分析原理 定理 6.12
- Hadoop与Spark的集群复制
- for函数python_for函数python
- 层级结构——组合模式
- 【目标检测】39、一文看懂计算机视觉中的数据增强
- 找回 坚果云 的 选择性同步 功能
- chm文件导入java_Java CHM格式的API帮助文档的制作详解
- python提取excel一列或多列数据另存为新表(1)
- 浏览器输入url后怎样请求服务的
- 11_Flask之Session 设置session有效期 获取session 删除session