From f6b935781bcb43faea7aa894ce3a55873769efb3 Mon Sep 17 00:00:00 2001
From: whycxzp <perryhsu@163.com>
Date: 星期三, 22 十二月 2021 15:20:47 +0800
Subject: [PATCH] 1.内置密码解码,多重密码混淆 2.外部运行虚假密码(未生效密码混淆)

---
 beale-core/src/main/java/com/whyc/JarDecryptor.java |   40 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 40 insertions(+), 0 deletions(-)

diff --git a/beale-core/src/main/java/com/whyc/JarDecryptor.java b/beale-core/src/main/java/com/whyc/JarDecryptor.java
index 10d7276..caee272 100644
--- a/beale-core/src/main/java/com/whyc/JarDecryptor.java
+++ b/beale-core/src/main/java/com/whyc/JarDecryptor.java
@@ -21,6 +21,9 @@
     //鍔犲瘑鍚庢枃浠跺瓨鏀句綅缃�
     private static final String ENCRYPT_PATH = "META-INF/" + Const.FILE_NAME + "/";
 
+    //鍔犲瘑鍚庢枃浠跺瓨鏀句綅缃�
+    private static final String DESCRIPTION_PATH = "META-INF/";
+
     /**
      * 鍗曚緥
      *
@@ -106,6 +109,28 @@
     }
 
     /**
+     * 鍦╦ar鏂囦欢鎴栫洰褰曚腑璇诲彇瀵嗙爜瀛楄妭
+     *
+     * @param workDir jar鏂囦欢鎴栫洰褰�
+     * @param name    鏂囦欢鍚�
+     * @return 鏂囦欢瀛楄妭鏁扮粍
+     */
+    public static byte[] readEncryptedFile2(File workDir, String name) {
+        byte[] bytes = null;
+        String fileName = DESCRIPTION_PATH + name;
+        //jar鏂囦欢
+        if (workDir.isFile()) {
+            bytes = JarUtils.getFileFromJar(workDir, fileName);
+        } else {//war瑙e帇鐨勭洰褰�
+            File file = new File(workDir, fileName);
+            if (file.exists()) {
+                bytes = IoUtils.readFileToByte(file);
+            }
+        }
+        return bytes;
+    }
+
+    /**
      * 璇诲彇闅愯棌鍦╦ar鐨勫瘑鐮�
      *
      * @param workDir jar璺緞
@@ -121,6 +146,21 @@
     }
 
     /**
+     * 璇诲彇闅愯棌鍦╦ar鐨勫瘑鐮�
+     *
+     * @param workDir jar璺緞
+     * @return 瀵嗙爜char
+     */
+    public static char[] readPassFromJar2(File workDir) {
+        byte[] passbyte = readEncryptedFile2(workDir, Const.FILE_NAME2);
+        if (passbyte != null) {
+            char[] pass = StrUtils.toChars(passbyte);
+            return EncryptUtils.md5(pass);
+        }
+        return null;
+    }
+
+    /**
      * 瑙e瘑閰嶇疆鏂囦欢锛宻pring璇诲彇鏂囦欢鏃惰皟鐢�
      *
      * @param path 閰嶇疆鏂囦欢璺緞

--
Gitblit v1.9.1