论文部分内容阅读
随着微硬盘在科技、商业以及军事等特殊领域的广泛应用,信息安全性也越来越重要。指纹加密微硬盘能很好的解决这一问题,以指纹信息作为身份识别标志,一人一密,不存在密码的安全问题,即使被盗,也不会出现泄密的问题。本文以我校与贵州南方汇通世华微硬盘有限公司的合作项目为背景,对指纹识别微硬盘中,微硬盘SOC与指纹识别模块间的接口进行了深入研究。本文首先介绍目前常见的硬盘加密方式,分析了这些方式普遍存在用户密码不便于管理且存在安全漏洞的问题,提出了以指纹识别方式加密微硬盘。并介绍了微硬盘的基本结构,以及指纹识别模块的基本原理,说明指纹识别微硬盘的一个关键在于两模块间接口的设计。这也是本文设计的主要方面。设计部分从模块间接口的总体方案入手。硬件上,采用UART作为模块间通信的接口。软件上,微硬盘SOC采用的是uC/OS-II操作系统,在此基础上,采用了分层设计的方法将接口软件分为三层:应用协议层,加密层,驱动层。接下来,本文对uC/OS-II操作系统中基本的运行单位任务进行了深入研究,包括任务的创建、删除、运行的机制以及任务间的通信方式等。由此,应用层在任务中实现,将微硬盘SOC设计为主模块,指纹识别模块为从模块,主从模块间以应答方式通信,主模块对从模块的操作为一系列元操作的组合,以此来实现操作的灵活性以及可扩展性。加密层采用的是TEA加密算法,该算法采用128-bit密钥,具有可靠的加密强度,且运算量有限。底层驱动是软件设计上最巧妙的地方,本设计中充分利用UART模块的中断源:发送寄存器空中断和接收数据有效中断,实现高效可靠的数据发送、接收。同时,采用了FIFO数据队列作为发送数据缓冲,并在接收数据时,采用了信号量方式完成中断服务子程序与接收接口任务间的通信。完成设计后,对整个接口进行了全面调试。本文最后对全文进行了总结,并对指纹加密微硬盘进行了展望。