From ff847248777e7d0b5ee3ebd1ea05060212423921 Mon Sep 17 00:00:00 2001 From: xhxu Date: Tue, 12 Apr 2022 10:08:16 +0800 Subject: [PATCH] update tt --- .../toutiao/api/impl/TtOpenComponentServiceImpl.java | 6 ++++-- .../iformall/service/toutiao/utils/ServerVerification.java | 6 +++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/toutiao/api/impl/TtOpenComponentServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/toutiao/api/impl/TtOpenComponentServiceImpl.java index 4536265..743edb7 100644 --- a/mallinkService/src/main/java/com/iformall/service/toutiao/api/impl/TtOpenComponentServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/toutiao/api/impl/TtOpenComponentServiceImpl.java @@ -12,6 +12,7 @@ import com.iformall.service.toutiao.api.bean.TtOpenGsonBuilder; import com.iformall.service.toutiao.api.bean.TtOpenRetrieveCode; import com.iformall.service.toutiao.api.bean.TtOpenTicket; import com.iformall.service.toutiao.utils.MsgDecrypt; +import com.iformall.service.toutiao.utils.ServerVerification; import me.chanjar.weixin.common.error.WxError; import me.chanjar.weixin.common.error.WxErrorException; import me.chanjar.weixin.common.util.crypto.SHA1; @@ -79,8 +80,9 @@ public class TtOpenComponentServiceImpl implements TtOpenComponentService { @Override public boolean checkSignature(String timestamp, String nonce, String encrypt, String signature) { try { - return SHA1.gen(getWxOpenConfigStorage().getComponentToken(), timestamp, nonce, encrypt) - .equals(signature); + ServerVerification verification = new ServerVerification(); + String newMsgSignature = verification.getMsgSignature(getWxOpenConfigStorage().getComponentToken(),timestamp, nonce, encrypt); + return verification.verify(signature,newMsgSignature); } catch (Exception e) { this.log.error("Checking signature failed, and the reason is :" + e.getMessage()); return false; diff --git a/mallinkService/src/main/java/com/iformall/service/toutiao/utils/ServerVerification.java b/mallinkService/src/main/java/com/iformall/service/toutiao/utils/ServerVerification.java index b521248..af9b165 100644 --- a/mallinkService/src/main/java/com/iformall/service/toutiao/utils/ServerVerification.java +++ b/mallinkService/src/main/java/com/iformall/service/toutiao/utils/ServerVerification.java @@ -5,7 +5,7 @@ import java.security.MessageDigest; public class ServerVerification { - private String getMsgSignature(String tpToken, String timestamp, String nonce, String encrypt) throws Exception { + public String getMsgSignature(String tpToken, String timestamp, String nonce, String encrypt) throws Exception { String[] values = new String[] {tpToken, timestamp, nonce, encrypt}; Arrays.sort(values); @@ -41,9 +41,9 @@ public class ServerVerification { } } - private void verify(String msgSignature, String newMsgSignature) { + public boolean verify(String msgSignature, String newMsgSignature) { boolean res = msgSignature.equals(newMsgSignature); - System.out.println(res); + return res; } public static void main(String[] args) throws Exception {