0引言
嵌入式系统早在20世纪70年代初被提出,并逐渐在计算机控制领域得到广泛的认可与应用。从广义上说,具备微处理器的自动化控制系统均可以称为“嵌入式系统”,其主要特征表现为以计算机为核心,通过软件与硬件的联合实现对目标功能进行控制,其具有可靠性高、体积小、成本与功耗低等优点。在网络普及的当下,运用嵌入式系统进行网络安全的控制成为计算机技术发展的重要方向之一。嵌入式系统在网络安全方面的应用主要依托网络传输协议,其通过一定的嵌入式结构提升网络通讯的灵活性与安全性。文中针对嵌入式系统的特点,以网络服务的安全访问要求为研究对象,通过基于密码学和基于网络分层结构的安全机制,实现网络单节点上的嵌入式移植,并设计出一种基于32位处理器和VxWorks嵌入式RTOS环境下的系统构架,能够实现多种平台的网络安全通讯功能。该设计方案对于缩减研发成本及研发周期有着重要的意义。
1总体设计方案
1.1嵌入式系统结构
嵌入式系统的核心为硬件与软件的灵活性结合,其中硬件为系统结构的基础,软件为系统功能的支撑。良好的嵌入式系统具有柔性高、兼容性好等优点,并能够根据用户要求实现特定功能,合理的软件与硬件平台是嵌入式系统设计的前提。一般地,嵌入式系统可分为四部分:嵌入式处理器、嵌入式外围设备、嵌入式操作系统以及嵌入式应用软件等,各个组成部分之间相辅相成,根据主次关系完成自身功能。嵌入式处理器是整个系统的核心部件,与常规的处理器相比,其更具有特定性的功能,因而成本更低。在网络安全控制中,文中采用的嵌入式处理器为ARM9系列微处理器,属于32位处理器,该处理器包含ARM920T,ARM922T和ARM940T三种类型内核,对于高频数据的处理具有一定的优势。嵌入式系统中的硬件设计需要综合考虑性价比与兼容性,通过板卡的集成性,可大大减小系统的体积,并增强控制能力及稳定性,因此,文中采用VxWorks嵌入式RTOS环境下的系统构架。
1.2网络安全分析
网络安全主要表现在链路层、网络层、传输层以及应用层等,具体表现为:(1)链路层在网络安全中的作用为保证数据的机密性与完整性,在实际中,其通过局域网的虚拟化、通讯的链路加密等方式提升信号的可靠性。链路层的加密相对简单,数据的处理速度较快,对于硬件的加密有着良好的效果。(2)网络层在网络安全中的作用主要为防止信息的非法修改、冒充、窃取等,可根据用户的要求,调整访问的权限级别,比如防火墙、网络地址限制等。网络层能够有效的保护用户信息的安全性。(3)UDP协议在网络安全中的作用为防止重播攻击,由于其在进行数据连接时具有随时性,可通过管理员验证的方式避免一些容易的重播攻击,对于其他层的数据安全性有着重要的作用。(4)应用层在网络安全中的作用为提供安全服务,并能够补充一些下层协议之间的漏洞,提升多样性系统的安全,比如,身份验证、数字签名等,均通过应用层的作用进行。应用层的特点表现在根据网络协议的情况控制网络连接。根据嵌入式系统的特点可知,一些良好的网络安全加密算法可在系统中得到应用,比如用于数据完整性验证的摘要算法。目前,对于摘要算法,在各个领域中应用较多的有:MD2、MD4、MD5、SHA、RIPEMD和TIGER等。其中,MD5算法是专家学者对MD2和MD4的不断改进后得到的。根据所查文献与资料可知,在相同的硬件与软件平台中,基于MD5的摘要算法优势更为明显,PC控制下能够在非常少的CPU占用率下得到满意的运算效率,是近年来一个重要的应用方向。因此,文中的嵌入式系统采用基于MD5的摘要算法,对于数据完整性与安全性验证具有良好的效果。
1.3系统构架设计
为了进一步研究嵌入式系统在网络安全中的应用,文中针对系统的特点以及网络分层的结构对系统的整体构架进行了设计。对于嵌入式系统中的网络安全密码系统研究,文中主要根据SSL网络安全协议的内容以及安全模块的应用,对系统进行调试与分析,通过功能移植,将网络安全模块应用于嵌入式系统。在嵌入式系统中,网络安全模块的硬件与软件平台由局域网的环境进行控制。为了便于系统的设计与测试,文中将VxWorks移植到PMI-800为核心的PC104模块中,并采用编程的方法得到BSP包,获得了在AR9系列处理器上良好的兼容性。对于SSL协议的移植,文中通过OpenSSL模块嵌入的方式进行,在实际控制系统中易于检验。在通讯的安全性与可靠性方面,嵌入式系统应用了多种方式的协议,比如密码互换协议、完整性认证协议、数据通信加密协议等,其中,用户身份验证加密运用了非对称椭圆曲线加密算法,信息的验证采用了对成算法,数据的完整性测试采用了MD5摘要算法。通过不同协议层的应用,能够实现多目标下的网络安全性能。
2网络安全模块设计
2.1网络安全模块组成
在嵌入式系统的网络安全模块中,SSL协议作为最重要的协议之一,其主要功能为通讯数据的分割、加密、压缩与解压、数据封装等。网络完全模块的组成基于SSL协议,其组成与结构如图3所示。首先,网络安全模块需要用户进行配置、维护与查询,数据的输出模块需要进行AH处理与ESP处理,并通过一定的算法进行加密。在完成算法认证与算法加密的处理后,秘钥参数中将保留数据的运算过程。SSL协议的运算记录通过压缩操作后进行数据认证,包括加密性与完整性认证,其中,SSL协议的运算支持诸多加密算法,比如流加密算法、块加密算法、认证算法等,具有良好的通用性。数据发送与接收的安全性是网络安全模块重点保证的内容。载数据交换时,首先需要通过HandshakeProtocol对相应的数据处理方法进行确定,当出现错误时,能够及时停止,避免重要数据流失。数据的传输需要发送端与接收端相互的认证,比如对协议版本、加密算法等的认证。
2.2网络安全模块的加密方式
在嵌入式系统中,文中采用OpenSSL的安全算法模块来实现相应的加密方案。在OpensslEVP中,包含了众多的密码加密函数,比如对称算法、摘要算法、签名算法、验签算法等。EVP函数中的算法具有数据封装功能,能够保证数据的可靠性与安全性。在EVP函数所提供的算法库中,具有一定的通用性,比如,ENC_CIPHER_CTX结构可通过CREATE函数进行建立并将其完成初始化操作,然后通过INIT函数将具体的算法进行挂载和赋予,从而ENC_CIPHER结构完成算法的初始化操作。在信号通讯过程中,不连续数据块的加密一般通过以下方式:首先,采用UPDATE函数对各个需要加密的数据块进行定义和调用;然后,基于FINAL函数将所有的数据块进行连续性处理,形成一系列的数据密文;最后调用相应的接口函数进行数据通讯。在网络安全模块中,数据的加密方式作为最重要的设计内容之一,其对于整个嵌入式系统的工作效率有着重要的影响。
3结论
嵌入式系统在网络安全方面的应用能够提升网络安全模块的灵活性与安全性。文中通过对网络安全的分析,确定了系统的总体框架,其中,网络安全模块通过功能移植,将网络安全模块应用于嵌入式系统;通过数据的分割、加密、压缩与解压、数据法律期刊封装等处理,实现了不同协议层下,多目标下的网络安全性控制,对于提升网络安全系统的模块功能和降低设计成本均有着重要的意义。
作者:衣淑丽 单位:青岛黄海学院