辛辛苦苦开发出来的软件,都希望能够有所保护,除去用软件狗外,授权码是一个比较有效而又比较容易实现的保护机制。以下提供一个简易的实现方案。
第一步:我们要实现一个与程序系统所在机器绑定的唯一机制。在.net环境下,获取mac地址是一个比较靠谱的办法,相对而言获取cpu id或硬盘id都不能保证获得唯一的ID。(当然用户要篡改mac,就没辙了)。然后通过获得的mac地址,进行简单算法换算,获得一个LicenseClientKey。
第二步:我们设计一个算法,根据LicenseClientKey,计算得到一个LicenseKey并将它发布给最终用户。
第三步:最终用户获得LicenseKey后,将LicenseKey安装到系统中。
最后,就是系统程序检测LicenseKey是否正确。通过前面第一步、第二步的方法获得LicenseClientKey,并计算得出LicenseKey,然后比较是否与系统安装的LicenseKey匹配。
代码的实现很简单,这里就只给出获取mac地址及算法换算,并计算LicenseClientKey的代码片段。
需要引用以下几个namespace
Imports System.Net
Imports System.Net.NetworkInformation
Imports System.Security.Cryptography
获取LicenseClientKey
Dim
strClientKeyCode
As
String
=