基于OpenSSL的嵌入式网络安全通信设计与实现
第16卷 第1期 2006年1月
计算机技术与发展
COMPUTERTECHNOLOGYANDDEVELOPMENT
l.16 No.1 VoJan.2006
基于OpenSSL的嵌入式网络安全通信设计与实现
章晓明,王则林,陆建德
(苏州大学计算机学院江苏省计算机信息处理技术重点实验室,江苏苏州215006)
摘 要:嵌入式网络安全设备的通信,如对设备的状态查询、配置等必须是安全的。文中探讨了嵌入式网络安全设备的远程安全通信设计。首先分析了OpenSSL的工作原理、数字证书在OpenSSL中的重要作用;然后给出了在嵌入式网络安全设备中进行远程安全通信的总体设计方案,并结合笔者一个实际的嵌入式网络安全设备的开发项目,详细介绍了其设计与实现过程。通过这种方法可以达到相对较高的安全通信要求。关键词:OpenSSL;数字证书;嵌入式系统;安全
中图分类号:TP393 08 文献标识码:A 文章编号:1005-3751(2006)01-0217-04
DesignandImplementationofEmbeddedNetwork
SecureCommunicationBasedonOpenSSL
ZHANGXiao-ming,WANGZe-lin,LUJian-de
(JiangsuProvinceComputerITKeyLab.,SchoolofComputerSci.&Tech.,SuzhouUniv.,Suzhou215006,China)
Abstract:Thecommunicationofembeddednetworksecuredevices,suchasstatusqueryandconfigurationofdevicesshouldbesecure.Dis-cussesthedesignofremotesecurecommunicationonembeddednetworkdevices.AfteranalyzingtheprinciplesofOpenSSLandthekeyroleofdigitalcertificationinOpenSSL,http://doc.guandang.netbinedwiththeauthors projectdevelopedonanactualembeddednetworksecuredevice,hasillustratedtheoveralldesignandimple-mentationprocedureindetail.Therequirementofcommunicationwithhighsecuritycanbemetinsuchaway.Keywords:OpenSSL;digitalcertificate;embeddedsystem;security
0 引 言
随着计算机应用的不断深入,许多嵌入式网络设备诸如网络远程监控设备、防火墙、安全网关等正被一批批开
发出来。与桌面PC系统相比,嵌入式网络设备具有面向特定应用、资源有限等特性。不同的应用环境及目标决定着不同的系统平台,目前许多嵌入式设备都采用了Linux系统,针对特定的应用进行具体系统的设计;在资源使用方面,嵌入式网络设备一般体积小、设计精练、资源有限,往往要借助其它手段辅助控制。嵌入式网络设备的软、硬件必须合理选择和设计,辅助控制常常通过与嵌入式网络设备进行数据通信来实现。
一般,对嵌入式网络设备进行配置、控制等通信操作时,常常使用下述两种方法:
(1)通过串口。通过TELNET协议,使用终端登录到嵌入式网络设备。这种方法必须近距离配置,操作者必须
熟悉嵌入式系统的配置、控制命令,如设置嵌入式网络设备的IP地址等初始化工作;
(2)通过网络。一般在嵌入式网络设备中集成设计一个内嵌的HTTPServer部件,给网络上近程、远程用户提供网页操作接口,用户可以使用浏览器登录嵌入式网络设备进行操作。如在防火墙、安全路由器等设备的配置时,可以将各种配置用表格的形式设计成网页让客户选择。这种方法方便灵活,不受限于距离,使用户更容易操作。
上述第二种方法具有明显的优势,使用这种方法必须解决两个问题:一是由于嵌入式网络设备的功能单一且资源有限,若采用Apache之类的通用HTTP服务器软件不但臃肿而且浪费,因此需要自行设计紧凑精练的专用HTTP服务模块;二是普通的HTTP交互是以明文的形式进行的,在网络上,尤其是远程操作时很容易被监听、截取或伪造,而有些通信,如对防火墙的配置,绝对不容许此种情况发生,除了采用用户密码,还必须提高数据通信的安全性,对整个通信过程进行加密保护,实现机密性、数据一致性与身份鉴别。
文中将结合笔者从事的一个实际的嵌入式防火墙设备开发项目,探讨嵌入式网络安全设备的远程安全通信设,收稿日期:2005-04-14
基金项目:江苏省自然科学基金资助项目(BK2004039)
作者简介:章晓明(1981 ),男,江苏常州人,硕士研究生,研究方向为计算机网络与网络安全、嵌入式Linux系统分析;陆建德,教授,研究方向为计算机网络与网络安全。
218 计算机技术与发展 第16卷
安全设备中进行远程安全通信的总体设计方案,并详细介绍其设计与实现过程。
立即进行SSL握手,双方建立SSL连接,此后双方的数据,包括登录信息,都在SSL通道上进行传输。登录成功后用户可以进行配置。服务器端根据客户端送出的HTTP方
法判断要进行的操作:如果是GET请求+相关配置网页,就返回请求的配置网页;如果是POST请求+提交的用户配置数据,则分析该数据,生成相应的配置脚本(防火墙配置使用iptables命令实现)并执行该脚本,修改防火墙配置。
1 SSL与OpenSSL
安全套接层协议(SSL)由Netscape公司设计,其主要目的是提供安全可靠的网络传输,防止通信内容被偷听、篡改或伪造。SSL在网络模型中的位置处于应用层与传输层之间,在TCP上运行,能提供保密性、数据一致性和身份鉴别。
SSL通过在客户端、服务器端之间首先创建一个TCP连接,进行SSL握手,包括认证和会话密钥的协商,然后在此连接上面建立一条SSL通道,让所有的应用数据都通过该通道来发送接收,这些数据都使用握手阶段协商的会话密钥进行加密[1]。
X.509数字证书在SSL握手交互与协商过程中起着重要作用,它在网络通信中标志服务方实体的身份。证书中含有服务方的公开密钥。SSL连接分SSL握手和数据传输两个阶段。握手阶段通过用服务方数字证书中含有的公钥进行不对称加密来协商数据传输阶段的对称加密算法和会话密钥,还可以选择是否需要客户端提供客户方数字证书进行客户端的身份认证。握手完成后,所有应用层的数据就可以用会话密钥加密传输。
SSL握手交互和加密算法的过程比较复杂,现在SSL已有各种开发套件,OpenSSL[2]是其中较为流行的版本。OpenSSL采用C语言编写,实现了SSLv2/v3和TLSv1[3]两种协议,并提供了一个通用加密库,包含有各种加密算法、摘要算法与密钥交换算法等,它封装了具体实现过程,程序员使用其提供的API能实现SSL通信。除此之外,OpenSSL提供了CA等命令,用于生成各种X.509证书、密钥文件等,这些都为程序的编写、调试提供了方便。
图1 嵌入式防火墙设备安全远程配置过程流程图
考虑到在SSL握手过程中,不但客户端要验证服务器端的身份,同时由于只能让某些用户(如网管员)有访问的
权限,还需要进行客户端的身份认证,只有通过认证的客户才能登录并配置防火墙。根据SSL协议,握手过程的流程设计如下[5]:
(1)客户端发送的ClientHello,其中包含了客户端推荐的加密参数、准备使用的加密算法和随机数。服务器返回的消息中,包含了选择的算法、服务器证书,以及要求客户端提供认证的CertificateRequest信息。
(2)客户端提交证书,选择密钥。
(3)为了防止中间人攻击,双方均向对方发送一条包含对整个连接过程的校验信息的消息,并各自检验对方发来的消息。
如果一切正确,那么握手完成,可以进行数据传输阶段,否则SSL交互终止并释放所有资源。数据传输完成后,客户端首先关闭连接。客户端先发送一条close_ntifyalter消息以通知服务器端连接即将被关闭,随后立即发送TCPFIN消息。服务器端收到该消息后也返回TCPFIN,2 …… 此处隐藏:7081字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [法律文档]苏教版七年级语文下册第五单元教学设计
- [法律文档]向市委巡视组进点汇报材料
- [法律文档]绵阳市2018年高三物理上学期第二次月考
- [法律文档]浅析如何解决当代中国“新三座大山”的
- [法律文档]延安北过境线大桥工程防洪评价报告 -
- [法律文档]激活生成元素让数学课堂充满生机
- [法律文档]2014年春学期九年级5月教学质量检测语
- [法律文档]放射科标准及各项计1
- [法律文档]2012年广州化学中考试题和答案(原版)
- [法律文档]地球物理勘查规范
- [法律文档]《12系列建筑标准设计图集》目录
- [法律文档]2018年宁波市专技人员继续教育公需课-
- [法律文档]工会委员会工作职责
- [法律文档]2014新版外研社九年级英语上册课文(完
- [法律文档]《阅微草堂笔记》部分篇目赏析
- [法律文档]尔雅军事理论2018课后答案(南开版)
- [法律文档]储竣-13827 黑娃山沟大开挖穿越说明书
- [法律文档]《产品设计》教学大纲及课程简介
- [法律文档]电动吊篮专项施工方案 - 图文
- [法律文档]实木地板和复合地板的比较
- 探析如何提高电力系统中PLC的可靠性
- 用Excel函数快速实现体能测试成绩统计
- 教师招聘考试重点分析:班主任工作常识
- 高三历史选修一《历史上重大改革回眸》
- 2013年中山市部分职位(工种)人力资源视
- 2015年中国水溶性蛋白市场年度调研报告
- 原地踏步走与立定教学设计
- 何家弘法律英语课件_第十二课
- 海信冰箱经销商大会——齐俊强副总经理
- 犯罪心理学讲座
- 初中英语作文病句和错句修改范例
- 虚拟化群集部署计划及操作流程
- 焊接板式塔顶冷凝器设计
- 浅析语文教学中
- 结构力学——6位移法
- 天正建筑CAD制图技巧
- 中华人民共和国财政部令第57号——注册
- 赢在企业文化展厅设计的起跑线上
- 2013版物理一轮精品复习学案:实验6
- 直隶总督署简介




