STC80C52 U盘加密论文 U盘加密系统论文:基于STC80C52 U盘加密系统
STC80C52 U盘加密论文 U盘加密系统论文:基于STC80C52 U
盘加密系统
摘要:由于信息与通信技术的飞速发展,信息安全与通信加解密在个人隐私显得尤为突出。数据加密技术无疑是保护信息安全最有效的一种方法。传统的文件加密方式是基于pc平台的,不能满足移动场合的应用需求且容易失密。本系统是基于嵌入式设计的可便携使用的u盘加密系统,并在完成加密后可通过pc机解密,再读取数据。本设计提高了系统的安全性,提供了便携使用的可能.
关键词: u盘加密 ch375 信息安全 加密系统
一、前言
usb接口技术已广泛应用于pc领域,是一些pc大厂商,如microsoft、intel 等为了解决日益增加的pc 外设与有限的主板插槽和端口之间的矛盾而制定的一种串行通信的
标准
excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载
。自1995年在comdex上亮相以来至今已广泛地为各pc厂家所支持。usb接口技术的广泛应用为我们提供了不少的便利,但也正因其使用的便利,也为我们的数据带来了不少不安全的因素。为此本文将介绍一种可携带的基于stc80c52单片机的u盘加密系统。
二、usb host控制芯片ch375 概述
ch375 是一款usb总线的通用接口芯片,支持usb host
主机方式和usb device/slave设备方式。ch375具有8位数据总线和读、写、片选控制线以及中断输出,可以方便地挂接到单片机/dsp/mcu/mpu等控制器的系统总线上。ch375 还内置了处理海量存储设备的专用通信协议的固件,外部单片机可以直接以扇区为基本单位读写常用的usb 存储设备(包括usb 硬盘/usb 闪存盘/u盘)。ch375的接口框图如图1所示:
三、系统结构
嵌入式文件加解密系统主要分为四个部分:运算处理模块(stc89c52模块)、按键与状态显示模块、usb通信模块(ch375模块)、电源模块。系统结构框图如图2所示。
运算处理模块由stc89c52单片机与8kb的ram6264及其外围电路组成,负责加解密计算与整个系统的控制。按键产生加解密操作的控制信号,led显示当前系统状态。usb通信模块对usb存储设备进行数据传输与文件操作。电源模块为本系统供电并且为usb总线提供5v电源电压。
四、基于ch375的usb host在本系统的硬件设计实现
4.1 ch375与stc89c52单片机的接口部分
ch375与stc89c52单片机的接口如图3所示。ch375 的txd引脚通过1kω左右的下拉电阻接地或者直接接地,使ch375 工作于并口方式。ch375的cs#连接到单片机的a12
引脚,端口地址范围为0000h,7fffh,为了避免冲突,外部ram地址在8000h 以上。
电容c3用于ch375 内部电源节点退耦,c3是容量为0.01μf 的独石或高频瓷片电容。电容c4和c5用于外部电源退耦,c4是容量为0.1μf的独石或高频瓷片电容。晶体x1、电容c1和c2组成ch375的时钟振荡电路。usb-host主机方式要求时钟频率比较准确,x1的频率为12mhz?0.4‰,c1和c2是容量约为15pf的独石或高频瓷片电容。
如果电源上电过程较慢并且电源断电后放电时间较长,将导致ch375不能可靠复位。所以在rsti引脚与vcc 之间跨接一个容量为0.47μf 的电容c11,并且可以减少干扰。
在设计印刷线路板pcb 时,需要注意:退耦电容c3 和c4尽量靠近ch375 的相连引脚;使ud+和ud-信号线贴近平行布线,尽量在两侧提供地线或者覆铜,减少来自外界的信号干扰;尽量缩短xi和xo引脚相关信号线的长度,减少高频时钟对外界的干扰,并应该在相关元器件周边环绕地线或者覆铜。
4.2 stc89c52单片机扩展部分
stc89c52单片机扩展部分电路图如图4所示。89c52 单片机用74ls373锁存a0,a7地址。74ls138用于简单的地址译码,产生所需的片选信号。
4.3 供电电路部分
供电部分用于对usb总线供电。设计时除了要考虑自身功耗,更重要的是要保证对总线提供直流5v/500ma的供电。本设计所用的芯片都工作在直流5v下,由于本系统还没有产品化,因此系统目前还是采用usb数据线从个人pc机上取电,本系统下一步将对系统电源进行设计。
五、系统软件设计
5(1单片机对ch375的操作步骤如下:
(1)在a0=1时向命令端口写入命令代码;
(2)如果该命令具有输入数据,则在a0=0 时依次写入输入数据,每次一个字节;
(3)如果该命令具有输出数据,则在a0=0 时依次读取输出数据,每次一个字节;
(4)命令完成,可以暂停或者转到(1)继续执行下一个命令。ch375 芯片专门用于处理usb 通信,在接收到数据后或者发送完数据后,ch375以中断方式通知单片机进行处理。
5(2单片机通过ch375芯片接收数据的处理步骤如下:
(1)当ch375接收到usb主机发来的数据时,首先锁定当前usb 缓冲区,防止被后续数据覆盖,然后将int#引脚设置为低电平,向单片机请求中断。
(2)单片机进入中断服务程序时,首先执行get_status
命令获取中断状态。
(3)ch375在get_status 命令完成后,将int#引脚恢复为高电平,取消中断请求。
(4)由于通过上述get_status 命令获取的中断状态是“上传接收到的数据。
(5)ch375在rd_usb_data 命令完成后释放当前缓冲区,从而可以继续usb通信。
(6)单片机退出中断服务程序。
5(3单片机通过ch375芯片发送数据的处理步骤如下:
(1)单片机执行wr_usb_data 命令向ch375写入要发送的数据。
(2)ch375被动地等待usb 主机在需要时取走数据。
(3)usb主机取走数据后,ch375首先锁定当前usb缓冲区,防止重复发送数据,然后将int#引脚设置为低电平,向单片机请求中断。
(4)单片机进入中断服务程序时,首先执行get_status 命令获取中断状态。
(5)ch375在get_status 命令完成后,将int#引脚恢复为高电平,取消中断请求。
(6)由于通过上述get_status 命令获取的中断状态是“上传成功”,所以单片机执行wr_usb_data 命令向ch375
写入另一组要发送的数据。如果没有后续数据需要发送,单片机就不必执行wr_usb_data 命令。
(7)单片机执行unlock_usb 命令。
(8)ch375在unlock_usb 命令完成后释放当前缓冲区,从而可以继续usb 通信。
(9)单片机退出中断服务程序。
(10)如果单片机已经写入了另一组要发送的数据,则转到(2),否则结束。
5(4 加密方法设计
当usb存储设备插入系统后,用户为存储设备设定好密码后,确认后,系统将为存储设备进行格式化,并为用户设定好的密码写入到格式化后的文件中,当再次在pc机上使用时,pc机
检测
工程第三方检测合同工程防雷检测合同植筋拉拔检测方案传感器技术课后答案检测机构通用要求培训
到设备后,就会提示用户先输入设备密码。
六、结语
当今世界是一个信息的世界,因此信息安全也随之被人们关注。此系统的设计与实现,仅为信息安全提供一个可供参考方法,对嵌入式加密也是我个人的爱好,因此我会在此系统的基础上再继续学习硬件加密技术。
七、参考文献
[1]ch375芯片手册
[2]《usb应用开发技术大全》作者: 薛园园 编著 出
版社: 人民邮电出版社
[3]《windows驱动开发技术详解》 作者:张帆 等编著 出版社: 电子工业出版社
[4]《windows设备驱动程序wdf开发》 作者:武安河 编著 出版社: 电子工业出版社