[发明专利]软件完整性保护和验证方法、系统、设备及存储介质有效
申请号: | 201910530809.8 | 申请日: | 2019-06-19 |
公开(公告)号: | CN110245466B | 公开(公告)日: | 2021-08-24 |
发明(设计)人: | 胡传文;王彦杰;雷心田;顾振华 | 申请(专利权)人: | 苏州科达科技股份有限公司 |
主分类号: | G06F21/12 | 分类号: | G06F21/12;G06F21/64;H04L9/08;H04L9/32 |
代理公司: | 上海隆天律师事务所 31282 | 代理人: | 臧云霄;夏彬 |
地址: | 215011 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 软件 完整性 保护 验证 方法 系统 设备 存储 介质 | ||
本发明提供了一种软件完整性保护和验证方法、系统、设备及存储介质,所述方法包括:加载器生成第一公私钥对;所述加载器采用所述第一公私钥对中的私钥对核心进程文件进行签名,得到所述核心进程文件的数字签名并存储;安全芯片生成第二公私钥对;所述安全芯片利用所述第二公私钥对中的私钥对存储有所述核心进程文件的签名结果的所述加载器进行签名,得到所述加载器的签名结果并存储。通过采用本发明,基于安全芯片对软件进行完整性保护,利用安全芯片中密钥不可导出的特性和数字签名验证文件完整性的方式,保证软件的核心进程不会被非法篡改和非法启动。
技术领域
本发明涉及软件保护技术领域,尤其涉及一种软件完整性保护和验证方法、系统、设备及存储介质。
背景技术
对于一个软件来说,其中有很多核心进程是十分重要的,如果核心进程一旦被非法启动,则会导致软件被非法入侵,软件无法正常运行使用,并且软件的安全性受到严重威胁。对于一个软件来说,一旦启动会实现该软件的核心功能的进程作为该软件的核心进程。为了保证软件的安全使用,需要保护其核心进程所对应的文件不被篡改。核心进程文件即是为了启动核心进程所必须的一些数据文件。例如,对于一个会议系统软件来说,将会议接入的编解码算法作为会议系统软件的核心进程文件,如果核心进程文件被篡改,则无法实现会议系统软件的正常会议接入功能。因此,需要提供一种对软件进行加密验证的方法,保证软件不会被非法篡改和非法启动。
发明内容
针对现有技术中的问题,本发明的目的在于提供一种软件完整性保护和验证方法、系统、设备及存储介质,基于安全芯片对软件进行完整性保护,保证软件不会被非法篡改和非法启动。
本发明实施例提供一种软件完整性保护方法,包括如下步骤:
加载器生成第一公私钥对;
所述加载器采用所述第一公私钥对中的私钥对核心进程文件进行签名,得到所述核心进程文件的数字签名并存储;
安全芯片生成第二公私钥对;
所述安全芯片利用所述第二公私钥对中的私钥对存储有所述核心进程文件的签名结果的所述加载器进行签名,得到所述加载器的签名结果并存储。
可选地,还包括如下步骤:
所述安全芯片生成会话密钥,并采用所述会话密钥加密所述第一公私钥对得到第一公私钥对密文;
所述加载器存储所述第一公私钥对密文;
其中,在所述加载器采用所述第一公私钥对中的私钥对核心进程文件进行签名之前,所述方法还包括:
所述安全芯片利用所述会话密钥对所述第一公私钥对密文进行解密,得到所述第一公私钥对中的私钥。
可选地,所述保护方法还包括如下步骤:
所述安全芯片采用所述第二公私钥对中的公钥加密所述会话密钥得到会话密钥密文;
所述加载器存储所述会话密钥密文。
可选地,所述加载器采用所述第一公私钥对中的私钥对核心进程文件进行签名之前,还包括如下步骤:
所述加载器向所述安全芯片导入所述会话密钥密文;
所述安全芯片利用所述第二公私钥对中的私钥对所述会话密钥密文进行解密,得到所述会话密钥。
本发明实施例还提供一种软件完整性验证方法,用于对所述的软件完整性保护方法处理后的软件进行完整性验证,所述验证方法包括如下步骤:
启动待验证软件的加载器;
在检测到安全芯片接入时,所述待验证软件的加载器获取所述安全芯片存储的加载器的数字签名;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州科达科技股份有限公司,未经苏州科达科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910530809.8/2.html,转载请声明来源钻瓜专利网。