TG-PlatformPlus/scripts/check_奇校验.pys

33 lines
669 B
Plaintext
Raw Permalink Normal View History

2026-03-02 14:29:58 +08:00
def check_value(data: bytes) -> int:
# 初始化crc为0xFFFF
crc = 0xFFFF
length = len(data)
if length % 2 != 0:
return 0
for i in range(0, length, 2):
val = data[i] * 256 + data[i + 1]
crc = crc ^ val
# 返回最终的crc值
return crc
def check(data: bytes) -> int:
if len(data) < 2:
return False
# 初始化crc为0xFFFF
crc = 0xFFFF
length = len(data)
if length % 2 != 0:
return 0
for i in range(0, length, 2):
val = data[i] * 256 + data[i + 1]
crc = crc ^ val
# 返回最终的crc值
if crc == 0 :
return True
return False