论文部分内容阅读
随着计算机技术和微电子技术的发展,嵌入式系统在工业控制、信息家电、通信设备、智能仪器等领域得到了越来越广泛的应用。在这些领域,网络化、信息化的要求也随着Internet的迅猛发展而逐渐突出,越来越多的嵌入式设备有接入网络实现远程控制的需求,其基本的方法是在嵌入式设备上实现HTTP服务器,通过万维网在客户端用浏览器对设备进行访问。同时,这种方法不可避免地带来互联网上的安全问题,而HTTPS(安全超文本传输协议)是由Netscape公司提出的以SSL(安全套接层)为基础的安全HTTP方法,因此构建嵌入式HTTPS服务器,将有效地为嵌入式设备的网络化提供安全保障。本文对HTTP传输协议和SSL安全协议以及基于ARM的嵌入式技术等关键技术进行了深入的研究。首先分析了HTTPS这个安全传输设施的实现方法,即在标准的TCP/IP参考模型中在HTTP标准协议层和下面的TCP/IP传输协议层之间额外附加一层SSL安全层,紧接着对基于请求/响应模式的HTTP协议的信息交换的基本过程和SSL握手协议的安全加密的详细过程进行了分析与研究。然后,设计了系统的整体架构,硬件采用了应用广泛的32位ARM920T处理器S3C2410,操作系统采用了开源的嵌入式Linux操作系统,应用层的实现以Linux系统调用和OpenSSL开源库为基础。其次,建立了HTTPS服务器的支撑环境,在宿主机上通过Vmware虚拟机技术建立了Linux操作系统并通过一系列的服务配置建立起交叉编译环境;在硬件平台上烧写了系统引导程序bootloader,并以此为基础进行了嵌入式Linux和根文件系统的配置、编译和移植。最后,在深入研究了相关理论后,设计了服务器的基本结构和功能模块,在利用Linux的系统调用和OpenSSL API的基础上,使用C语言实现了基于ARM-Linux的嵌入式HTTPS服务器。实验结果表明,该服务器实现了与客户端浏览器的HTTPS的交互过程,能正确解析浏览器发出的HTTP请求,并根据请求资源和请求方法的不同做出不同的响应,返回给浏览器静态资源或者CGI程序的处理结果。