没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
工作中遇到 nodejs 端通过 aes 加密,安卓客户端 java 解密,同样 nodejs 也需要解密安卓客
户端加密过来的内容,发现两个加密结果不一样,查询资料发现 java 端需要对密钥再 MD5
加密一遍,以下是 aes ecb 加密的内容,如果是 cbc 也同样需要对秘钥 MD5 加密:
nodejs:
/**
* aes 加密
* @param data
* @param secretKey
*/
encryptUtils.aesEncrypt = function(data, secretKey) {
var cipher = crypto.createCipher('aes-128-ecb',secretKey);
return cipher.update(data,'utf8','hex') + cipher.final('hex');
}
/**
* aes 解密
* @param data
* @param secretKey
* @returns {*}
*/
encryptUtils.aesDecrypt = function(data, secretKey) {
var cipher = crypto.createDecipher('aes-128-ecb',secretKey);
return cipher.update(data,'hex','utf8') + cipher.final('utf8');
}
java:
package com.iofamily.util;
import java.security.MessageDigest;
import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;
/**
* AES 加密,与 Nodejs 保持一致
* @author lmiky
* @date 2014-2-25
*/
public class AESForNodejs {
public static final String DEFAULT_CODING = "utf-8";
资源评论
czf303286330
- 粉丝: 0
- 资源: 16
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功