V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
llsquaer
V2EX  ›  Python

使用 mac 地址作为机器验证老是出现失效的情况

  •  
  •   llsquaer · 233 天前 · 1414 次点击
    这是一个创建于 233 天前的主题,其中的信息可能已经有所发展或是发生改变。
    接单给公司写了一个小工具软件,避免太通用导致乱用,加了个机器验证。平时也没研究这个多深。只知道 mac 地址是不会变的,除非手动去改。所以就采用 mac 地址作为验证。

    思路比较简单,通过 uuid1 获取最后 12 位就是 mac 地址 md5 后生成机器码。然后机器码 md5+salt 生成注册码。固定保存在客户电脑中。每次客户启动自动去算一次即可。

    但是问题就出在这里。


    上个月还好好的装了大概 20 台。 这几天陆陆续续给反馈说软件未激活。

    我查了自己的电脑,到现在也没变化,同样的计算方法没有问题的啊.

    所以难道是 现在 Windows10 系统 mac 地址是会不定时变动的么。或是是其他代理软件改了 mac 地址?还是什么原因导致的呢?

    或者有啥其他方法替代呢? 之前使用 wmi 获取 cpu 型号主板之类的结果对方电脑有报错,就没使用这个库
    12 条回复    2024-05-08 17:45:20 +08:00
    Hawthorne
        1
    Hawthorne  
       233 天前
    Windows 10 不清楚,但是现在很多系统都可以启用随机 mac 地址。
    icyalala
        2
    icyalala  
       233 天前
    Win10 开始就有随机硬件地址的开关了
    ladypxy
        3
    ladypxy  
       233 天前
    1. 你有没有考虑到机器有多个 mac 地址的情况?比如有 2 个有线网卡,然后有有线网卡还有无线网卡
    2. Windows 支持随机 mac
    mohumohu
        4
    mohumohu  
       233 天前
    直接用激活 id ,微软给你算好了。反正你这验证也不严格。
    cscript //Nologo slmgr.vbs /dlv
    YellowDog7
        5
    YellowDog7  
       233 天前
    现在很多都是随机 mac 地址了
    proxychains
        6
    proxychains  
       233 天前
    windows 可以使用 uuid

    wmic csproduct get uuid
    tzxxxx
        7
    tzxxxx  
       233 天前
    @proxychains uuid 有个问题是虚拟机复制可能会保持不变,虚拟机复制时有个选项。
    https://stackoverflow.com/questions/671876/whats-a-good-way-to-uniquely-identify-a-computer/32636967#32636967
    AlexShui
        8
    AlexShui  
       233 天前
    我使用的是 wmic csproduct get UUID 和 wmic diskdrive get SerialNumber
    ZnductR0MjHvjRQ3
        9
    ZnductR0MjHvjRQ3  
       233 天前
    除了 mac 地址 还有什么办法可以确定机器唯一性呢 emm
    Yuqiu2233
        10
    Yuqiu2233  
       233 天前
    我之前好像是通过获取硬件信息计算 hash ,给出唯一的计算机指纹,不知道是否可行
    NoOneNoBody
        11
    NoOneNoBody  
       233 天前
    我以前有部寨机,mac 随机,搞得路由要专开一个临时 wifi 给它用(路由用了 mac 白名单过滤),后来弃了
    proxychains
        12
    proxychains  
       233 天前
    @tzxxxx #7 这倒没注意, kvm 架构, 通过同一个镜像创建的不同虚拟机的 uuid 是不同的, 并且, 重装系统后, uuid 不会发生变化.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2629 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 04:13 · PVG 12:13 · LAX 20:13 · JFK 23:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.