From 08d6a84d7fd59ef0631f52f8b28a3d5e29568550 Mon Sep 17 00:00:00 2001 From: jinyu Date: Thu, 9 Mar 2017 10:37:38 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=A0=E9=99=A4NettyBase64=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../foxinmy/weixin4j/util/MessageUtil.java | 9 ++-- .../foxinmy/weixin4j/util/NettyBase64.java | 45 ------------------- 2 files changed, 5 insertions(+), 49 deletions(-) delete mode 100644 weixin4j-server/src/main/java/com/foxinmy/weixin4j/util/NettyBase64.java diff --git a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/util/MessageUtil.java b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/util/MessageUtil.java index 9fb82429..8801d2aa 100644 --- a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/util/MessageUtil.java +++ b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/util/MessageUtil.java @@ -6,6 +6,7 @@ import javax.crypto.Cipher; import javax.crypto.spec.IvParameterSpec; import javax.crypto.spec.SecretKeySpec; +import com.foxinmy.weixin4j.base64.Base64; import com.foxinmy.weixin4j.exception.WeixinException; /** @@ -89,7 +90,7 @@ public final class MessageUtil { byteLength += appidBytes.length; System.arraycopy(padBytes, 0, unencrypted, byteLength, padBytes.length); try { - byte[] aesKey = NettyBase64.decodeBase64(encodingAesKey + "="); + byte[] aesKey = Base64.decodeBase64(encodingAesKey + "="); // 设置加密模式为AES的CBC模式 Cipher cipher = Cipher.getInstance("AES/CBC/NoPadding"); SecretKeySpec keySpec = new SecretKeySpec(aesKey, ServerToolkits.AES); @@ -99,7 +100,7 @@ public final class MessageUtil { byte[] encrypted = cipher.doFinal(unencrypted); // 使用BASE64对加密后的字符串进行编码 // return Base64.encodeBase64String(encrypted); - return com.foxinmy.weixin4j.base64.Base64 + return Base64 .encodeBase64String(encrypted); } catch (Exception e) { throw new WeixinException("-40006", "AES加密失败:" + e.getMessage()); @@ -119,7 +120,7 @@ public final class MessageUtil { */ public static String aesDecrypt(String appId, String encodingAesKey, String encryptContent) throws WeixinException { - byte[] aesKey = NettyBase64.decodeBase64(encodingAesKey + "="); + byte[] aesKey = Base64.decodeBase64(encodingAesKey + "="); byte[] original; try { // 设置解密模式为AES的CBC模式 @@ -129,7 +130,7 @@ public final class MessageUtil { 0, 16)); cipher.init(Cipher.DECRYPT_MODE, key_spec, iv); // 使用BASE64对密文进行解码 - byte[] encrypted = NettyBase64.decodeBase64(encryptContent); + byte[] encrypted = Base64.decodeBase64(encryptContent); // 解密 original = cipher.doFinal(encrypted); } catch (Exception e) { diff --git a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/util/NettyBase64.java b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/util/NettyBase64.java deleted file mode 100644 index b77e0f78..00000000 --- a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/util/NettyBase64.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.foxinmy.weixin4j.util; - -import io.netty.buffer.ByteBuf; -import io.netty.buffer.Unpooled; -import io.netty.handler.codec.base64.Base64Dialect; - -/** - * NettyBase64 - * - * @className NettyBase64 - * @author jinyu(foxinmy@gmail.com) - * @date 2015年5月17日 - * @since JDK 1.6 - * @see - */ -public final class NettyBase64 { - - private static byte[] byteBuf2Array(ByteBuf byteBuf) { - if (byteBuf.hasArray()) { - return byteBuf.array(); - } else { - byte[] desArray = new byte[byteBuf.readableBytes()]; - byteBuf.readBytes(desArray); - return desArray; - } - } - - public static byte[] decodeBase64(final String content) { - byte[] data = ServerToolkits.getBytesUtf8(content); - ByteBuf des = io.netty.handler.codec.base64.Base64.decode( - Unpooled.copiedBuffer(data), Base64Dialect.STANDARD); - return byteBuf2Array(des); - } - - public static byte[] encodeBase64(final byte[] bytes) { - ByteBuf des = io.netty.handler.codec.base64.Base64.encode( - Unpooled.copiedBuffer(bytes), Base64Dialect.STANDARD); - return byteBuf2Array(des); - } - - public static String encodeBase64String(final byte[] bytes) { - byte[] data = encodeBase64(bytes); - return ServerToolkits.newStringUtf8(data); - } -}