一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种加密式软件许可证注册及检验方法与流程

2022-02-22 09:06:30 来源:中国专利 TAG:

1.本发明涉及软件许可证技术领域,尤其涉及一种加密式软件许可证注册及检验方法。


背景技术:

2.在现如今互联网飞速发展的时代,每年都有大量的软件进入市场,而根据相关研究表明,全球个人电脑上安装的软件有40%以上为盗版,所以解决软件盗版问题迫在眉睫,所以研究软件加密技术是非常有必要的了。
3.现有技术中,现有软件许可证中能实现在无网的环境下运行的很少,无法满足软件产品对软件许可证的需求;现有软件许可证加密程度不高,算法简单容易破解。


技术实现要素:

4.为了克服上述技术的不足,本发明的目的是提供一种加密式软件许可证注册及检验方法。
5.本发明所采用的技术方案是:一种加密式软件许可证注册及检验方法,包括如下步骤:
6.获取用户端服务器与其它服务器有区别的信息作为独有数据,将该独有数据作为基准值;
7.对基准值通过md5进行加密从而生成特征值,然后将特征值提供给用户端服务器;
8.用户端服务器将特征值发送给许可证授权管理服务器,许可证授权管理服务器对特征值通过md5进行加密后获得key值,并将key值发送给用户端,用户端服务器通过key值激活软件,从而完成软件许可证在用户端服务器的注册,并在用户端服务器生成软件许可文件,软件激活后生成许可使用的时间值;
9.将所获得的key值采用des进行加密,从而生成校验key值,并将所述校验key值、所述特征值和所述时间值存储于软件许可文件中;
10.对软件许可文件中的特征值经过md5加密,对软件许可文件中的校验key 值经过des解密,判断特征值经过md5加密后的数据是否等于校验key值经过des解密后的数据,若二者相等,再对时间值进行判断,当时间值大于0时,则检验的软件许可证是有效的。
11.进一步的,所述独有数据包括cpu信息、mac地址、服务器中处理器的型号及其名称信息、mips处理器的运行信息、硬件信息和序列号信息中的一种或多种。
12.进一步的,所述用户端服务器将特征值发送给许可证授权管理服务器,许可证授权管理服务器对特征值通过md5进行加密后获得key值,该特征值和 key值为一对不可逆的键值对,使这对键值对与用户端服务器关联,从而使键值对只可以与所述的用户端服务器匹配。
13.进一步的,所述时间值为设定的使用年限,通过给定一个使用年限的时间戳,开始递减,每个一秒递减1,直到数值为0时,则软件许可证无效。
14.进一步的,所述时间值放入软件许可文件前采用des进行加密,当对软件许可文件中的时间值进行判断前采用des解密。
15.与现有技术相比,本发明具有以下有益效果:
16.1、本发明中使用md5非对称加密算法和des对称加密算法组合,解决了大部分软件许可证注册和检验时都是用简单加密算法,导致数据容易泄密或者软件许可证容易破解等问题,大大提高了软件许可证数据的安全性和保密性,增强了软件许可证的破解难度;
17.2、本发明中限定使用年限使用了自主研发的时间计时器,避免了因运行环境导致无法正常工作的问题,比其它方案更加实用,可应对多种不同的运行环境。
具体实施方式
18.为使本发明实施例的目的、技术方案和优点更加清楚明白,下面本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
19.在本说明书的描述中,所使用的“包含”、“包括”、“具有”、“含有”等,均为开放性的用语,即意指包含但不限于。参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。
20.在本说明书中,需要说明的是,术语“特征值”、“key值”、“使用年限”、“校验key值”等指示特殊数据或者特殊时间名称为数据名称或算法名称,仅是为了方便对与本文所述的发明进行更为详尽的描述和撰写,而不是表示所指的数据必须具有特定的固有名称,所以不能理解为对本发明的限制;术语“md5加密”、“des加密”仅仅表示两种特殊算法的名称,并非是标准的md5算法和des算法,而是在其基础上进行修改实现自己的md5 加密算法和des加密算法,这样大大提高了破解的复杂程度,而且,描述的具体特征、结构或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。各实施例中涉及的步骤顺序用于示意性说明本技术的实施,其中的步骤顺序不作限定,可根据需要作适当调整。
21.现有技术中,现有软件许可证中能实现在无网的环境下运行的很少,无法满足软件产品对软件许可证的需求;现有软件许可证加密程度不高,算法简单容易破解。基于此,本说明书实施例提供了一种加密式软件许可证注册及检验方法。
22.所述一种加密式软件许可证注册及检验方法,包括如下步骤:
23.获取用户端服务器与其它服务器有区别的信息作为独有数据,将该独有数据作为基准值;
24.对基准值通过md5进行加密从而生成特征值,然后将特征值提供给用户端服务器;
25.用户端服务器将特征值发送给许可证授权管理服务器,许可证授权管理服务器对特征值通过md5进行加密后获得key值,并将key值发送给用户端,用户端服务器通过key值激活软件,从而完成软件许可证在用户端服务器的注册,并在用户端服务器生成软件许可文件,软件激活后生成许可使用的时间值;
26.将所获得的key值采用des进行加密,从而生成校验key值,并将所述校验key值、所述特征值和所述时间值存储于软件许可文件中;
27.对软件许可文件中的特征值经过md5加密,对软件许可文件中的校验key 值经过des解密,判断特征值经过md5加密后的数据是否等于校验key值经过des解密后的数据,若二者相等,再对时间值进行判断,当时间值大于0时,则检验的软件许可证是有效的。
28.所述独有数据包括cpu信息、mac地址、服务器中处理器的型号及其名称信息、mips处理器的运行信息、硬件信息和序列号信息中的一种或多种。
29.所述用户端服务器将特征值发送给许可证授权管理服务器,许可证授权管理服务器对特征值通过md5进行加密后获得key值,该特征值和key值为一对不可逆的键值对,使这对键值对与用户端服务器关联,从而使键值对只可以与所述的用户端服务器匹配。
30.所述时间值为设定的使用年限,通过给定一个使用年限的时间戳,开始递减,每个一秒递减1,直到数值为0时,则软件许可证无效。
31.所述时间值放入软件许可文件前采用des进行加密,当对软件许可文件中的时间值进行判断前采用des解密。
32.所述md5不可逆加密算法,是用来将获取到独有数据加密成32位的加密数,以及将一些数据加密成不可逆的加密数,其作用是增强数据的加密程度,提高license的破解难度,防止数据泄漏;
33.所述des可逆加密算法,主要是针对校验值进行加密处理,方便数据进行恢复,便于进行校验处理,由于des加密数据为中间数据,所以数据可逆并不会减弱数据的加密程度,导致license破解难度大幅度下降;所述获取cpu 信息和mac地址的功能,是通过一系列标准库函数实现的功能,用来获取服务器的一些特有信息,以区别其他服务器,为生成唯一的特征值提供原始数据;所述限定使用时间年限的功能,是通过以一个时间戳为基准,每个一秒进行递减一来实现的,用来实现在无网的环境下实现时间的限定。
34.所述md5加密为不可逆加密算法,其全称是message-digest algorithm 5,是一种消息摘要算法,其原理是将要加密处理的数据以512位进行拆分,并且再将每个分组再拆分成16个32位子分组进行处理,经过一系列复杂的位运算处理之后,得到加密生成的一个128位的散列数,该算法具有长度固定、细微性以及不可逆性等优点。
35.所述des加密为可逆加密算法,其全称是data encryption standard(数据加密标准),是一种对称加密算法,其原理是加密和解密共用一组64位的密钥,并将密钥转换成16个子密钥,将明文或是密文按照算法规则与16个子密钥进行一系列复杂的位运算处理之后,得到16位的密文或明文,该算法具有长度固定、极高安全性以及可逆性等优点。
36.最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献