[发明专利]一种面向关键软件二进制文件的特征码生成方法在审
申请号: | 201711097004.6 | 申请日: | 2017-11-09 |
公开(公告)号: | CN108008960A | 公开(公告)日: | 2018-05-08 |
发明(设计)人: | 刘斌;崔灿;李国旗;余正伟;刘畅 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | G06F8/61 | 分类号: | G06F8/61;G06F11/36;G06F21/57;G06F21/60 |
代理公司: | 北京慧泉知识产权代理有限公司 11232 | 代理人: | 王顺荣;唐爱华 |
地址: | 100191*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 面向 关键 软件 二进制文件 特征 生成 方法 | ||
一种面向关键软件二进制文件的特征码生成方法,其步骤如下:一:将目标二进制文件分割为两个子二进制文件;二:分别求取目标二进制文件和两个子二进制文件的32位小写的MD5码;三:分别截取步骤二中的三个32位小写的MD5码的后两位,并按照“子二进制文件1‑子二进制文件2‑目标二进制文件”的顺序组合在一起,并通过分隔符“‑”将前三个数和后三个数连接起来,最终生成一个六位的16进制数作为目标二进制文件的特征码;该方法具有简单明了,易于实现,同时又可以保证安全性的特点,可以有效的提高二进制文件加载管理的工作效率,保证其安全性。
技术领域
本发明涉及一种面向关键软件二进制文件的特征码生成方法。属于计算机安全技术领域。
背景技术
软件加载管理是属于GJB 5000A-2008(《军用软件研制能力成熟度模型》)到GJB9001A-2001(《质量管理体系要求》)接续的工作;从适航体系来看,该问题属于D0-178C(机载系统和设备合格审定中的软件考虑)的一致性验证工作。安全关键软件,比如航空航天领域的关键软件,如果加载了错误的二进制文件,可能会造成机毁人亡等严重后果。软件加载过程管理的目的是为防止由于工作疏忽、作弊以及蓄意破坏等原因而加载错误的二进制文件。二进制文件的特征码相当于二进制文件的指纹,用来确定所加载的二进制文件是否正确,是软件加载管理的关键。
目前,二进制文件特征码的提取方法有三种:
第一种方法,选取用商用编程器的编译器得到的校验数的后几位作为二进制文件的特征码。其中,校验数一般是16至32位的一串16进制数,选取的特征码的位数不尽相同,比如有的单位是后四位,有的单位是后六位。然而该方法存在两个弊端,其一是由于不同的研制单位,甚至同一个研制单位不同的研制项目所使用的编程器的编译器并不一致,这就造成用来生成二进制文件特征码的工具不一致,因此难以做到统一管理;另一个弊端是,如果有人伪造和商用编程器的编译器相同特征码的二进制软件会造成信息泄露,后果不堪设想。
第二种方法是通过反编译二进制文件,从程序的结构特征提取特征码。然而,由于安全关键软件的硬件运行平台多种多样,编程机制也多种多样,很难对所有种类的二进制文件进行反编译,即使能够反编译,也很难保证质量的一致性和稳定性。
第三种方法是在通用计算领域广泛应用的,以MD5码作为二进制文件的特征码。任何文件经过MD5后,都可以得到一个32位的16进制数,称为MD5码。通过比较MD5码来判断是否是同样的一个文件。然而该方法存在安全漏洞。从理论上讲,世界上可能存在的文件有无数个,而MD5码的编码空间是16的32次方是有限的,因此,必然有相同的文件,它们的MD5码是一样的。据调研存在一种基于碰撞函数的软件,可以根据MD5值得到一个和原文件一样大小,但是不同于原文件的二进制文件。如果直接以MD5码作为二进制文件的特征码的话,显然这一漏洞可能被不法分子利用搞蓄意破坏。
针对目前我国航空航天等安全关键软件加载管理工作中,没有统一的二进制文件特征码生成方法,并由此造成的监管成本高,存在安全隐患等问题,本发明设计了一种新方法,该方法对二进制文件分两层进行三次求取MD5码,并由这三个MD5码生成一个六位16进制数作为二进制文件的特征码,该方法具有易于实现,同时又可以保证安全性的特点,可以有效的提高二进制文件加载管理的工作效率,保证其安全性。因此本发明提出一种面向关键软件二进制文件的特征码生成方法,可以克服现有方法的不足。
发明内容
(1)目的:
本发明的目的是提供一种面向关键软件二进制文件的特征码生成方法,该方法具有易于实现,同时又可以保证安全性的特点,可以有效的提高二进制文件加载管理的工作效率,并确保其安全性。
(2)技术方案:
本发明提供一种面向关键软件二进制文件的特征码生成方法,以期通过求取二进制文件MD5码得到一种二进制文件特征码,从而使得在提高二进制文件的安全性的同时,提高二进制文件加载管理的工作效率。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711097004.6/2.html,转载请声明来源钻瓜专利网。