From d42f32d6c6ff2cbaab2fbdabbeefb2367e72d446 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期一, 25 三月 2024 17:08:31 +0800
Subject: [PATCH] 新增加功能
---
cloud-server-competition/src/main/java/com/dsh/competition/util/MD5AndKL.java | 193 ++++++++++++++++++++++++------------------------
1 files changed, 96 insertions(+), 97 deletions(-)
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/util/MD5AndKL.java b/cloud-server-competition/src/main/java/com/dsh/competition/util/MD5AndKL.java
index 8d1f4ce..06e75cb 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/util/MD5AndKL.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/util/MD5AndKL.java
@@ -3,110 +3,109 @@
import java.security.MessageDigest;
public class MD5AndKL {
-
- /**
- * MD5加码。32位
- *
- * @param inStr
- * @return
- */
- public static String MD5(String inStr) {
- MessageDigest md5 = null;
- try {
- md5 = MessageDigest.getInstance("MD5");
- } catch (Exception e) {
- throw new RuntimeException(e.toString());
- }
- byte[] md5Bytes = md5.digest(inStr.getBytes());
- StringBuffer hexValue = new StringBuffer();
- for (int i = 0; i < md5Bytes.length; i++) {
- int val = ((int) md5Bytes[i]) & 0xff;
- if (val < 16) {
- hexValue.append("0");
- }
- hexValue.append(Integer.toHexString(val));
- }
- return hexValue.toString();
- }
- /**
- * 可逆的加密算法
- *
- * @param inStr
- * @return
- */
- public static String KL(String inStr) {
- char[] a = inStr.toCharArray();
- for (int i = 0; i < a.length; i++) {
- a[i] = (char) (a[i] ^ 't');
- }
- String s = new String(a);
- return s;
- }
+ /**
+ * MD5加码。32位
+ *
+ * @param inStr
+ * @return
+ */
+ public static String MD5(String inStr) {
+ MessageDigest md5 = null;
+ try {
+ md5 = MessageDigest.getInstance("MD5");
+ } catch (Exception e) {
+ throw new RuntimeException(e.toString());
+ }
+ byte[] md5Bytes = md5.digest(inStr.getBytes());
+ StringBuffer hexValue = new StringBuffer();
+ for (int i = 0; i < md5Bytes.length; i++) {
+ int val = ((int) md5Bytes[i]) & 0xff;
+ if (val < 16) {
+ hexValue.append("0");
+ }
+ hexValue.append(Integer.toHexString(val));
+ }
+ return hexValue.toString();
+ }
- /**
- * 加密后解密
- *
- * @param inStr
- * @return
- */
- public static String JM(String inStr) {
- char[] a = inStr.toCharArray();
- for (int i = 0; i < a.length; i++) {
- a[i] = (char) (a[i] ^ 't');
- }
- String k = new String(a);
- return k;
- }
+ /**
+ * 可逆的加密算法
+ *
+ * @param inStr
+ * @return
+ */
+ public static String KL(String inStr) {
+ char[] a = inStr.toCharArray();
+ for (int i = 0; i < a.length; i++) {
+ a[i] = (char) (a[i] ^ 't');
+ }
+ String s = new String(a);
+ return s;
+ }
+
+ /**
+ * 加密后解密
+ *
+ * @param inStr
+ * @return
+ */
+ public static String JM(String inStr) {
+ char[] a = inStr.toCharArray();
+ for (int i = 0; i < a.length; i++) {
+ a[i] = (char) (a[i] ^ 't');
+ }
+ String k = new String(a);
+ return k;
+ }
+ private static String byteArrayToHexString(byte b[]) {
+ StringBuffer resultSb = new StringBuffer();
+ for (int i = 0; i < b.length; i++)
+ resultSb.append(byteToHexString(b[i]));
- private static String byteArrayToHexString(byte b[]) {
- StringBuffer resultSb = new StringBuffer();
- for (int i = 0; i < b.length; i++)
- resultSb.append(byteToHexString(b[i]));
+ return resultSb.toString();
+ }
- return resultSb.toString();
- }
+ private static String byteToHexString(byte b) {
+ int n = b;
+ if (n < 0)
+ n += 256;
+ int d1 = n / 16;
+ int d2 = n % 16;
+ return hexDigits[d1] + hexDigits[d2];
+ }
- private static String byteToHexString(byte b) {
- int n = b;
- if (n < 0)
- n += 256;
- int d1 = n / 16;
- int d2 = n % 16;
- return hexDigits[d1] + hexDigits[d2];
- }
+ public static String MD5Encode(String origin, String charsetname) {
+ String resultString = null;
+ try {
+ resultString = new String(origin);
+ MessageDigest md = MessageDigest.getInstance("MD5");
+ if (charsetname == null || "".equals(charsetname)) {
+ resultString = byteArrayToHexString(md.digest(resultString.getBytes()));
+ } else {
+ resultString = byteArrayToHexString(md.digest(resultString.getBytes(charsetname)));
+ }
+ } catch (Exception exception) {
+ exception.printStackTrace();
+ }
+ return resultString;
+ }
- public static String MD5Encode(String origin, String charsetname) {
- String resultString = null;
- try {
- resultString = new String(origin);
- MessageDigest md = MessageDigest.getInstance("MD5");
- if (charsetname == null || "".equals(charsetname)){
- resultString = byteArrayToHexString(md.digest(resultString.getBytes()));
- }else{
- resultString = byteArrayToHexString(md.digest(resultString.getBytes(charsetname)));
- }
- } catch (Exception exception) {
- exception.printStackTrace();
- }
- return resultString;
- }
+ private static final String hexDigits[] = {"0", "1", "2", "3", "4", "5",
+ "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"};
- private static final String hexDigits[] = { "0", "1", "2", "3", "4", "5",
- "6", "7", "8", "9", "a", "b", "c", "d", "e", "f" };
-
- public static void main(String args[]) {
-
- System.out.println("MD5后再加密:" + KL(MD5("123456")));
- System.out.println(MD5("123456"));
- // System.out.println("加密:" + KL(MD5("123456")));
- // s = KL(s);
- // System.out.println("解密:" + KL("81dc9bdb52d04dc20036dbd8313ed055"));
- // System.out.println("解密:" + JM(KL(s)));
- // System.out.println("解密为MD5后的:" + KL(KL(MD5(s))));
- // System.out.println(JM("5d62957bb57d3e49dcf48a0df064be4c"));
- // System.out.println(MD5AndKL.KL(MD5AndKL.MD5("admin"+"87654321")));
- }
+// public static void main(String args[]) {
+//
+// System.out.println("MD5后再加密:" + KL(MD5("123456")));
+// System.out.println(MD5("123456"));
+// // System.out.println("加密:" + KL(MD5("123456")));
+// // s = KL(s);
+// // System.out.println("解密:" + KL("81dc9bdb52d04dc20036dbd8313ed055"));
+// // System.out.println("解密:" + JM(KL(s)));
+// // System.out.println("解密为MD5后的:" + KL(KL(MD5(s))));
+// // System.out.println(JM("5d62957bb57d3e49dcf48a0df064be4c"));
+// // System.out.println(MD5AndKL.KL(MD5AndKL.MD5("admin"+"87654321")));
+// }
}
--
Gitblit v1.7.1