轻量级IPsec在嵌入式系统中的设计与实现

轻量级IPsec在嵌入式系统中的设计与实现

论文摘要

随着网络技术在嵌入式系统中的成功应用,越来越多的嵌入式设备连接到Internet。因为嵌入式系统资源受限的特点,当前广泛应用的轻量级TCP/IP协议栈并没有考虑到网络安全因素,特别是在较低端的嵌入式设备中更是如此,这使得相应的嵌入式系统完全暴露在安全威胁之中。因此,在连接到Internet的嵌入式系统上实现IPsec安全协议势在必行。考虑到低端嵌入式系统主要应用于控制领域,一般不涉及大量信息的传递,且部分嵌入式平台对网络数据传递的速率要求并不十分明显,这些特点使得在嵌入式系统上应用IPsec实现网络安全保护成为可能。本论文重点讨论如何在较低端的嵌入式平台上实现轻量级的IPsec协议栈,将其嵌入到现有的嵌入式网络设备上,或者添加到新的嵌入式设备中,使之无缝衔接。本论文以lwIP协议栈为支撑,对标准的IPsec进行裁剪,在设计SPD和SAD数据库查找时采用静态添加方案,在内存管理上采用零拷贝技术和动态调整数据包大小的方案,在算法设计上采用就地处理的方案来提高代码的执行效率和内存空间的利用率。为了能够应用于现有设备,采用IPsec虚拟设备的方式将整个代码嵌入式到现有软件系统中。整个系统实现了IPsec的隧道模式下的ESP和AH数据包封装方法、并提供了SHA1和MD5认证算法和DES和3DES加密算法实现代码,整个IPsec代码大小在120KB以内。最后在以硬件平台为S3C2440(ARM9内核)为CPU和PIC16F877(16位单片机)为CPU,操作系统为ucOSIIV2.80的嵌入式平台上进行整体测试。在10M以太网接口、CPU主频设置为20M时使用AH封装的数据包(最大为1280byte)往返回时间在120ms以内,使用ESP封装的数据包(最大为1280byte)往返时间为1000ms以内,因此,基本满足特定的嵌入式设备对网络传输效率和数据处理能力的需求。基于以上讨论,本论文所设计的IPsec协议栈能够嵌入到现有的部分嵌入式系统中,并能够应用于新型嵌入式设备中,为其提供网络安全服务,在一定程度上解决了嵌入式系统中的网络安全问题。

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 绪论
  • 1.1 论文研究背景及意义
  • 1.2 国内外研究现状
  • 1.3 主要技术路线
  • 1.4 主要工作及论文组织
  • 1.4.1 论文研究的主要工作
  • 1.4.2 本论文组织结构
  • 1.5 本章小结
  • 第二章 嵌入式与 IPsec 关键技术概述
  • 2.1 嵌入式系统的发展状况及系统结构
  • 2.1.1 嵌入式技术及其特殊性
  • 2.1.2 嵌入式软硬件系统结构
  • 2.2 TCP/IP 协议栈与lwIP 实现框架
  • 2.2.1 TCP/IP 协议
  • 2.2.2 网络数据包封包与拆包过程
  • 2.2.3 IP、TCP、UDP 协议介绍及包头结构
  • 2.2.4 将标准TCP/IP 协议栈应用到嵌入式系统的缺陷
  • 2.2.5 轻量级TCP/IP 协议栈lwIP 及其实现
  • 2.2.6 LwIP 的过程模型
  • 2.2.7 操作系统模拟层
  • 2.3 IPsec 协议体系结构与关键技术
  • 2.3.1 几中常见的网络攻击
  • 2.3.2 IPsec 协议体系结构
  • 2.3.3 AH 协议
  • 2.3.4 ESP 协议
  • 2.3.5 DES 加密算法原理
  • 2.3.6 HASH 算法原理
  • 2.4 本章小结
  • 第三章 轻量级 IPsec 框架及软件系统设计
  • 3.1 轻量级IPsec 设计框架
  • 3.2 软件体系结构及实现方案
  • 3.3 存储管理设计
  • 3.4 AH 算法设计及实现
  • 3.4.1 AH 数据源认证处理流程
  • 3.4.2 AH 封装处理流程
  • 3.5 ESP 算法设计及实现
  • 3.5.1 ESP 解封处理流程
  • 3.5.2 ESP 封装处理流程
  • 3.6 本章小结
  • 第四章 系统编码实现
  • 4.1 IPsec 设备模块实现
  • input 函数实现'>4.1.1 IPsecdevinput 函数实现
  • output 函数实现'>4.1.2 IPsecdevoutput 函数实现
  • netlinkoutput 函数实现'>4.1.3 IPsecdevnetlinkoutput 函数实现
  • init 函数实现'>4.1.4 IPsecdevinit 函数实现
  • 4.2 SPD/SAD 模块实现
  • 4.2.1 SPD/SAD 数据结构设计
  • 4.2.2 SPD 查找函数实现
  • 4.2.3 SAD 查找函数实现
  • 4.3 AH 模块实现
  • ahcheck 函数实现'>4.3.1 IPsecahcheck 函数实现
  • ahencapsulate 函数实现'>4.3.2 IPsecahencapsulate 函数实现
  • 4.4 ESP 模块实现
  • espdecapsulate()实现'>4.4.1 输入流程解封处理函数IPsecespdecapsulate()实现
  • espencapsulate()实现'>4.4.2 输出流程封装处理函数IPsecespencapsulate()实现
  • 4.5 本章小结
  • 第五章 测试
  • 5.1 测试环境和测试方法
  • 5.2 模块结构测试及结果
  • 5.3 功能测试及结果
  • 5.3.1 功能测试方法
  • 5.3.2 安全性能测试
  • 5.4 应用测试
  • 5.4.1 代码量统计
  • 5.4.2 系统性能
  • 5.5 本章小结
  • 第六章 结论与展望
  • 致谢
  • 参考文献
  • 相关论文文献

    标签:;  

    轻量级IPsec在嵌入式系统中的设计与实现
    下载Doc文档

    猜你喜欢