[发明专利]一种验证编译器安全性的方法在审
申请号: | 201611135782.5 | 申请日: | 2016-12-12 |
公开(公告)号: | CN106611125A | 公开(公告)日: | 2017-05-03 |
发明(设计)人: | 王少培 | 申请(专利权)人: | 中国航空工业集团公司洛阳电光设备研究所 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F9/45 |
代理公司: | 西北工业大学专利中心61204 | 代理人: | 陈星 |
地址: | 471099 *** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 验证 编译器 安全性 方法 | ||
技术领域
本发明涉及一种用于验证编译器安全性的方法。
背景技术
计算机软件在高安全领域(如,航空航天)中应用范围越来越广,其复杂度越来越大,在这些领域中,编译器的安全性需要验证。目前国内外对这些关键领域的开发技术还停留在汇编代码直接编码阶段,以避免编译阶段可能引入的不安全因素,但是汇编编码复杂程度高,应用实现难度极大。因此最终还是要走通过编译器编译高级语言这条道路。
高安全领域对编译过程的安全可靠性有严格的要求,当前的主流编译器与高安全要求还有一定的距离。因此,亟需一种通用的验证编译器安全性的方法以适应不同高安全领域应用所需的各异的编译器。
编译器安全性认证的方法有经验数据认证,但是国外的经验获取渠道有限制,而在国内,这些高安全领域还没有很多这方面的经验可以证明某款编译器的安全性。
发明内容
本发明的目的是:提供一种验证编译器安全性的方法,该方法可以验证某种编译器的安全性,并可方便的为其他编译器的安全性验证提供基础。
该方法通过在待验证编译器上编译验证代码库中的代码,产生目标汇编码,再对验证代码和对应的汇编码进行一致性判断,得出该编译器是否安全的结论。
本发明的技术方案为:
所述一种验证编译器安全性的方法,其特征在于:包括以下步骤:
步骤1:根据编译器的应用环境,设置编译器的编译选项;所述编译选项包括优化等级、硬件平台和链接库;
步骤2:确定编码标准,根据编码标准建立验证代码库,所述验证代码库包含应用中所有可能出现的代码结构和这些代码结构的组合;所述代码结构包括数据结构、控制结构、数组长度、参数个数;
步骤3:将验证代码库中的所有代码输入编译器,得到目标汇编码;对源代码和目标汇编码的语法进行走查,确定源代码和目标汇编码是否一致;如果一致,则认为编译器安全,如果不一致,则修改编译器或编码标准。
有益效果
本发明的优点是:本发明所提供的验证编译器安全性的方法,不依赖特种编译器丰富的使用经验来判断编译器的安全性,而是以验证代码库为基础,进行目标汇编码和源代码的一致性判断来确定编译器的安全性。该方法具有成本低、易实施、易迁移等优点。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明原理示意图;
图2为本发明的验证代码库确定示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
本发明涉及一种验证编译器安全性的方法。采用本发明介绍的验证编译器安全性的方法,解决了编译源代码和目标汇编码一致性确定的问题,该方法成本低、易实施、易迁移。编译器安全性验证流程:确定编码标准;确定需要的驱动代码;设置编译器环境;根据编码标准确定验证代码库;对验证代码库中的代码进行编译,并把产生的目标汇编码与源代码进行一致性判断,得出编译器是否安全的结论。若一致,则证明编译器安全;否则,说明需要修改编译器或者编码标准。若使用其它编译器,已有的验证代码库可根据新的编码标准进行适当微调删减后复用。
下面对本发明做进一步详细说明。
步骤1:根据编译器的应用环境,设置编译器的编译选项;所述编译选项包括优化等级、硬件平台和链接库。
编译器环境参数不同,编译的效果也不同,我们在面对具体问题时,只需要对特定问题的编译选项进行设置,如优化等级、硬件平台和链接库。
步骤2:确定编码标准,根据编码标准建立验证代码库,所述验证代码库包含应用中所有可能出现的代码结构和这些代码结构的组合;所述代码结构包括数据结构、控制结构、数组长度、参数个数。
步骤3:将验证代码库中的所有代码输入编译器,得到目标汇编码;对源代码和目标汇编码的语法进行走查,确定源代码和目标汇编码是否一致。根据一致性判断结果,得出编译器是否安全的结论。若一致,则证明编译器安全,在软件工程实施的过程中,只需要把代码限定在验证代码库的范围内即可;否则,说明需要修改编译器或者编码标准。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国航空工业集团公司洛阳电光设备研究所,未经中国航空工业集团公司洛阳电光设备研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611135782.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:计算机装置及其开机方法
- 下一篇:一种漏洞严重性评估及修补方法