Add jvm search and download support (thanks KiteeLauncher)

This commit is contained in:
2026-05-19 23:51:55 +08:00
parent c50603a47f
commit 3d80fab562
8 changed files with 1211 additions and 9 deletions
+39
View File
@@ -0,0 +1,39 @@
"""
bk_core
Copyright (c) 2024~2025 Techarerm/TedKai
Copyright (c) 2026 Kitee Contributors. All rights reserved.
"""
import hashlib
def verify_checksum(file_path, expected_sha1):
sha1 = hashlib.sha1()
with open(file_path, "rb") as f:
while True:
data = f.read(65536) # Read in 64KB chunks
if not data:
break
sha1.update(data)
file_sha1 = sha1.hexdigest()
return file_sha1 == expected_sha1
def verify_checksum_v2(file_path, expected_hash, crypto_type):
hash_dict = {
'sha1': hashlib.sha1,
'sha256': hashlib.sha256,
'md5': hashlib.md5
}
if crypto_type not in hash_dict:
raise ValueError(f"Unsupported hash type: {crypto_type}")
hash_obj = hash_dict[crypto_type]()
with open(file_path, "rb") as f:
for chunk in iter(lambda: f.read(65536), b""):
hash_obj.update(chunk)
file_sha1 = hash_obj.hexdigest()
return file_sha1 == expected_hash