打印
[LabVIEW应用]

LabVIEW试用控制-绑定电脑网卡MAC地址

[复制链接]
2342|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
LIKOU|  楼主 | 2021-12-10 22:01 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
LabVIEW试用控制-绑定电脑网卡MAC地址
今天介绍实现LabVIEW程序试用控制的另外一种方法——绑定电脑网卡MAC地址。
1 使用场景
用户在电脑上首次使用LabVIEW试用程序时,需填写序列号,见图1。此时,用户需向程序开发商提供试用程序安装电脑的网卡MAC地址,程序开发商根据编码或密码算法对该MAC地址进行计算,把结果(序列号)发送至用户。由于该试用方法绑定了用户电脑网卡的MAC地址,一台电脑对应一个序列码,可有效避免用户多台电脑公用试用程序的问题,达到类似正版授权的效果。

1 试用程序填写序列号截图
2 实现功能
本文中的试用程序仍然是一个简单的按钮控制圆灯亮灭的程序,安装试用程序并填写了正确的序列号的用户电脑可正常使用,即按下确定按钮后圆灯变亮,弹起确定按钮后圆灯变灭,见图2。

2 试用程序正常使用截图
当用户想在其他电脑上安装试用程序,打开试用程序填写之前的序列号,程序界面会弹出“序列号错误,请重新输入!”的提示框,同时确定按钮为禁用状态,程序无法正常运行,见图3。

3 试用程序停止试用截图
3 程序详解
1)获取电脑网卡的MAC地址
执行系统命令ipconfig -all,经过两次匹配,截取出电脑网卡的MAC地址,格式为AA-BB-CC-DD-EE-FF。
2)69对称点加密
然后把这17个字符的MAC地址进行69对称点加密(也可是用其他编码或密码算法),得到计算的序列码II]HH]GG]FF]EE]DD。
这里提到的69对称点加密,准确来说是一种编码方法。输入的每一个ASCII字符都被转换成另外一个ASCII字符,这两个ASCII字符对应的十进制数值之和为138,即以十进制数值69为对称点,比如ASCII字符的A(对应的十进制数值为65),转换为ASCII字符的I(对应的十进制数值为73),见图4。

4  69对称点加密示例
3)提示用户输入序列码并对比
用户输入的序列码与计算的序列码做对比,结果不一致时弹出“序列号错误,请重新输入!”的提示框,同时确定按钮为禁用状态,试用程序无法正常运行,见图5。

5 输入序列号错误
对比结果一致时,弹出“序列号输入正确!”的提示框,并在D盘新建一个“mymac序列码.txt”的文件(其他格式也可以),然后执行系统命令attrib +R +S +H,设置mymac序列码.txt文件属性为只读、系统文件、隐藏,达到隐身的目的,同时确定按钮为使能状态,试用程序可正常运行,见图6。
注:+设置属性;-清除属性;R只读文件属性;S系统文件属性;H隐藏文件属性

6 输入序列号正确
4)后期正常使用
后期用户每次打开试用程序使用时,确定按钮为使能状态,试用程序可正常运行,其程序框图见图7。

7 后期正常使用
至此,已经通过绑定网卡的MAC地址实现基本的试用控制。

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

33

帖子

1

粉丝