获取出cpuid和 maclist。然后进行2次md5运算。
完整代码如下
import hashlib
def calculate_device_id():
mac_all = "1C1B0D0E9398"
cpuidtxt = "3219913727"
# 将无符号整数转换为有符号整数
cpuid_unsigned = int(cpuidtxt)
if cpuid_unsigned > 0x7FFFFFFF: # 如果大于最大有符号整数
cpuid_signed = cpuid_unsigned - 0x100000000
else:
cpuid_signed = cpuid_unsigned
# 使用有符号整数参与运算
cpuidtxt = str(cpuid_signed)
# print(cpuidtxt)
# 第一次MD5
mac_bytes = bytes.fromhex(mac_all)
macmd5 = hashlib.md5(mac_bytes).hexdigest().lower().replace(" ", "")
# 组合字符串
dev_md5 = macmd5 + cpuidtxt
# 第二次MD5
dev_bytes = dev_md5.encode('utf-8')
dev_hex = dev_bytes.hex()
dev_md5 = hashlib.md5(bytes.fromhex(dev_hex)).hexdigest().lower().replace(" ", "")
# 添加前缀并截取
result = "W" + dev_md5
return result[:17]
# 使用示例
if __name__ == "__main__":
device_id = calculate_device_id()
print("生成的设备ID:", device_id)
PC微信 device uuid 算法
AiXed2025-11-11 17:18
相关推荐
全栈前端老曹5 小时前
【包管理】npm init 项目名后底层发生了什么的完整逻辑码农小韩5 小时前
基于Linux的C++学习——循环boooooooom5 小时前
Vue3 provide/inject 跨层级通信:最佳实践与避坑指南一颗烂土豆5 小时前
Vue 3 + Three.js 打造轻量级 3D 图表库 —— chart3青莲8435 小时前
Android 动画机制完整详解CoderCodingNo5 小时前
【GESP】C++五级/四级练习(双指针/数学) luogu-P1147 连续自然数和iReachers5 小时前
HTML打包APK(安卓APP)中下载功能常见问题和详细介绍颜酱5 小时前
前端算法必备:双指针从入门到很熟练(快慢指针+相向指针+滑动窗口)lichenyang4535 小时前
从零开始:使用 Docker 部署 React 前端项目完整实战明月_清风5 小时前
【开源项目推荐】Biome:让前端代码质量工具链快到飞起来