From 7922ba553b9c09a57b8a4b1d2b75d07af3506b97 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?LAPTOP-S9HJSOEB=5C=E6=98=8A=E5=A4=A9?= Date: Thu, 26 Oct 2023 11:01:56 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=AF=86=E9=87=87=E7=94=A8=E6=9C=AC?= =?UTF-8?q?=E5=9C=B0=E8=A7=A3=E5=AF=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/encryptor/Encryptor.java | 33 ++++++++++--------- .../zhehekeji/filter/aspect/LPLicense.java | 3 +- 2 files changed, 20 insertions(+), 16 deletions(-) diff --git a/modules/common/src/main/java/encryptor/Encryptor.java b/modules/common/src/main/java/encryptor/Encryptor.java index fe3cf1c..100562f 100644 --- a/modules/common/src/main/java/encryptor/Encryptor.java +++ b/modules/common/src/main/java/encryptor/Encryptor.java @@ -2,27 +2,30 @@ package encryptor; import java.lang.reflect.Field; public class Encryptor { - public native static String encryptStr(String str); - static - { - try{ - String path = System.getProperty("user.dir")+"\\libs\\encrypt"; - - System.setProperty("java.library.path", path); - Field fieldSysPath = ClassLoader.class.getDeclaredField("sys_paths"); - fieldSysPath.setAccessible(true); - fieldSysPath.set(null, null); - System.loadLibrary("Encryptor"); - }catch(Exception e) - { - System.out.println(e); + public static String encryptStr(String str){ + long ulMacTmp = 0; + for (int i = 0; i < str.length(); i++) { + ulMacTmp = ulMacTmp << 4; + char cStr = str.charAt(i); + if (cStr >= '0' && cStr <= '9') { + ulMacTmp += (long)(str.charAt(i) - '0'); + } else if (cStr >= 'a' && cStr <= 'f') { + ulMacTmp += (long)(str.charAt(i) - 'a' + 10); + } else if (cStr >= 'A' && cStr <= 'F') { + ulMacTmp += (long)(str.charAt(i) - 'A' + 10); + } else { + ulMacTmp += 0; + } } + str = String.valueOf(ulMacTmp); + return str; } + public static void main(String[] args) { - String noEncrypt = "BFEBFBFF000A06530026_B768_466D_0235."; + String noEncrypt = "BFEBFBFF000A06550026_B728_2C38_69F5."; String encrypt = Encryptor.encryptStr(noEncrypt); System.out.println(encrypt); } diff --git a/modules/filter/src/main/java/com/zhehekeji/filter/aspect/LPLicense.java b/modules/filter/src/main/java/com/zhehekeji/filter/aspect/LPLicense.java index fbc60c3..684a1f1 100644 --- a/modules/filter/src/main/java/com/zhehekeji/filter/aspect/LPLicense.java +++ b/modules/filter/src/main/java/com/zhehekeji/filter/aspect/LPLicense.java @@ -1,6 +1,7 @@ package com.zhehekeji.filter.aspect; import com.zhehekeji.common.util.FileUtil; +import encryptor.Encryptor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -80,7 +81,7 @@ public class LPLicense { } public static boolean checkLic(String licStr){ - return CPU_INFO != null && DISK_INFO != null && licStr.equals(encryptor.Encryptor.encryptStr(CPU_INFO+DISK_INFO)); + return CPU_INFO != null && DISK_INFO != null && licStr.equals(Encryptor.encryptStr(CPU_INFO+DISK_INFO)); } public static boolean checkLic(){