System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种软件授权文件的生成及验证方法技术_技高网

一种软件授权文件的生成及验证方法技术

技术编号:40395746 阅读:4 留言:0更新日期:2024-02-20 22:24
本发明专利技术提供一种软件授权文件的生成及验证方法。该生成方法包括:给定生成授权文件时所需要的授权参数;所述授权参数包括用户的硬件指纹特征sn_id、授权有效期和授权文件加密密钥;根据所述授权参数对授权文件明文模板中的内部属性参数进行赋值,生成授权文件明文;所述内部属性参数包括授权文件的首次生成时间戳、上一次使用时间戳、过期时间戳以及授权文件内部加密的密钥;采用授权文件内部加密的密钥调用第一加密算法对所述授权文件明文中的所有内部属性参数的值进行加密,得到第一授权文件密文;采用所述授权文件加密密钥调用第二加密算法对所述第一授权文件密文进行加密,得到第二授权文件密文,并作为最终的授权文件。

【技术实现步骤摘要】

本专利技术涉及敏感信息访问控制,尤其涉及一种软件授权文件的生成及验证方法


技术介绍

1、目前软件授权主要包括三种方式:一种方式是购买一个授权码,离线情况下授权码可被无限使用;一种方式则是基于硬件指纹来生成授权文件,但由于硬件指纹(如mac地址)获取比较简单,因此可能会被修改从而绕过授权。还有一种方式则是通过判断授权文件的信息,或者将授权信息写入到数据库中,但是授权文件的内容有可能被破解和修改从而导致授权失控,数据库的密码有可能被泄露,从而导致数据库中的授权信息也可能被修改。


技术实现思路

1、为了实现对软件产品进行有效授权,防止软件著作权遭受侵害,本专利技术提供一种软件授权文件的生成及验证方法。

2、一方面,本专利技术提供一种软件授权文件的生成方法,包括:

3、步骤1:给定生成授权文件时所需要的授权参数;所述授权参数包括用户的硬件指纹特征sn_id、授权有效期和授权文件加密密钥;

4、步骤2:根据所述授权参数对授权文件明文模板中的内部属性参数进行赋值,生成授权文件明文;所述内部属性参数包括授权文件的首次生成时间戳、上一次使用时间戳、过期时间戳以及授权文件内部加密的密钥;

5、步骤3:采用授权文件内部加密的密钥调用第一加密算法对所述授权文件明文中的所有内部属性参数的值进行加密,得到第一授权文件密文;

6、步骤4:采用所述授权文件加密密钥调用第二加密算法对所述第一授权文件密文进行加密,得到第二授权文件密文,并作为最终的授权文件。

7、进一步地,根据所述授权文件加密密钥和当前时间戳生成授权文件内部加密的密钥。

8、进一步地,所述授权参数还包括:授权文件描述信息、授权模块列表、授权的采集器数量、授权能够通信的日志源数量、授权能够使用的解析文件类型和授权产品的版本信息。

9、进一步地,所述内部属性参数还包括:comment标签、序列号、授权的采集器数量、授权能够通信的日志源数量和授权能够使用的解析文件类型;其中,序列号由sn_id、授权产品的版本信息和授权模块列表组成。

10、另一方面,本专利技术提供一种软件授权文件的验证方法,包括:

11、步骤1:对第二授权文件密文进行解密得到第一授权文件密文;

12、步骤2:对所述第一授权文件密文中的所有内部属性参数的值进行解密,并将得到的明文值存储到系统变量中;所述内部属性参数包括授权文件的首次生成时间戳、上一次使用时间戳、过期时间戳以及授权文件内部加密的密钥;

13、步骤3:启动守护线程,以便利用所述守护线程每隔设定时间对解密后的授权文件进行检查,具体包括:

14、将解密的授权文件的过期时间戳与系统的当前时间戳进行对比以判断是否授权过期;

15、将系统的当前时间戳与关键配置文件的最后修改时间进行比较以判断系统时间是否被恶意修改,若存在恶意修改,则提示授权错误,并将关键配置文件的最后修改时间修改为系统的当前时间戳;

16、从本地数据库中读取备份的授权文件的上一次使用时间戳,并将其与解密的授权文件的上一次使用时间戳进行比较,若不一致,则提示授权错误。

17、进一步地,所述内部属性参数还包括:序列号,所述序列号由用户的硬件指纹特征sn_id、授权产品的版本信息和授权模块列表组成;

18、对应地,步骤3中,具体还包括:

19、从解密的序列号中提取授权产品的版本信息,并判断其与系统当前的版本是否匹配;

20、从解密的序列号中提取出用户的硬件指纹特征sn_id,并判断其与系统当前的硬件是否匹配。

21、进一步地,所述内部属性参数还包括:授权的采集器数量、授权能够通信的日志源数量和授权能够使用的解析文件类型;

22、对应地,在步骤3之后还包括:

23、步骤4:当需要判断和业务调用时,进行相关授权项的验证,具体包括:

24、根据解密的授权的采集器数量,对当前能够使用的采集器数量进行验证;

25、根据解密的授权能够通信的日志源数量,对当前能够通信的日志源数量进行验证;

26、根据解密的授权能够使用的解析文件类型,对当前能够使用的解析文件类型进行验证。

27、进一步地,步骤3中,还包括:

28、若备份的授权文件的上一次使用时间戳与解密的授权文件的上一次使用时间戳一致,则利用系统的当前时间戳对解密的授权文件的上一次使用时间戳进行赋值,并重新生成新的授权文件;同时,将系统的当前时间戳记录为备份的授权文件的上一次使用时间戳存储在本地数据库中。

29、本专利技术的有益效果:

30、本专利技术在生成授权文件时,设置了两级加密,增加了授权破解的难度和复杂性,有效保护了软件产品的著作权,维护了软件产品开发者的合法权益。同时,在验证授权文件时,对系统时间和授权文件的上一次使用时间戳进行验证,可以避免非法用户绕过授权过期时间的控制。

本文档来自技高网...

【技术保护点】

1.一种软件授权文件的生成方法,其特征在于,包括:

2.根据权利要求1所述的一种软件授权文件的生成方法,其特征在于,根据所述授权文件加密密钥和当前时间戳生成授权文件内部加密的密钥。

3.根据权利要求1所述的一种软件授权文件的生成方法,其特征在于,所述授权参数还包括:授权文件描述信息、授权模块列表、授权的采集器数量、授权能够通信的日志源数量、授权能够使用的解析文件类型和授权产品的版本信息。

4.根据权利要求3所述的一种软件授权文件的生成方法,其特征在于,所述内部属性参数还包括:comment标签、序列号、授权的采集器数量、授权能够通信的日志源数量和授权能够使用的解析文件类型;其中,序列号由sn_id、授权产品的版本信息和授权模块列表组成。

5.一种软件授权文件的验证方法,其特征在于,包括:

6.根据权利要求5所述的一种软件授权文件的验证方法,其特征在于,所述内部属性参数还包括:序列号,所述序列号由用户的硬件指纹特征sn_id、授权产品的版本信息和授权模块列表组成;

7.根据权利要求5所述的一种软件授权文件的验证方法,其特征在于,所述内部属性参数还包括:授权的采集器数量、授权能够通信的日志源数量和授权能够使用的解析文件类型;

8.根据权利要求5所述的一种软件授权文件的验证方法,其特征在于,步骤3中,还包括:

...

【技术特征摘要】

1.一种软件授权文件的生成方法,其特征在于,包括:

2.根据权利要求1所述的一种软件授权文件的生成方法,其特征在于,根据所述授权文件加密密钥和当前时间戳生成授权文件内部加密的密钥。

3.根据权利要求1所述的一种软件授权文件的生成方法,其特征在于,所述授权参数还包括:授权文件描述信息、授权模块列表、授权的采集器数量、授权能够通信的日志源数量、授权能够使用的解析文件类型和授权产品的版本信息。

4.根据权利要求3所述的一种软件授权文件的生成方法,其特征在于,所述内部属性参数还包括:comment标签、序列号、授权的采集器数量、授权能够通信的日志源数量和授权能够使用的...

【专利技术属性】
技术研发人员:张乾坤董得东郝瑶果
申请(专利权)人:郑州云智信安安全技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1