一种防篡改时间的软件License验证方法[发明专利]

(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 (43)申请公布日 (21)申请号 201911089204.6
(22)申请日 2019.11.08
(71)申请人 西安雷风电子科技有限公司
地址 710065 陕西省西安市高新区丈八一
路6号SOHO2号楼12109室
(72)发明人 侯庆涛 
(74)专利代理机构 西安东灵通专利代理事务所
(普通合伙) 61242
代理人 李思琼
(51)Int.Cl.
G06F  11/36(2006.01)
(54)发明名称
一种防篡改时间软件License验证方法
(57)摘要
本发明提供了一种防篡改时间的软件
License验证方法,包括:S1、在生成软件license
时赋予license一个唯一标识,注册软件license
时,先校验license文件时间的合法性;S2、获取
系统的硬件唯一标识码,将硬件唯一标识码、软
件license的唯一标识、系统时间一起加密保存
在license校验文件中;S3、将硬件唯一标识码作
扇区逻辑编号,到对应的扇区,把license校
验文件的内容写入该扇区,得到license校验扇
区;S4、采用周期性校验或软件启动时校验的方
式校验license的合法性,同时检查license校验
文件与license校验扇区中的时间的合法性。本
发明可以防止用户通过修改系统时间来复用
license,又可以防止用户通过重装操作系统来
复用license。权利要求书2页  说明书5页  附图1页CN 110825639 A 2020.02.21
C N  110825639
A
1.一种防篡改时间的软件License验证方法,其特征在于:包括以下步骤:
S1、在生成软件license时赋予license一个唯一标识,注册软件license时,首先校验license文件时间的合法性;
S2、获取系统的硬件唯一标识码,将硬件唯一标识码、软件license的唯一标识、系统时间一起加密保存在license校验文件中;
S3、将硬件唯一标识码作为扇区逻辑编号,到对应的扇区,备份该扇区的内容,然后把license校验文件的内容写入该扇区,得到license校验扇区;
读取license校验扇区的内容并解析,比较license校验文件和license校验扇区中的软件license的唯一标识是否一致;
若不一致,则认为本次导入的是一个全新的license;
若一致,则比较license校验扇区中记录的时间与当前正在运行的操作系统中的时间;
若license校验扇区中记录的时间等于或晚于当前正在运行的操作系统中的时间,则判定为用户篡改过系统时间,license注册失败,验证结束;
若否,则认为license合法重复导入;
若判定本次导入的是一个全新的license或者license合法重复导入,且当前系统时间在license的有效时间范围内,则继续进行S4;
S4、采用周期性校验或软件启动时校验的方式校验license的合法性,同时检查license校验文件与license校验扇区中的时间的合法性,若存在不合法,则判定软件license失效,注册失败,若全部合法,则判定用户正常使用软件。
2.根据权利要求1所述的防篡改时间的软件License验证方法,其特征在于:S1中,注册软件license时获取当前系统时间,并检查该当前系统时间是否在license要求的有效时间段内,若不在,则注册失败。
3.根据权利要求1所述的防篡改时间的软件License验证方法,其特征在于:S2中,获取系统的硬件唯一特征信息,再将该硬件唯一特征信息换算为一个正整数,将该正整数作为硬件唯一标识码。
4.根据权利要求1所述的防篡改时间的软件License验证方法,其特征在于:S2中,所述license校验文件的大小不能超过512字节。
5.根据权利要求1所述的防篡改时间的软件License验证方法,其特征在于:S3中,具体地,将硬件唯一标识码作为扇区逻辑编号,换算成扇区在磁盘上的物理位置,该物理位置对应磁盘上唯一一个扇区,再将license校验文件的内容写入该扇区,得到license校验扇区。
6.根据权利要求1或5所述的防篡改时间的软件License验证方法,其特征在于:S3中还包括,在得到license校验扇区后,读取license校验扇区的内容,并进行解密,若解密失败,则认为本次导入的为一个全新的license,若解密成功,则对内容进行解析。
7.根据权利要求6所述的防篡改时间的软件License验证方法,其特征在于:S3中还包括,若判定本次导入为全新的license或者license合法重复导入,且当前系统时间在license的有效时间范围内,则将软件license信息保存在文件中,得到license文件。
8.根据权利要求7所述的防篡改时间的软件License验证方法,其特征在于:S4中,具体包括,读取lice
nse校验文件的内容和license校验扇区的内容,比较license文件、license 校验文件、license校验扇区中的软件license的唯一标识是否一致,如果不一致则认为
license校验不合法,即软件license失效,注册失败;获取当前系统时间,如果当前系统时间比license校验文件或license校验扇区中记录的时间早,则认为用户修改了系统时间,判定软件license失效,注册失败;全部检查无异常则认为用户正常使用软件。
9.根据权利要求1或8所述的防篡改时间的软件License验证方法,其特征在于:还包括S5,若判定用户正常使用软件,则按照S2和S3中的操作,基于当前系统时间刷新license校验文件和license校验扇区的内容。
一种防篡改时间的软件License验证方法
技术领域
[0001]本发明涉及软件技术领域,尤其是涉及一种防篡改时间的软件License验证方法。
背景技术
[0002]传统的软件license验证方法单纯的使用计算机本地时间与license授权的生效时间范围做比较,
期望软件只能在特定的时间范围内正常使用。但是计算机的本地时间是可以被更改的,更改到合适的时间点之后软件被重新激活,license存在被复用的风险。[0003]另外,虽然也有一些软件会在注册表或文件系统中记录软件的使用时间,在一定程度上可以防止用户修改时间来重复使用license,但是当用户修改时间之后重装系统再重新注册时,license仍然可以被复用。
发明内容
[0004]为克服上述现有技术的不足,本发明的目的是提供一种防篡改时间的软件License验证方法,既可以防止用户通过修改系统时间来复用license,又可以防止用户通过重装操作系统来复用license。
[0005]为了达到上述目的,本发明提供如下技术方案:
[0006]一种防篡改时间的软件License验证方法,包括以下步骤:
[0007]S1、在生成软件license时赋予license一个唯一标识,注册软件license时,首先校验license文件时间的合法性;
[0008]S2、获取系统的硬件唯一标识码,将硬件唯一标识码、软件license的唯一标识、系统时间一起加密保存在license校验文件中;
[0009]S3、将硬件唯一标识码作为扇区逻辑编号,到对应的扇区,备份该扇区的内容,然后把license校验文件的内容写入该扇区,得到license校验扇区;
[0010]读取license校验扇区的内容并解析:比较license校验文件和license校验扇区中的软件license的唯一标识是否一致;
[0011]若不一致,则认为本次导入的是一个全新的license;
[0012]若一致,则比较license校验扇区中记录的时间与当前正在运行的操作系统中的时间;
[0013]若license校验扇区中记录的时间等于或晚于当前正在运行的操作系统中的时间,则判定为用户篡改过系统时间,license注册失败,验证结束;
[0014]若否,则认为license合法重复导入;
[0015]若判定本次导入的是一个全新的license或者license合法重复导入,且当前系统时间在license的有效时间范围内,则继续进行S4;
[0016]S4、采用周期性校验或软件启动时校验的方式校验license的合法性,同时检查license校验文件与license校验扇区中的时间的合法性,若存在不合法,则判定软件license失效,注册失败,若全部合法,则判定用户正常使用软件。
[0017]进一步地,S1中,注册软件license时获取当前系统时间,并检查该当前系统时间是否在license要求的有效时间段内,若不在,则注册失败。
[0018]进一步地,S2中,获取系统的硬件唯一特征信息,再将该硬件唯一特征信息换算为一个正整数,将该正整数作为硬件唯一标识码。
[0019]进一步地,S2中,所述license校验文件的大小不能超过512字节。
[0020]进一步地,S3中,具体地,将硬件唯一标识码作为扇区逻辑编号,换算成扇区在磁盘上的物理位置,该物理位置对应磁盘上唯一一个扇区,再将license校验文件的内容写入该扇区,得到license校验扇区。
[0021]进一步地,S3中还包括,在得到license校验扇区后,读取license校验扇区的内容,并进行解密,若解密失败,则认为本次导入的为一个全新的license,若解密成功,则对内容进行解析。
[0022]进一步地,S3中还包括,若判定本次导入为全新的license或者license合法重复导入,且当前系统时间在license的有效时间范围内,则将软件license信息保存在文件中,得到license文件。
[0023]进一步地,S4中,具体包括,读取license校验文件的内容和license校验扇区的内容,比较license文件、license校验文件、license校验扇区中的软件license的唯一标识是否一致,如果不一致则
认为license校验不合法,即软件license失效,注册失败;获取当前系统时间,如果当前系统时间比license校验文件或license校验扇区中记录的时间早,则认为用户修改了系统时间,判定软件license失效,注册失败;全部检查无异常则认为用户正常使用软件。
[0024]进一步地,还包括S5,若判定用户正常使用软件,则按照S2和S3中的操作,基于当前系统时间刷新license校验文件和license校验扇区的内容。
[0025]本发明的防篡改时间的软件License验证方法,能够有效防止用户修改系统时间来复用license,同时又可以防止用户重装操作系统来复用license。
附图说明
[0026]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0027]图1是本发明的License验证方法示意图;
[0028]图2是本发明的License验证流程结构示意图。
具体实施方式
[0029]下面将结合本发明的附图,对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0030]根据图1-2所示,说明本发明的一种防篡改时间的软件License验证方法,包括以

本文发布于:2024-09-21 17:44:18,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/404943.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:时间   软件   扇区   校验   系统
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议