[发明专利]一种基于协同验证的软件保护机制及数据交换方法在审
申请号: | 202010885217.0 | 申请日: | 2020-08-28 |
公开(公告)号: | CN112016058A | 公开(公告)日: | 2020-12-01 |
发明(设计)人: | 林天锦;文韵逑;张旭东 | 申请(专利权)人: | 上海宝通汎球电子有限公司 |
主分类号: | G06F21/12 | 分类号: | G06F21/12 |
代理公司: | 石家庄中和昇知识产权代理事务所(特殊普通合伙) 13145 | 代理人: | 付会平 |
地址: | 200042 上海市静安*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 协同 验证 软件 保护 机制 数据 交换 方法 | ||
1.一种基于协同验证的软件保护机制及数据交换方法,其特征在于,包括以下步骤:
S1、在受保护软件、从设备、软件加密狗三方之间约定一个加解密算法机制;
S2、将软件加密狗插入到受保护软件运行的主设备中;
S3、受保护软件和软件加密狗对同一个随机数加密,验证其中密文是否一致,来判断软件加密狗的合法性;
S4、若软件加密狗为合法授权的软件加密狗,将受保护软件内置初值密码传给软件加密狗,生成基于内置初值密码的加密序列,并返回给受保护软件;同时进行硬件机器码校验,判断是否为已授权的硬件设备;
若为已授权的硬件设备,生成基于设备机器码生成的加密序列,并返回给受保护软件合成密文,进行解密验证,进而来控制是否启动受保护软件;
S5、当受保护软件运行启动后,会随机生成数列传给软件加密狗,软件加密狗将收到的序列经过加密算法运算生成加密序列后,回传给受保护软件,对受保护软件的内置密码初值进行修改。
2.根据权利要求1所述的一种基于协同验证的软件保护机制及数据交换方法,其特征在于,所述步骤S3包括以下步骤:
S31、受保护软件生成随机数初值,并使用加密算法对所述随机初值进行加密运算,生成加密序列;同时将所述随机数初值传送给软件加密狗,软件加密狗经过加密算法进行加密运算,传回受保护软件;
S32、将接收到的软件加密狗的加密运算序列与受保护软件生成的加密序列进行校验,通过验证结果来判断软件加密狗的合法性。
3.根据权利要求2所述的一种基于协同验证的软件保护机制及数据交换方法,其特征在于,所述随机数初值是通过受保护软件随机函数发生器生成,随机数初值作为算法初值传给受保护软件内置算法序列生成模块;
经过算法序列生成模块产生基于随机函数发生器产生的随机数的加密序列,传入算法序列验证模块;
软件加密狗将算法初值进行算法运算后产生的加密算法序列,传入算法序列验证模块。
4.根据权利要求1所述的一种基于协同验证的软件保护机制及数据交换方法,其特征在于,所述步骤S4中,硬件机器码校验的方法为:将硬件的机器码传给从设备,进行硬件机器码校验。
5.根据权利要求1所述的一种基于协同验证的软件保护机制及数据交换方法,其特征在于,所述步骤S4中,合成密文的方法为:将基于内置初值密码的加密序列与基于设备机器码生成的加密序列在受保护软件密文融合模块内进行融合。
6.根据权利要求1所述的一种基于协同验证的软件保护机制及数据交换方法,其特征在于,所述受保护软件、从设备、软件加密狗内都安装有加解密算法驱动。
7.根据权利要求1所述的一种基于协同验证的软件保护机制及数据交换方法,其特征在于,还包括:受保护软件的硬件机器码获取机制;硬件机器码包括当前硬件的各种参数和状态描述。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海宝通汎球电子有限公司,未经上海宝通汎球电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010885217.0/1.html,转载请声明来源钻瓜专利网。