大家好,欢迎来到IT知识分享网。
介绍:
本文介绍一个基于 Python 实现的硬件信息注册码生成器。该程序通过获取计算机的硬盘序列号、CPU序列号和主板序列号,生成一个唯一的注册码。这个注册码生成器可以用于软件授权或者其他需要硬件绑定的场景。程序使用 WMI 库来获取硬件信息,并使用随机数和字符串操作来生成最终的注册码。
环境配置:
- Python 3.x
- Windows 操作系统
- WMI 库(通常预装在 Windows 系统中)
项目分布:
- 获取硬盘序列号
- 获取CPU序列号
- 获取主板序列号
- 组合硬件信息
- 生成注册码
- 输出注册码
详细代码:
import wmi import random import os # 定义加密和解密字符串 sec = "t95p0q2f6dz1cxmowgjensr7yh384bvualki" dec = "dn7vhlk3wx1efsyc56zu2bomjtq8i0g4rp9a" # 创建 WMI 对象 c = wmi.WMI() # 获取硬盘序列号 for physical_disk in c.Win32_DiskDrive(): hard_seral = physical_disk.SerialNumber print("硬盘序列号为:", hard_seral) if len(hard_seral) > 6: hard_seral = hard_seral[-6:] else: print("硬盘信息获取错误!") os.exit(0) # 获取CPU序列号 for cpu in c.Win32_Processor(): cpu_seral = cpu.ProcessorId.strip() print("CPU序列号为:", cpu_seral) if len(cpu_seral) > 4: cpu_seral = cpu_seral[-4:] else: print("CPU信息获取错误!") os.exit(0) # 获取主板序列号 for board_id in c.Win32_BaseBoard(): board_id = board_id.SerialNumber print("主板序列号为:", board_id) if len(board_id) > 6: board_id = board_id[-5:] else: print("主板信息获取错误!") os.exit(0) # 组合硬件信息 seral = hard_seral + cpu_seral + board_id print("注册码使用的硬件信息为:", seral) # 生成注册码 cha_seral = "" for i in range(0, 14, 2): cha_seral += seral[14 - i] + seral[i + 1] cha_seral = cha_seral + seral[7] list_seral = list(cha_seral) list_seral.reverse() rand_seral = "" for i in range(10): j = random.randint(1, len(list_seral)) rand_seral += hex(j)[2:] + list_seral[j - 1] list_seral.remove(list_seral[j - 1]) rand_seral = ''.join(list_seral) + rand_seral # 解密注册码 low_seral = "" rand_seral = rand_seral.lower() for item in rand_seral: j = sec.index(item) low_seral += dec[j] low_seral = low_seral.upper() # 格式化注册码 last_seral = low_seral[0:5] + "-" + low_seral[5:10] + "-" + low_seral[10:15] + "-" + low_seral[15:20] + "-" + low_seral[20:25] print("生成的注册码为:\n", last_seral)
总结:
这个 Python 程序通过获取计算机硬件的序列号来生成一个唯一的注册码。它使用 WMI 库来查询硬件信息,并使用一系列字符串操作和随机数生成来创建注册码。这个程序可以作为软件授权或者硬件绑定的一个简单实现。通过修改加密和解密字符串,可以增加注册码的复杂性和安全性。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/126892.html