工业主机环境下的可信程序快速识别方法、设备和系统技术方案

技术编号:37258761 阅读:14 留言:0更新日期:2023-04-20 23:34
本发明专利技术涉及可信程序判断技术领域,公开一种工业主机环境下的可信程序快速识别方法、设备和系统,方法包括打开可执行程序的句柄,判断可执行程序中是否存在现有数字签名,若存在则根据现有数字签名判断可执行程序是否可信;若不存在则判断可执行程序的大小是否大于预设值a,若不大于a则读取可执行程序的完整数据并计算新数字签名,若大于a则读取可执行程序的头尾大小各为b的数据并计算新数字签名,根据新数字签名判断可执行程序是否可信;设备包括存储器、处理器和存储在存储器上并可在处理器上运行的计算机程序;系统包括实现方法中各步骤的模块。本发明专利技术可以加快对可执行程序是否可信的判断速度、有效减少CPU和磁盘I/O的消耗。耗。耗。

【技术实现步骤摘要】
工业主机环境下的可信程序快速识别方法、设备和系统


[0001]本专利技术涉及可信程序判断
,尤其是指一种工业主机环境下的可信程序快速识别方法、设备和系统。

技术介绍

[0002]可信程序是指其可信性能够符合用户期望的程序,在使用这些程序前需要对其的可信性进行识别。现有技术中对可信程序的识别方法通常包括以下几步:第一步、扫描目标主机的所有可执行程序;第二步、逐个提取可执行程序的数字签名数据,并将数字签名数据写入数据库形成白名单程序库,库中所记录的程序被定义为可信程序;第三步、捕捉进程启动事件,提取当前启动进程的数字签名并在白名单数据库中查找该数字签名,如果该数字签名存在则允许当前进程继续执行,否则终止当前进程的执行。
[0003]但是,现有的技术方案在项目实施中也存在一些问题。工控主机环境中工控程序的可执行模块所占空间较大,通常有数百兆字节;工控主机环境往往运行着工控设备控制和监控程序,CPU占用率很高,通常在80%以上;工控主机行业软件系统需要由多个进程实现,在业务控制过程中会频繁启动不通的可执行程序。而传统的可信程序的数字签名的提取方法是读取整个可执行程序的所有数据再计算数字签名,这种方法具有磁盘I/O数据量大、计算量大的特性。这些特性在工业主机的环境下会导致较大的目标工控主机性能损失,特别是在某些对性能要求较高的工控主机中,甚至会导致控制程序出现执行异常、数据错误和软件崩溃的现象。

技术实现思路

[0004]为此,本专利技术所要解决的技术问题在于克服现有技术中的不足,提供一种工业主机环境下的可信程序快速识别方法、设备和系统,可以加快对可执行程序是否可信的判断速度、有效减少CPU和磁盘I/O的消耗。
[0005]为解决上述技术问题,本专利技术提供了一种工业主机环境下的可信程序快速识别方法,包括:
[0006]打开可执行程序的句柄,判断可执行程序中是否存在现有数字签名;
[0007]若存在则根据现有数字签名判断可执行程序是否可信,若不存在则判断可执行程序的大小是否大于预设值a,
[0008]若可执行程序的大小不大于预设值a则读取可执行程序的完整数据并计算新数字签名,若可执行程序的大小大于预设值a则读取可执行程序的头尾大小各为b的数据并计算新数字签名,根据所述新数字签名判断可执行程序是否可信。
[0009]在本专利技术的一个实施例中,所述根据现有数字签名判断可执行程序是否可信,具体为:
[0010]使用公钥校验现有数字签名是否合法,若合法则可执行程序可信,若不合法则可执行程序不可信。
[0011]在本专利技术的一个实施例中,所述预设值a的取值范围为5M

15M。
[0012]在本专利技术的一个实施例中,所述b的取值范围为1M

5M。
[0013]在本专利技术的一个实施例中,所述读取可执行程序的完整数据并计算新数字签名,具体为:
[0014]将可执行程序的完整数据进行哈希运算得到数字摘要,使用非对称RSA加密算法对所述数字摘要进行加密得到新数字签名。
[0015]在本专利技术的一个实施例中,所述读取可执行程序的头尾大小各为b的数据并计算新数字签名,具体为:
[0016]将位于可执行程序的头尾大小各为b的数据进行哈希运算得到数字摘要,拼接可执行程序的头尾大小各为b的数据和所述数字摘要得到拼接数据,使用非对称RSA加密算法对所述拼接数据进行加密得到新数字签名。
[0017]在本专利技术的一个实施例中,根据所述新数字签名判断可执行程序是否可信,具体为:
[0018]将所述新数字签名与白名单库中的数字签名进行匹配,若新数字签名匹配成功则可执行程序可信,若新数字签名匹配失败则可执行程序不可信。
[0019]在本专利技术的一个实施例中,若新数字签名匹配成功,则将当前的新数字签名加入白名单库进行更新,在匹配下一个可执行程序的新数字签名时使用更新后的白名单库。
[0020]本专利技术还提供了一种工业主机环境下的可信程序快速识别设备,包括存储器、处理器和存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述的工业主机环境下的可信程序快速识别方法的步骤。
[0021]本专利技术还提供了一种工业主机环境下的可信程序快速识别系统,包括程序获取模块、现有数字签名判断模块、新数字签名生成模块、新数字签名判断模块,
[0022]所述程序获取模块打开可执行程序的句柄,将可执行程序传送给所述现有数字签名判断模块;
[0023]所述现有数字签名判断模块判断可执行程序中是否存在现有数字签名,若存在则根据现有数字签名判断可执行程序是否可信,若不存在则将可执行程序传送给所述新数字签名生成模块;
[0024]所述新数字签名生成模块判断可执行程序的大小是否大于预设值a,若可执行程序的大小不大于预设值a则读取可执行程序的完整数据并计算新数字签名,若可执行程序的大小大于预设值a则读取可执行程序的头尾大小各为b的数据并计算新数字签名,将新数字签名传送给所述新数字签名判断模块;
[0025]所述新数字签名判断模块根据所述新数字签名判断可执行程序是否可信。
[0026]本专利技术的上述技术方案相比现有技术具有以下优点:
[0027]本专利技术先检查可执行程序是否存在现有数字签名,若存在则根据现有数字签名快速判断可执行程序是否可信,有效减少CPU和磁盘I/O的消耗;若不存在现有数字签名,再根据当前可执行程序的大小选择整体或部分数据计算新数字签名,再次有效减少CPU和磁盘I/O的消耗;充分考虑可执行程序的大小来减少判断可信时必要获取的数据,可以加快对可执行程序是否可信的判断速度、有效减少CPU和磁盘I/O的消耗,从而达到不影响工控主机主要业务系统执行的效果。
附图说明
[0028]为了使本专利技术的内容更容易被清楚的理解,下面根据本专利技术的具体实施例并结合附图,对本专利技术作进一步详细的说明,其中:
[0029]图1是本专利技术方法的流程图,
[0030]图2是本专利技术实施例中方法的分步具体流程图。
具体实施方式
[0031]下面结合附图和具体实施例对本专利技术作进一步说明,以使本领域的技术人员可以更好地理解本专利技术并能予以实施,但所举实施例不作为对本专利技术的限定。
[0032]参照图1

图2所示,本专利技术公开了一种工业主机环境下的可信程序快速识别方法,包括以下步骤:
[0033]S1:打开可执行程序的句柄,判断可执行程序中是否存在现有数字签名;若存在则执行S2,若不存在则执行S3。
[0034]S2:根据现有数字签名快速判断可执行程序是否可信:使用公钥校验现有数字签名是否合法,若合法则可执行程序可信,若不合法则可执行程序不可信,结束识别。
[0035]S3:判断可执行程序的大小是否大于预设值a,若可执行程序的大小不大于预设值a则执行S4,若可执行程序的大小大于预设值a则执行S5。
[0036]所述预设值a本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种工业主机环境下的可信程序快速识别方法,其特征在于,包括:打开可执行程序的句柄,判断可执行程序中是否存在现有数字签名;若存在则根据现有数字签名判断可执行程序是否可信,若不存在则判断可执行程序的大小是否大于预设值a,若可执行程序的大小不大于预设值a则读取可执行程序的完整数据并计算新数字签名,若可执行程序的大小大于预设值a则读取可执行程序的头尾大小各为b的数据并计算新数字签名,根据所述新数字签名判断可执行程序是否可信。2.根据权利要求1所述的工业主机环境下的可信程序快速识别方法,其特征在于:所述根据现有数字签名判断可执行程序是否可信,具体为:使用公钥校验现有数字签名是否合法,若合法则可执行程序可信,若不合法则可执行程序不可信。3.根据权利要求1所述的工业主机环境下的可信程序快速识别方法,其特征在于:所述预设值a的取值范围为5M

15M。4.根据权利要求1所述的工业主机环境下的可信程序快速识别方法,其特征在于:所述b的取值范围为1M

5M。5.根据权利要求1所述的工业主机环境下的可信程序快速识别方法,其特征在于:所述读取可执行程序的完整数据并计算新数字签名,具体为:将可执行程序的完整数据进行哈希运算得到数字摘要,使用非对称RSA加密算法对所述数字摘要进行加密得到新数字签名。6.根据权利要求1所述的工业主机环境下的可信程序快速识别方法,其特征在于:所述读取可执行程序的头尾大小各为b的数据并计算新数字签名,具体为:将位于可执行程序的头尾大小各为b的数据进行哈希运算得到数字摘要,拼接可执行程序的头尾大小各为b的数据和所述数字摘要得到拼接数据,使用非对称RSA加密算法对所述拼接数据进行加密得到新数字签名。7...

【专利技术属性】
技术研发人员:徐天明陈夏裕章明飞吴志华黄佳敏
申请(专利权)人:江苏亨通工控安全研究院有限公司
类型:发明
国别省市:

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

1