引 言
Internet已经成为人们获取信息、相互交流的重要渠道。将嵌入式系统和Internet相结合,使嵌入式设备接入Internet是当今嵌入式系统 发展的一个重要趋势,因此就有了嵌入式Internet的说法。利用该技术可以实现基于Internet的远程数据采集、远程控制、自动报警等功能,大大 扩展嵌入式设备的应用范围;同时充分利用网络资源,实现更广泛的信息共享和更多信息服务。
嵌入式Internet解决了终端设备的网络化问题,然而Internet提供的网络环境并不保障接入系统的安全性。可以这样说,嵌入式Internet 的安全问题直接关系到嵌入式Internet的发展及其应用前景;因此,在开发和使用嵌入式Internet系统的同时,必须把嵌入式Internet通 信的安全问题放到重要的地位考虑。在这种背景下,本文选择了嵌入式Internet通信安全作为主要的研究方向,基于0SI安全体系架构,设计并实现嵌入 式Interet安全通信机制EISCM(Embedded Internet Security Commumcation Mechanism)。主要通过密码协议和嵌入式数据库来实现数据保密性服务、数据完整性服务和认证服务。
1 嵌入式Intemet的安全需求分析
根据OSI安全体系结构以及对嵌入式Internet特点分析,一个有效的嵌入式安全通信机制必须提供以下安全服务:数据保密性、数据完整性、认证服务、 访问控制服务和抗抵赖服务。实现这些安全服务需求,可以采用的安全机制为:加密机制、数字签名机制、访问控制机制、数据完整性机制、鉴别交换机制、业务流 填充机制、路由控制机制和公证机制。根据嵌入式Internet系统的安全特点,这里提出的安全机制的制定主要从下面两个方面来考虑。
(1)实现安全机制的网络层次
TCP/IP参考模型是一个四层网络协议系统,各种安全机制并不都可应用在任意一层。针对嵌入式Internet的安全服务,也可以参考四层协议系统进行规划,应该在合适的层次来实现。
(2)基于密码学理论的安全机制
基于密码学理论,嵌入式Internet技术可以使用以下几种算法实现数据保密性和完整性服务:
◆使用对称密钥体制或非对称密钥体制,实现数据保密性服务;
◆使用单向散列函数等方法实现数据完整性服务。在嵌入式Internet中,可以选用以上合适的密码协议和算法,实现预期的安全服务要求。
2 网络接入的安全通信机制
2.1 实现层次
首先确定安全协议的实现层次,对各种机制实现方法作深入分析,比较它们的不同实现方法和不同安全特点,设计一个适合嵌入式Intemet设备进行网络通信的安全模型。
链路层主要采用划分VLAN、链路加密通信等手段保证通过网络链路传送数据的机密性、数据完整性等。基于链路层加密与应用程序无关,实现简单,可用硬件设 备进行加密,提供较高的处理速度。缺点是两个加密参与的实体必须在物理形式上连接在一起,即不能实现对不同进程进行不同的加密处理。网络层安全性的主要优 点是安全服务的提供与应用层的无关性,而且由于多种传输协议和应用程序可以共享由网络层提供的密钥管理框架,使得密钥协商的数量也大大削减。网络层安全业 务最有用的特性是能够构建VPN。网络层加密的主要缺点是:对属于不同进程和相应条例的数据包一般不作区别。对所有发往同一地址的包,它将按照同样的加密 密钥和访问控制策略来处理。同网络层安全机制相比,传输层安全机制的主要优点是它提供对进程的安全服务。传输层安全机制的主要缺点是要对传输层进程间通信 接口和应用程序两端都进行修改;另外,由于SSL_和TLS都是建立在TCP协议上的,因此对于UDP的安全通信就无法保证。在应用层实施加密是最具强制 性的选择。它也是最具灵活性,因为保护的范围和力度可以裁剪到满足某一应用的特定需要。这一点正符合嵌入式Internet设备灵活多变的应用的需求。应 用层的安全可以弥补下层协议漏洞和不足,可以采用多种多样的安全措施来保证系统的安全性。除了采用一些针对应用层协议的安全方案外,其他例如身份认证、数 据加密、数字签名等都可以在应用层进行。应用层提供安全服务的优点在于不用考虑网络采用的具体协议和链路情况,同时由于应用程序以用户为背景执行,容易获 得用户访问凭据,而且对用户想保护的数据具有完整的访问权并有着充分的理解,这些特性使得在应用层引入安全业务具有特定的优势。在应用程序中实施安全机 制,程序要和一个特殊的系统集成到一起,应用程序通过改进调用该特殊系统实现安全机制。
基于以上比较,为了在嵌入式Internet接入设备和访问者之间建立起有效的,具有更强大的适应性和安全性的安全通信机制,选择应用层作为实现层次,以保证设备访问者与嵌入式设备间通信的信息安全。
2.2密码协议
设计基于密码学安全机制的通信协议,目的是通过使用基于密码学的机制来实现数据保密性和数据完整性服务,抵抗攻击。目前的密钥体制从原理上可分为两类,即 对称密钥体制和非对称密钥体制[2]。在嵌入式Internet的应用中,使用哪一种密钥体制应该根据嵌入式Internet的具体特点决定:
①由于嵌入式Internet设备通常是一台具有专有功能的嵌入式设备,网络接人方式差别较大,网络结构也非常灵活,因此一个更具通用性和灵活性的安全结构,应该避免采用带有可信第三方服务器的安全框架。
②嵌入式设备的数据处理能力有限,所以加密算法等相关安全机制的选择应该以减少资源利用和处理器的负担为依据,这样才更能适应嵌入式设备的应用。
根据上述分析可以看出,对称加密算法更符合嵌入式Interne安全通信协议对加密机制和应用灵活性的要求。
密码协议的目的是完成EID(Embedded Internet Device,具有Internet接入功能的设备)和CC(Control Computer,对。EID进行合法控制、通信的主机)之间的通信过程。为了描述密码协议的实现,这里首先描述一个基本会话协议的通信过程。