关键词:软件安全;开发流程;软件开发软件开发是一种清洁度较高的行业,是衡量国家信息化水平高低的重要指标,因此,受到国家相关部门的高度重视,增加了该方面的投入。但软件开发过程中也存在一些问题,如版权问题、安全问题等,给我国软件产业的发展带来了不利影响。为提高软件安全性,除采用关键安全技术外,还应加强安全开发流程的考虑。其中sdl在软件安全开发流程中应用率较高,它由微软提出,贯穿到软件开发的整个生命周期之中,实施过程中即便只对其中某个环节进行安全开发,也能使软件的安全性能得到显著提高。1软件安全开发关键技术从大的方面来讲软件安全包括版权保护及防止漏洞出现两个方面的内容。其中在保护软件版权方面,多采用动态软件水印技术实现;而防止软件出现漏洞,可采用软件静态源代码分析技术实现。接下来进行探讨:1.1软件开发版权保护技术随着我国软件产业的迅猛发展,软件版权保护成为诸多软件开发企业关注的重要内容,因此采取了加壳、加密等技术以防止软件被盗版侵犯。然而事实表明,在时间允许的条件下一些不法分子仍旧可破解软件。为防止上述问题的出现,可采用软件版权保护技术,该技术的工作原理是将软件开发企业的一些信息隐藏到软件不容易被察觉的位置,可为软件产品的鉴定提供参考。该种技术的应用可有效避免盗版事件的发生。1.2软件开发漏洞检测技术软件开发过程中最容易出现漏洞,倘若未被及时检测出来,不仅会给不法分子提供了攻击软件的可能,还会对软件功能充分发挥,以及工作稳定性产生不良影响。因此,怎样采取针对性技术及时发现软件的漏洞,应引起每一个软件开发企业的重视。在软件开发过程中软件静态源代码分析技术可有效的分析出软件出现的漏洞。该种技术依据的原理为,在不运行软件的条件下,通过分析与检查源代码的接口发现程序编写过程中出现的漏洞。该种漏洞检测技术的优势为源码分析速度快而且可检测无穷状态系统。但如采用传统的静态源代码分析技术,工作量非常大,需要花费大量精力,因此,需要对其进行改进,为此可使用基于对类度量的静态分析工具对软件源码进行分析,以提高软件源码分析效率。另外,在实际的软件开发过程中,应根据软件开发实际需求,采取针对性漏洞检测技术,以及时发现软件漏洞。尤其应注重使用先进的检测技术,为提高开发软件的安全性奠定坚实的基础。2软件安全开发流程分析软件开发过程中除采用针对性技术外,还应确保开发流程中的安全性,不放过任何一个可能出现安全隐患的开发环节,引入sdl为开发出安全性较高的软件奠定坚实的基础。2.1sdl概述sdl(securitydevelopmentlifecycle),即安全开发周期,软件开发过程中实施完整的sdl需经过十多个阶段,依次经过安全知识普及至执行安全响应等环节。实践表明,sdl可使软件的安全性得以显著提高,降低软件安全事件的发生机率。另外,sdl还具有以下优势:不仅可应用在某个阶段,还可进行整体应用,相对来说具有较高的灵活性;能很好的适应一般的开发流程,具有较高的实用性;可在多个软件开发平台上应用,拥有的较为完善的支持工具,给软件开发工作带来较大便利。2.2sdl应用情况分析随着软件的普及,软件安全问题受到越来越多软件开发企业的关注。调查发现,sdl的实际应用与软件开发企业的实力有较大关系,尤其是规模大、实力雄厚的企业更容易在软件安全方面投入较大成本。3sdl的进一步完善研究表明,软件安全测试实施的时间越晚,后期进行软件修复需要投入的成本就越高。而sdl能很好的解决上述问题,不过分析当前sdl的应用情况来看,在经济性、适用对象等方面还需进一步改进。考虑到安全知识库有效性贯穿在整个生命周期之中,下面从安全知识库以及软件开发的一般流程入手,采取针对性措施以实现软件安全性的提高。3.1安全知识库软件安全开发流程中,安全知识库是核心内容,其包含的内容较为广泛,如安全工具、软件安全漏洞库、产品风险库等。其中产品风险库涉及项目实施初始阶段存在的需求风险,以及已评估的风险;安全工具主要是指在安全测试中应用的工具,如sniffer、app总之,软件开发过程中安全知识库占据着重要的位置,涉及到软件开发的每一个环节,因此,在软件安全开发过程中应引起足够的重视。