From a9eb746e1ad16dc040916316a87e4ebb44261c37 Mon Sep 17 00:00:00 2001
From: ccy <3140717620@qq.com>
Date: 星期五, 23 十月 2026 14:56:43 +0800
Subject: [PATCH] 修正一下加密解密与主程序统一的问题

---
 shortcrypto.h |   21 +++++++++++++++------
 1 files changed, 15 insertions(+), 6 deletions(-)

diff --git a/shortcrypto.h b/shortcrypto.h
index f34dcdd..d8306b4 100644
--- a/shortcrypto.h
+++ b/shortcrypto.h
@@ -6,23 +6,25 @@
 
 /**
  * @brief 鏈�鐭瘑鏂囧姞瀵嗗伐鍏风被
- * 娴佺▼锛氭槑鏂� 鈫� PKCS7濉厖 鈫� AES-128-CBC鍔犲瘑 鈫� Base85缂栫爜
+ * 娴佺▼锛氭槑鏂� 鈫� PKCS7濉厖 鈫� AES-128-CBC鍔犲瘑 鈫� 绾瓧姣嶇紪鐮侊紙52瀛楃闆嗭級
+ * V3璁稿彲瀵嗛挜鍙︾敤鏃犲~鍏呭彉浣擄紙encryptRaw锛夛紝杈撳嚭绾ぇ鍐�26瀛楃闆�
  */
 class ShortCrypto
 {
 public:
     /**
-     * @brief 鍔犲瘑
-     * @param plaintext 鍘熷鏄庢枃
+     * @brief 鍔犲瘑锛圴2璁惧ID绛夛紝鍚玃KCS7濉厖锛�
+     * @param plaintext 鍘熷鏄庢枃锛堜换鎰忛暱搴︼級
      * @param key 16瀛楄妭瀵嗛挜锛圓ES-128锛�
      * @param iv 16瀛楄妭鍒濆鍚戦噺锛屽彲涓虹┖锛堝唴閮ㄨ嚜鍔ㄨˉ闆讹級
-     * @return Base85缂栫爜鐨勫瘑鏂囧瓧绗︿覆
+     * @return 绾瓧姣嶇紪鐮佺殑瀵嗘枃瀛楃涓诧紙A-Z/a-z锛�52瀛楃闆嗭紝瀵嗘枃姣�48瀛楄妭鈫�68瀛楃锛�
+     * @note 瑙e瘑绔嚜鍔ㄥ洖閫�鍏煎鏃╂湡Base85鐗堝瘑鏂�
      */
     static QString encrypt(const QByteArray &plaintext, const QByteArray &key, const QByteArray &iv = QByteArray());
 
     /**
-     * @brief 瑙e瘑
-     * @param ciphertext Base85缂栫爜鐨勫瘑鏂�
+     * @brief 瑙e瘑锛圴2璁惧ID绛夛紝鍚玃KCS7楠岃瘉锛�
+     * @param ciphertext 绾瓧姣嶇紪鐮佺殑瀵嗘枃锛堝吋瀹规棭鏈烞ase85鐗堝瘑鏂囷紝鑷姩鍥為��锛�
      * @param key 16瀛楄妭瀵嗛挜锛圓ES-128锛�
      * @param iv 16瀛楄妭鍒濆鍚戦噺锛屽繀椤讳笌鍔犲瘑鏃朵竴鑷�
      * @return 鍘熷鏄庢枃
@@ -54,12 +56,19 @@
     // V3 瀵嗘枃瀛楃闆嗭細绾ぇ鍐欏瓧姣嶏紝涓嶅惈鏁板瓧/灏忓啓/鐗规畩瀛楃锛�26瀛楃闆嗭紝16瀛楄妭鈫�28瀛楃锛�
     static const char *V3_CHARS;
 
+    // V2 瀵嗘枃瀛楃闆嗭細澶у皬鍐欏瓧姣嶏紝涓嶅惈鏁板瓧/鐗规畩瀛楃锛�52瀛楃闆嗭紝48瀛楄妭鈫�68瀛楃锛�
+    static const char *BASE52_CHARS;
+
     static QByteArray base85Encode(const QByteArray &data);
     static QByteArray base85Decode(const QString &text);
 
     // 浠绘剰杩涘埗鐨勫ぇ鏁扮紪瑙g爜锛堟暣娈靛瓧鑺傚簭浣滀负澶ф暣鏁帮紝鍓嶅闆朵互alphabet[0]琛ラ綈鍥哄畾浣嶆暟锛�
     static QByteArray baseNEncode(const QByteArray &data, const char *alphabet, int base);
     static QByteArray baseNDecode(const QString &text, const char *alphabet, int base);
+
+    // 鍙橀暱鐗堣В鐮侊細杩斿洖鍘绘帀鍓嶅闆剁殑鏈�鐭瓧鑺傚簭锛堜緵闀垮害涓嶅浐瀹氱殑V2瀵嗘枃浣跨敤锛�
+    // 璋冪敤鏂归渶鑷琛ラ綈瀵归綈锛�52瀛楃闆嗕笅鐪熷�艰嚦澶氫涪澶�1涓墠瀵奸浂瀛楄妭锛�
+    static QByteArray baseNDecodeVar(const QString &text, const char *alphabet, int base);
 };
 
 #endif // SHORTCRYPTO_H

--
Gitblit v1.9.1