From 7ef4892f9f24f941aca37e6b3991b808a0aca619 Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期五, 08 九月 2023 11:16:35 +0800
Subject: [PATCH] 优化
---
ycl-platform/src/main/java/com/ycl/common/util/Md5.java | 68 ++++++++++++++++++++++++++++++++++
1 files changed, 68 insertions(+), 0 deletions(-)
diff --git a/ycl-platform/src/main/java/com/ycl/common/util/Md5.java b/ycl-platform/src/main/java/com/ycl/common/util/Md5.java
new file mode 100644
index 0000000..aebeb9f
--- /dev/null
+++ b/ycl-platform/src/main/java/com/ycl/common/util/Md5.java
@@ -0,0 +1,68 @@
+package com.ycl.common.util;
+
+import java.security.MessageDigest;
+
+public class Md5 {
+/**
+* md5鍔犲瘑鏂规硶
+* @author: zhengsunlei
+* Jul 30, 2010 4:38:28 PM
+* @param plainText 鍔犲瘑瀛楃涓�
+* @return String 杩斿洖32浣峬d5鍔犲瘑瀛楃涓�(16浣嶅姞瀵嗗彇substring(8,24))
+* 姣忎綅宸ョ▼甯堥兘鏈変繚鎸佷唬鐮佷紭闆呯殑涔夊姟
+* each engineer has a duty to keep the code elegant
+*/
+public final static String md5(String plainText) {
+ // 杩斿洖瀛楃涓�
+ String md5Str = null;
+ try {
+ // 鎿嶄綔瀛楃涓�
+ StringBuffer buf = new StringBuffer();
+ /**
+ * MessageDigest 绫讳负搴旂敤绋嬪簭鎻愪緵淇℃伅鎽樿绠楁硶鐨勫姛鑳斤紝濡� MD5 鎴� SHA 绠楁硶銆�
+ * 淇℃伅鎽樿鏄畨鍏ㄧ殑鍗曞悜鍝堝笇鍑芥暟锛屽畠鎺ユ敹浠绘剰澶у皬鐨勬暟鎹紝骞惰緭鍑哄浐瀹氶暱搴︾殑鍝堝笇鍊笺��
+ *
+ * MessageDigest 瀵硅薄寮�濮嬭鍒濆鍖栥��
+ * 璇ュ璞¢�氳繃浣跨敤 update()鏂规硶澶勭悊鏁版嵁銆�
+ * 浠讳綍鏃跺�欓兘鍙互璋冪敤 reset()鏂规硶閲嶇疆鎽樿銆�
+ * 涓�鏃︽墍鏈夐渶瑕佹洿鏂扮殑鏁版嵁閮藉凡缁忚鏇存柊浜嗭紝搴旇璋冪敤digest()鏂规硶涔嬩竴瀹屾垚鍝堝笇璁$畻銆�
+ *
+ * 瀵逛簬缁欏畾鏁伴噺鐨勬洿鏂版暟鎹紝digest 鏂规硶鍙兘琚皟鐢ㄤ竴娆°��
+ * 鍦ㄨ皟鐢� digest 涔嬪悗锛孧essageDigest 瀵硅薄琚噸鏂拌缃垚鍏跺垵濮嬬姸鎬併��
+ */
+ MessageDigest md = MessageDigest.getInstance("MD5");
+
+ // 娣诲姞瑕佽繘琛岃绠楁憳瑕佺殑淇℃伅,浣跨敤 plainText 鐨� byte 鏁扮粍鏇存柊鎽樿銆�
+ md.update(plainText.getBytes("UTF-8"));
+ // 璁$畻鍑烘憳瑕�,瀹屾垚鍝堝笇璁$畻銆�
+ byte b[] = md.digest();
+ int i;
+ for (int offset = 0; offset < b.length; offset++) {
+ i = b[offset];
+ if (i < 0) {
+ i += 256;
+ }
+ if (i < 16) {
+ buf.append("0");
+ }
+ // 灏嗘暣鍨� 鍗佽繘鍒� i 杞崲涓�16浣嶏紝鐢ㄥ崄鍏繘鍒跺弬鏁拌〃绀虹殑鏃犵鍙锋暣鏁板�肩殑瀛楃涓茶〃绀哄舰寮忋��
+ buf.append(Integer.toHexString(i));
+ }
+ // 32浣嶇殑鍔犲瘑
+ md5Str = buf.toString().toUpperCase();
+ // 16浣嶇殑鍔犲瘑
+ // md5Str = buf.toString().md5Strstring(8,24);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return md5Str;
+}
+
+ public static boolean checkMD5(String verifyString, String md5) {
+ return md5.equals(md5(verifyString));
+ }
+
+ public static void main(String[] args) {
+ System.out.println(md5("appId=wx593e357018dd07f1&nonceStr=3EdGqO3vHlTzMKeyCvV2mdBSeWXNSSwq&package=wx20150715200343f61cb138620134794141&signType=MD5&timeStamp=20150715200347&key=waibjtam19801116passwordyurimeng"));
+ }
+}
\ No newline at end of file
--
Gitblit v1.8.0