0
This commit is contained in:
Binary file not shown.
+2742
-2742
File diff suppressed because it is too large
Load Diff
+2673
-2673
File diff suppressed because it is too large
Load Diff
Binary file not shown.
+2672
-2672
File diff suppressed because it is too large
Load Diff
Binary file not shown.
+70
-70
@@ -707,10 +707,50 @@
|
||||
('pkg_resources',
|
||||
'c:\\program files\\python\\lib\\site-packages\\pkg_resources\\__init__.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.packaging.requirements',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\requirements.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.pyparsing',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\pyparsing.py',
|
||||
'PYMODULE'),
|
||||
('uuid', 'c:\\program files\\python\\lib\\uuid.py', 'PYMODULE'),
|
||||
('netbios',
|
||||
'c:\\program files\\python\\lib\\site-packages\\win32\\lib\\netbios.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.packaging',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\__init__.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.packaging.tags',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\tags.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.six',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\six.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.packaging.__about__',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\__about__.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.packaging.specifiers',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\specifiers.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.packaging.markers',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\markers.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.packaging._structures',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\_structures.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\__init__.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.appdirs',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\appdirs.py',
|
||||
@@ -723,53 +763,13 @@
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\win32comext\\shell\\__init__.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.packaging.requirements',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\requirements.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.pyparsing',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\pyparsing.py',
|
||||
'PYMODULE'),
|
||||
('uuid', 'c:\\program files\\python\\lib\\uuid.py', 'PYMODULE'),
|
||||
('netbios',
|
||||
'c:\\program files\\python\\lib\\site-packages\\win32\\lib\\netbios.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.packaging._structures',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\_structures.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.six',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\six.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.packaging.version',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\version.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.packaging.tags',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\tags.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.packaging.specifiers',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\specifiers.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\__init__.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.packaging',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\__init__.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.packaging.utils',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\utils.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.packaging.markers',
|
||||
('pkg_resources._vendor.packaging.version',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\markers.py',
|
||||
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\version.py',
|
||||
'PYMODULE'),
|
||||
('pkg_resources._vendor.packaging._compat',
|
||||
'c:\\program '
|
||||
@@ -786,8 +786,8 @@
|
||||
('pkg_resources.py2_warn',
|
||||
'c:\\program files\\python\\lib\\site-packages\\pkg_resources\\py2_warn.py',
|
||||
'PYMODULE'),
|
||||
('stringprep', 'c:\\program files\\python\\lib\\stringprep.py', 'PYMODULE'),
|
||||
('_py_abc', 'c:\\program files\\python\\lib\\_py_abc.py', 'PYMODULE'),
|
||||
('stringprep', 'c:\\program files\\python\\lib\\stringprep.py', 'PYMODULE'),
|
||||
('Crypto.Cipher.Blowfish',
|
||||
'c:\\program files\\python\\lib\\site-packages\\Crypto\\Cipher\\Blowfish.py',
|
||||
'PYMODULE'),
|
||||
@@ -891,17 +891,13 @@
|
||||
('setuptools',
|
||||
'c:\\program files\\python\\lib\\site-packages\\setuptools\\__init__.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor.packaging.tags',
|
||||
('setuptools._vendor.packaging.version',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\tags.py',
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\version.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor.packaging._compat',
|
||||
('setuptools._vendor.packaging._structures',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\_compat.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor.packaging.specifiers',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\specifiers.py',
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\_structures.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor.packaging.requirements',
|
||||
'c:\\program '
|
||||
@@ -915,44 +911,48 @@
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\setuptools\\extern\\__init__.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor.packaging.tags',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\tags.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor.pyparsing',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\pyparsing.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor',
|
||||
('setuptools._vendor.packaging.specifiers',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\__init__.py',
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\specifiers.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor.packaging.version',
|
||||
('setuptools._vendor.packaging',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\version.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor.packaging.utils',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\utils.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor.packaging._structures',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\_structures.py',
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\__init__.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor.packaging.__about__',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\__about__.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor.six',
|
||||
'c:\\program files\\python\\lib\\site-packages\\setuptools\\_vendor\\six.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor.packaging.markers',
|
||||
('setuptools._vendor.packaging.utils',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\markers.py',
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\utils.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor.ordered_set',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\ordered_set.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor.packaging',
|
||||
('setuptools._vendor.packaging._compat',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\__init__.py',
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\_compat.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor.packaging.markers',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\markers.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor.six',
|
||||
'c:\\program files\\python\\lib\\site-packages\\setuptools\\_vendor\\six.py',
|
||||
'PYMODULE'),
|
||||
('setuptools._vendor',
|
||||
'c:\\program '
|
||||
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\__init__.py',
|
||||
'PYMODULE'),
|
||||
('setuptools.msvc',
|
||||
'c:\\program files\\python\\lib\\site-packages\\setuptools\\msvc.py',
|
||||
|
||||
Binary file not shown.
@@ -15,7 +15,7 @@ IMPORTANT: Do NOT post this list to the issue-tracker. Use it as a basis for
|
||||
yourself tracking down the missing module. Thanks!
|
||||
|
||||
missing module named _posixsubprocess - imported by subprocess (optional), multiprocessing.util (delayed)
|
||||
missing module named org - imported by copy (optional)
|
||||
missing module named 'org.python' - imported by copy (optional), xml.sax (delayed, conditional), setuptools.sandbox (conditional)
|
||||
missing module named _frozen_importlib_external - imported by importlib._bootstrap (delayed), importlib (optional), importlib.abc (optional), zipimport (top-level)
|
||||
excluded module named _frozen_importlib - imported by importlib (optional), importlib.abc (optional), zipimport (top-level), PyInstaller.loader.pyimod02_archive (delayed, conditional)
|
||||
missing module named urllib.pathname2url - imported by urllib (conditional), PyInstaller.lib.modulegraph._compat (conditional)
|
||||
@@ -35,21 +35,21 @@ missing module named multiprocessing.BufferTooShort - imported by multiprocessin
|
||||
missing module named multiprocessing.AuthenticationError - imported by multiprocessing (top-level), multiprocessing.connection (top-level)
|
||||
missing module named asyncio.DefaultEventLoopPolicy - imported by asyncio (delayed, conditional), asyncio.events (delayed, conditional)
|
||||
missing module named readline - imported by cmd (delayed, conditional, optional), code (delayed, conditional, optional), pdb (delayed, optional)
|
||||
missing module named 'org.python' - imported by pickle (optional), xml.sax (delayed, conditional), setuptools.sandbox (conditional)
|
||||
missing module named org - imported by pickle (optional)
|
||||
missing module named grp - imported by shutil (optional), tarfile (optional), pathlib (delayed), distutils.archive_util (optional)
|
||||
missing module named pwd - imported by posixpath (delayed, conditional), shutil (optional), tarfile (optional), pathlib (delayed, conditional, optional), http.server (delayed, optional), webbrowser (delayed), netrc (delayed, conditional), getpass (delayed), distutils.util (delayed, conditional, optional), distutils.archive_util (optional), psutil (optional)
|
||||
missing module named posix - imported by os (conditional, optional), shutil (conditional)
|
||||
missing module named 'multiprocessing.forking' - imported by C:\Program Files\python\Lib\site-packages\PyInstaller\loader\rthooks\pyi_rth_multiprocessing.py (optional)
|
||||
missing module named 'win32com.gen_py' - imported by win32com (conditional, optional), C:\Program Files\python\Lib\site-packages\PyInstaller\loader\rthooks\pyi_rth_win32comgenpy.py (top-level)
|
||||
missing module named 'multiprocessing.forking' - imported by C:\Program Files\python\Lib\site-packages\PyInstaller\loader\rthooks\pyi_rth_multiprocessing.py (optional)
|
||||
missing module named pyimod03_importers - imported by PyInstaller.loader.pyimod02_archive (delayed, conditional), C:\Program Files\python\Lib\site-packages\PyInstaller\loader\rthooks\pyi_rth_pkgres.py (top-level)
|
||||
missing module named 'com.sun' - imported by pkg_resources._vendor.appdirs (delayed, conditional, optional)
|
||||
missing module named com - imported by pkg_resources._vendor.appdirs (delayed)
|
||||
missing module named 'pkg_resources.extern.pyparsing' - imported by pkg_resources._vendor.packaging.markers (top-level), pkg_resources._vendor.packaging.requirements (top-level)
|
||||
missing module named _uuid - imported by uuid (optional)
|
||||
missing module named __builtin__ - imported by pkg_resources._vendor.pyparsing (conditional), setuptools._vendor.pyparsing (conditional)
|
||||
missing module named ordereddict - imported by pkg_resources._vendor.pyparsing (optional), setuptools._vendor.pyparsing (optional)
|
||||
missing module named StringIO - imported by Crypto.Util.py3compat (conditional), PyInstaller.lib.modulegraph._compat (conditional), PyInstaller.lib.modulegraph.zipio (conditional), setuptools._vendor.six (conditional), pkg_resources._vendor.six (conditional)
|
||||
missing module named _manylinux - imported by pkg_resources._vendor.packaging.tags (delayed, optional), setuptools._vendor.packaging.tags (delayed, optional)
|
||||
missing module named StringIO - imported by Crypto.Util.py3compat (conditional), PyInstaller.lib.modulegraph._compat (conditional), PyInstaller.lib.modulegraph.zipio (conditional), setuptools._vendor.six (conditional), pkg_resources._vendor.six (conditional)
|
||||
missing module named 'com.sun' - imported by pkg_resources._vendor.appdirs (delayed, conditional, optional)
|
||||
missing module named com - imported by pkg_resources._vendor.appdirs (delayed)
|
||||
missing module named pkg_resources.extern.packaging - imported by pkg_resources.extern (top-level), pkg_resources (top-level)
|
||||
missing module named pkg_resources.extern.appdirs - imported by pkg_resources.extern (top-level), pkg_resources (top-level)
|
||||
missing module named 'pkg_resources.extern.six.moves' - imported by pkg_resources (top-level), pkg_resources._vendor.packaging.requirements (top-level)
|
||||
|
||||
@@ -367,7 +367,7 @@ imported by:
|
||||
<a target="code" href="" type="text/plain"><tt>'org.python'</tt></a>
|
||||
<span class="moduletype">MissingModule</span> <div class="import">
|
||||
imported by:
|
||||
<a href="#pickle">pickle</a>
|
||||
<a href="#copy">copy</a>
|
||||
• <a href="#setuptools.sandbox">setuptools.sandbox</a>
|
||||
• <a href="#xml.sax">xml.sax</a>
|
||||
|
||||
@@ -5035,8 +5035,8 @@ imported by:
|
||||
<a target="code" href="///C:/program%20files/python/lib/copy.py" type="text/plain"><tt>copy</tt></a>
|
||||
<span class="moduletype">SourceModule</span> <div class="import">
|
||||
imports:
|
||||
<a href="#copyreg">copyreg</a>
|
||||
• <a href="#org">org</a>
|
||||
<a href="#'org.python'">'org.python'</a>
|
||||
• <a href="#copyreg">copyreg</a>
|
||||
• <a href="#types">types</a>
|
||||
• <a href="#weakref">weakref</a>
|
||||
|
||||
@@ -19325,7 +19325,7 @@ imported by:
|
||||
<a target="code" href="" type="text/plain"><tt>org</tt></a>
|
||||
<span class="moduletype">MissingModule</span> <div class="import">
|
||||
imported by:
|
||||
<a href="#copy">copy</a>
|
||||
<a href="#pickle">pickle</a>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -19702,8 +19702,7 @@ imported by:
|
||||
<a target="code" href="///C:/program%20files/python/lib/pickle.py" type="text/plain"><tt>pickle</tt></a>
|
||||
<span class="moduletype">SourceModule</span> <div class="import">
|
||||
imports:
|
||||
<a href="#'org.python'">'org.python'</a>
|
||||
• <a href="#_compat_pickle">_compat_pickle</a>
|
||||
<a href="#_compat_pickle">_compat_pickle</a>
|
||||
• <a href="#_pickle">_pickle</a>
|
||||
• <a href="#argparse">argparse</a>
|
||||
• <a href="#codecs">codecs</a>
|
||||
@@ -19712,6 +19711,7 @@ imports:
|
||||
• <a href="#functools">functools</a>
|
||||
• <a href="#io">io</a>
|
||||
• <a href="#itertools">itertools</a>
|
||||
• <a href="#org">org</a>
|
||||
• <a href="#pprint">pprint</a>
|
||||
• <a href="#re">re</a>
|
||||
• <a href="#struct">struct</a>
|
||||
|
||||
Vendored
BIN
Binary file not shown.
@@ -13,13 +13,20 @@ class NavicatPassword:
|
||||
data = binascii.unhexlify(encrypted_str.lower())
|
||||
cipher = AES.new(self.aes_key, AES.MODE_CBC, self.aes_iv)
|
||||
decrypted = cipher.decrypt(data)
|
||||
# 处理可能的填充字符
|
||||
decrypted = decrypted.rstrip(b'\x00')
|
||||
# 尝试UTF-8解码,失败则使用latin1
|
||||
try:
|
||||
return decrypted.decode('utf-8')
|
||||
except UnicodeDecodeError:
|
||||
return decrypted.decode('latin1')
|
||||
# 处理填充字符和不可打印字符
|
||||
# 仅去除常见的填充字符
|
||||
decrypted = decrypted.rstrip(b'\x00\x03\x04\x05')
|
||||
|
||||
# 直接尝试解码,不进行任何字符过滤
|
||||
encodings = ['utf-8', 'latin1', 'cp1252', 'gbk', 'big5']
|
||||
for encoding in encodings:
|
||||
try:
|
||||
# 直接返回解码结果,保留所有字符
|
||||
return decrypted.decode(encoding)
|
||||
except UnicodeDecodeError:
|
||||
continue
|
||||
# 最后尝试,替换无法解码的字符
|
||||
return decrypted.decode('latin1', errors='replace')
|
||||
except Exception as e:
|
||||
raise ValueError(f"解密失败: {str(e)}")
|
||||
|
||||
@@ -27,6 +34,7 @@ class App:
|
||||
def __init__(self, root):
|
||||
self.root = root
|
||||
self.root.title("Navicat密码解密工具")
|
||||
self.result_window = None # 用于存储结果窗口
|
||||
|
||||
self.password = tk.StringVar()
|
||||
self.create_widgets()
|
||||
@@ -36,16 +44,21 @@ class App:
|
||||
tk.Entry(self.root, textvariable=self.password, width=30).grid(row=0, column=1)
|
||||
|
||||
tk.Button(self.root, text="解密", command=self.decrypt_password).grid(row=1, column=1, pady=10)
|
||||
|
||||
|
||||
def show_result(self, result):
|
||||
top = tk.Toplevel(self.root)
|
||||
top.title("解密结果")
|
||||
# 如果结果窗口已经存在,则先销毁
|
||||
if self.result_window is not None:
|
||||
self.result_window.destroy()
|
||||
|
||||
self.result_window = tk.Toplevel(self.root)
|
||||
self.result_window.title("解密结果")
|
||||
|
||||
tk.Label(top, text="解密后的密码:").pack(padx=20, pady=5)
|
||||
tk.Label(self.result_window, text="解密后的密码:").pack(padx=20, pady=5)
|
||||
|
||||
# 使用支持更多字符的字体
|
||||
font = ('Courier New', 12)
|
||||
result_text = tk.Text(top, height=1, width=30, font=font)
|
||||
# 使用更通用的字体,添加字体回退
|
||||
font_family = ('Consolas', 'Courier New', 'Monaco', 'DejaVu Sans Mono')
|
||||
font_size = 12
|
||||
result_text = tk.Text(self.result_window, height=1, width=30, font=(font_family[0], font_size))
|
||||
result_text.insert(tk.END, result)
|
||||
result_text.config(state=tk.DISABLED)
|
||||
result_text.pack(padx=20, pady=5)
|
||||
@@ -54,7 +67,7 @@ class App:
|
||||
self.root.clipboard_clear()
|
||||
self.root.clipboard_append(result)
|
||||
|
||||
tk.Button(top, text="复制密码", command=copy_to_clipboard).pack(pady=10)
|
||||
tk.Button(self.result_window, text="复制密码", command=copy_to_clipboard).pack(pady=10)
|
||||
|
||||
def decrypt_password(self):
|
||||
password = self.password.get().strip()
|
||||
|
||||
Reference in New Issue
Block a user