diff --git a/src/main/java/cc/baka9/catseedlogin/util/CommunicationAuth.java b/src/main/java/cc/baka9/catseedlogin/util/CommunicationAuth.java index b65338a..9ce37cc 100644 --- a/src/main/java/cc/baka9/catseedlogin/util/CommunicationAuth.java +++ b/src/main/java/cc/baka9/catseedlogin/util/CommunicationAuth.java @@ -5,22 +5,27 @@ public class CommunicationAuth { - public static String encryption(String... args) { - String paramString = String.join("", args); + private static MessageDigest messageDigest; + + static { try { - MessageDigest messageDigest = MessageDigest.getInstance("MD5"); - messageDigest.update(paramString.getBytes()); - byte[] arrayOfByte = messageDigest.digest(); - StringBuilder stringBuilder = new StringBuilder(); - for (byte value : arrayOfByte) { - int unsignedByte = value & 0xff; - if (unsignedByte < 16) stringBuilder.append("0"); - stringBuilder.append(Integer.toHexString(unsignedByte)); - } - return stringBuilder.toString().toLowerCase(); + messageDigest = MessageDigest.getInstance("SHA-256"); } catch (NoSuchAlgorithmException e) { - return null; + // 适当地处理异常 + e.printStackTrace(); + } + } + + public static String encryption(String... args) { + String paramString = String.join("", args); + byte[] arrayOfByte = messageDigest.digest(paramString.getBytes()); + StringBuilder stringBuilder = new StringBuilder(); + for (byte value : arrayOfByte) { + int unsignedByte = value & 0xff; + if (unsignedByte < 16) stringBuilder.append("0"); + stringBuilder.append(Integer.toHexString(unsignedByte)); } + return stringBuilder.toString().toLowerCase(); } -} +} \ No newline at end of file