摘要
第1章 绪论
1.1 研究背景
1.2 研究意义
1.3 论文研究内容
1.4 论文的组织结构
第2章 基础知识介绍
2.1 USB的基本特性
2.1.1 USB设备简介
2.1.2 USB连接拓扑结构
2.1.3 USB的编码
2.1.4 USB通信流程
2.2 USB通信协议
2.2.1 USB包结构
2.2.2 USB数据传输类型
2.2.3 USB描述符
2.2.4 USB设备请求
2.2.5 USB设备枚举过程
2.3 驱动程序设计基础
2.3.1 windows驱动程序的发展
2.3.2 操作系统分层
2.3.3 WDM式驱动的基本结构
2.4 AES加密算法描述
2.4.1 S盒代换算法
2.4.2 行移位算法和列混合算法
2.4.3 密钥扩展算法
2.4.4 加密和解密算法
2.5 本章小结
第3章 USB固件程序设计
3.1 USB芯片及方案的选定
3.2 固件程序的开发环境
3.2.1 固件程序开发工具选择及环境搭建
3.3 固件程序的架构及相关例程
3.3.1 头文件定义
3.3.2 中断服务例程D12_Isr.c
3.3.3 主机命令请求的处理例程USB_Code.c
3.3.4 串口中断服务例程UART.c
3.3.5 主循环例程Main.c
第4章 USB设备驱动程序的设计
4.1 USB设备介绍
4.2 开发环境
4.2.1 开发工具的选择
4.2.2 环境的搭建
4.3 USB驱动程序相关例程
4.3.1 设备初始化例程DriverEntry
4.3.2 创建设备例程AddDevice
4.3.3 USB设备的插拔PnP处理例程
4.3.4 打开设备例程USBDevice_DispatchCreate
4.3.5 USB设备读写接收发送例程
4.4 驱动程序与应用程序通信
4.4.1 打开设备
4.4.2 读写设备
4.4.3 关闭设备
4.4.4 应用程序界面及使用方法
第5章 加密系统设计
5.1 开发环境
5.2 系统结构设计
5.3 分支模块设计
5.3.1 串口模块设计
5.3.2 串并转换模块设计
5.3.3 控制模块设计
5.3.4 密钥扩展模块设计
5.3.5 加密模块设计
第6章 系统测试
6.1 固件程序和驱动程序的测试
6.2 USB接口加密系统测试
6.3 本章小结
结论
参考文献
致谢
攻读硕士学位期间参加的科研项目
声明