【技术实现步骤摘要】
一种基于固态硬盘的软件加密方法
[0001]本专利技术涉及信息安全技术,尤其涉及一种基于固态硬盘的软件加密方法
。
技术介绍
[0002]目前很多软件存在开发成本高,开发周期长,容易被复制
、
破解的问题,这些问题直接导致软件所属的企业遭受着盗版和破解的威胁以及重大的经济损失
。
[0003]国内外采用的软件保护方法主要有硬件加密
、
软件加密这两大类
。
硬件加密的方法需要独立的硬件加密产品,增加了企业的成本,同时存在独立的硬件加密产品易丢失等问题;软件加密的激活序列号容易破解
、
联网查询激活无法在离线环境下使用的缺陷
。
技术实现思路
[0004]本专利技术要解决的技术问题在于针对现有技术中的缺陷,提供一种基于固态硬盘的软件加密方法
。
[0005]本专利技术解决其技术问题所采用的技术方案是:一种基于固态硬盘的软件加密方法,包括以下步骤:
[0006]1)
软件授权流程 >[0007]1.1本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.
一种基于固态硬盘的软件加密方法,其特征在于,包括以下步骤:
1)
软件授权流程
1.1)
对软件开发商原始的软件授权信息
A
通过密钥生成系统的客户端加密后传输至密钥生成系统的服务端;原始的软件授权信息
A
为包括授权等级
、
以及软件授权使用次数
、
授权时限
、
授权序列号和校验码中的一个或多个的信息组合;授权等级包括未授权
、
只校验使用次数
、
只校验授权截止日期
、
同时校验使用次数和授权截止日期和同时校验使用次数和授权截止日期以及硬件
ID
;
1.2)
密钥生成系统的服务端对接收信息解密得到信息
A
,将添加信息与原始的信息
A
组合后生成信息
C
作为软件授权信息;
1.3)
密钥生成系统的服务端生成用于向固态硬盘写入软件授权信息的
Vendor
写命令并发送给固态硬盘,所述固态硬盘的固件包含与密钥生成系统配合的用于解析授权信息
、
存储授权信息
、
更新授权信息的授权信息处理模块;密钥生成系统的服务端接收固态硬盘的返回值,并将结果返回给客户端让软件开发商知悉写入软件授权信息是否成功;
2)
校验授权信息流程:
2.1)
目标应用软件通过应用动态链接库提供的函数接口对固态硬盘发送授权信息查询命令;所述应用动态链接库接收目标应用软件的命令,通过与固态硬盘进行通讯,对固态硬盘中的软件授权信息进行解析与更新;应用动态链接库接收授权信息查询命令后,通过规则
g1
生成多条用于授权信息查询的
Vendor
读命令;
2.2)
固态硬盘接收应用动态链接库的多条读命令,如果固态硬盘授权加密过,
Vendor
读命令将读取上述储存在固态硬盘的信息
C
按照
g2
规则转化为数据并返回应用动态链接;如果固态硬盘未授权加密过,则
Vendor
读命令以全0作为信息
C
,按照
g2
规则转化为数据并返回应用动态链接库;固态硬盘按照上述流程返回数据后,按照信息
C
中的授权等级修改更新信息
C
中的其他授权信息;
2.3)
应用动态链接库接收固态硬盘上述返回的数据,将读命令返回的数据按照规则
g2
逆解析为信息
C
,如果信息
C
全0,则表示固态硬盘没有授权过,直接返回没有权限给目标应用软件;如果信息
C
不为全0,则根据信息
C
中的授权等级进行不同的校验,判定是否有授权权限;若没有相应的权限,直接将没有权限的结果返回给目标应用软件;若有执行权限,则将当前系统时间发送至固态硬盘,固态硬盘将当前系统时间更新至授权信息
C
中,然后将授权信息
C
中的当前系统时间返回给应用动态链接库;应用动态链接库确认返回的当前系统时间和刚才写下去的系统时间是否一致,如果一致则返回授权检验成功的结果给目标应用软件;如果不一致,则返回执行失败给目标应用软件;
2.4)
目标应用软件根据上述应用动态链接库查询命令接口返回的结果来决定是否运行
。
2.
根据权利要求1所述的一种基于固态硬盘的软件加密方法,其特征在于,所述步骤
1.2)
中,添加信息包括当前时间信息以及根据信息
A
中的授权等级确定是否添加的硬件信息;所述硬件信息包括
CPU
硬件
ID
信息和
/
或主板
ID
信息
。3.
根据权利要求1所述的一种基于固态硬盘的软件加密方法,其特征在于,所述步骤
1.3)
中,具体如下:
1.3.1)
密钥生成系统的服务端根据规则
g1
生成多条
SATA
协议或
NVMe
协议中的用于向固态硬盘写入软件授权信息的
Vendor
写命令并发送给固态硬盘,其中多条
Vendor
写命令包括用于混淆的写命令和正常的写命令;正常的写命令还包括根据信息
C
生成的附带数据;
1.3.2)
固态硬盘接收所述的
Vendor
写命令后,根据规则
g1
来区分混淆的写命令和正常的写命令,将混淆的写命令数据丢弃,对正常的写命令的携带的数据获取信息
C
并验证其正确性;如果被写的区域留有旧的信息
C
,则验证信息
C
中的时间信息是否大于或等于固态硬盘里面的原有信息
C
里面的当前系统时间信息,如果验证通过则将信息
C
分别存储在固态硬盘的
system
区的指定区并返回成功;如...
【专利技术属性】
技术研发人员:王琪,张杰,姚栋,李四林,
申请(专利权)人:湖北长江万润半导体技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。