一、前言说明
搞软件开发一直追求精益求精的目标,从第一版的秘钥生成器到今天这个版本,经历了十年的时间,最初的版本做的非常简陋,就是搞了个异或加密,控制运行时间,后面又增加设备数量的控制,然后就是到期时间的限制。这种有个巨大缺陷就是可复制性,如果将授权的秘钥文件,拷贝到其他电脑也是能正常运行的,老板急的哇哇叫,这怎么行呢,于是V2.0又增加了机器码的功能,最开始做的windows版本,后面遇到用户又需要linux和mac系统运行,不断增加了对应的唯一机器码的识别。这样就拷贝无法运行,必须一台机器对应一个秘钥,可是后面又发现写死也不行,所有又加了开关,可以开启是否启用机器码限制。
陆陆续续完善和验证了很多年,总体效果挺好,近期又有新的需求,那就是希望能够控制到期时间后限制部分功能,而不是不能运行,比如到期后视频右下角加上水印,用户还可以将过期的秘钥文件发过来,更新秘钥延长试用期限,这样就非常完美了。而且整个秘钥认证都是独立的静态函数,集成机器方便,就几行代码就行。
二、应用场景
- 授权软件在唯一的机器设备上运行,拷贝无法运行。
- 授权软件试用时间,比如试用到2025-01-01就结束,到期无法运行。
- 授权软件运行时间,比如每次只能运行30分钟,到了时间无法运行,需要再次启动程序继续运行。
- 控制软件里面添加的设备数量,比如控制摄像头设备最大10个,超过10个则需要购买授权。
- 控制软件到期功能限制,比如尾款到账日期2025-01-01,则设置功能限制日期2025-01-01,到了对应日期,软件能够运行,但是功能受限,比如视频画面出现水印等。
- 日期防篡改,比如用户发现试用时间或者到期功能限制时间到了,手动修改电脑时间到之前的时间,能够立即识别并弹出提示时间不正确,需要重新授权,并且可以控制再也无法运行,需要重新授权。
- 各种功能可以分别开启、不开启、全部开启等,开启了的功能自动应用。
- 可以批量分发秘钥文件,只控制试用时间,也可以限定唯一机器码,指定唯一一台设备运行。
- 远程批量搜索和更新秘钥,同一个局域网,多台设备的秘钥到期,一键搜索后,统一一键更新授权时间。比如尾款到账后,需要重新授权,让软件完全正常运行。批量搜索和更新的话,就不用手动去一个个拷贝秘钥文件。
- 不仅要支持windows,还要能支持linux,苹果macos,国产操作系统等。
三、功能特点
- 多种开关开启不同的秘钥功能限制。
- 可以开启机器码限制,一机一码,一台设备对应唯一的一个机器码,自动获取机器码和秘钥文件的机器码核对。
- 可以开启到期功能限制,超过了指定的日期后,对运行功能增加限制,比如视频上增加水印。程序还可以继续运行,只是功能有限制。
- 可以开启到期时间限制,到了指定的日期后,弹出到期提醒,自动关闭程序,程序无法继续运行。
- 可以开启运行时间限制,比如指定程序只能运行30分钟,每次打开程序后,运行30分钟,自动关闭程序,再次打开程序,还可以继续运行30分钟。
- 可以开启最大数量限制,比如设置最大数量5,则该软件中可以检测添加的设备数量是否超过5个,超过则不允许继续添加。
- 功能限制可以选择一种或者多种,满足各种需求场景。
- 内置防日期时间篡改功能,自动记忆秘钥写入时间和秘钥正常运行时间,一旦检测到电脑时间被篡改,程序无法打开,自动关闭程序。运行期间也会自动检测。
- 支持自动检测读取秘钥文件,如果存在到期日期或者到期时间限制,自动显示剩余天数。
- 多重加密算法,无法解密和破解。控制端可设定私有的加解密秘钥。
- 离线使用,无需联网,方便在各种离线设备使用。
- 同时支持windows、linux、mac系统,支持所有Qt版本。
四、效果图
五、相关地址
- 文件地址:https://pan.baidu.com/s/1ZxG-oyUKe286LPMPxOrO2A 提取码:o05q 文件名:bin_key.zip
- 国内站点:https://gitee.com/feiyangqingyun
- 国际站点:https://github.com/feiyangqingyun