我是靠谱客的博主 瘦瘦寒风,最近开发中收集的这篇文章主要介绍Python 设置机器码验证一、获取电脑唯一标识信息二、设置机器码拼接组合三、利用机器码做登录验证,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

Python 设置机器码验证

  • 一、获取电脑唯一标识信息
  • 二、设置机器码拼接组合
  • 三、利用机器码做登录验证
      • 1. 将收集来的机器码保存在数据库中
      • 2. 根据当前电脑信息形成的机器码与数据库中进行对比


一、获取电脑唯一标识信息

# -*- coding: utf-8 -*-
import wmi


class Hardware:
    def __init__(self):
        self.Des_Key = "DESCRYPT"  # Key
        self.Des_IV = "x1513x2a31x232"  # 自定IV向量

    global s
    s = wmi.WMI()
    # 获取CPU信息
    def get_CPU_info(self):
        cpu = []
        cp = s.Win32_Processor()
        for u in cp:
            cpu.append(
                {
                    "Name": u.Name,
                    "Serial Number": u.ProcessorId,
                    "CoreNum": u.NumberOfCores
                }
            )
        #   print(":::CPU info:", json.dumps(cpu))
        return cpu

    @staticmethod
    def get_baseboard_sn():
        """
        获取主板序列号
        :return: 主板序列号
        """
        c = wmi.WMI()
        for board_id in c.Win32_BaseBoard():
            # print(board_id.SerialNumber)
            return board_id.SerialNumber

    @staticmethod
    def get_bios_sn():
        """
        获取BIOS序列号
        :return: BIOS序列号
        """
        c = wmi.WMI()
        for bios_id in c.Win32_BIOS():
            # print(bios_id.SerialNumber.strip)
            return bios_id.SerialNumber.strip()

    # 硬盘序列号
    def get_disk_info(self):
        disk = []
        for pd in s.Win32_DiskDrive():
            disk.append(
                {
                    "Serial": s.Win32_PhysicalMedia()[0].SerialNumber.lstrip().rstrip(),  # 获取硬盘序列号,调用另外一个win32 API
                    "ID": pd.deviceid,
                    "Caption": pd.Caption,
                    "size": str(int(float(pd.Size) / 1024 / 1024 / 1024)) + "G"
                }
            )
        #   print(":::Disk info:", json.dumps(disk))
        return disk

    # mac 地址(包括虚拟机的)
    def get_network_info(self):
        network = []
        for nw in s.Win32_NetworkAdapterConfiguration():  # IPEnabled=0
            if nw.MACAddress != None:
                network.append(
                    {
                        "MAC": nw.MACAddress,  # 无线局域网适配器 WLAN 物理地址
                        "ip": nw.IPAddress
                    }
                )
        #    print(":::Network info:", json.dumps(network))
        return network

二、设置机器码拼接组合

取以上获取的电脑信息中的一部分,自己设置具体取哪些,可以通过字符串截取。然后用加密方式加密后形成MachineCode。

三、利用机器码做登录验证

1. 将收集来的机器码保存在数据库中

2. 根据当前电脑信息形成的机器码与数据库中进行对比

== 则验证成功。!= 则提示验证失败。

最后

以上就是瘦瘦寒风为你收集整理的Python 设置机器码验证一、获取电脑唯一标识信息二、设置机器码拼接组合三、利用机器码做登录验证的全部内容,希望文章能够帮你解决Python 设置机器码验证一、获取电脑唯一标识信息二、设置机器码拼接组合三、利用机器码做登录验证所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(31)

评论列表共有 0 条评论

立即
投稿
返回
顶部