拿来即用,指纹识别保密系统完整解决方案
D CAPACITY(10)
READ(10)
REQUEST SENSE
TEST UNIT READY
WRITE(10)
读取 Flash 容量,扇区大小以及总扇区数
输入要读取的数据,从 Flash 读出
请求判断,用于发生错误时系统自我纠正
测试单元准备,电脑通过此命令保持 U 盘一直处于激活状态
提供 Flash 地址,向 Flash 写数据
SCSI命令集是 一套能够完成 对一般外接存 储系统设备 的存取、配置 、检查等任务 的完备指令 集。SCSI拥 有的这套指令 集有很多指 令,不同的 版本分别用 在光驱、硬盘、 软驱等设备的控制中,表 4-2 列出的 6 条指令已经可以完全实现 USB 存储设备的操作了,这一特性大大减小了设备设计的难度与复杂度。Bulk-Only 的 CBW 中的 CBWCB 字段就是对以上这些命令的描述。
4.5 基于 CBC-ESSIV 模式的磁盘加密机制
在过去的很多年里用户 数据的保护大多停留在文件级别的加密技术上,而磁 盘加密技术一直由于软硬件上的瓶 颈而止步不前。随着计算机理论以及硬件的飞速发展 ,现在的计算机使用者,不管是专业人 员还是普通用户,在选择自己的加密手段 时则更加倾向于磁盘加密。
一是因为磁盘加密可以 通过高速的硬件实现透明访问;二是可以在磁 盘加密的基础上再使用文件加密,从而达到双重加密的高强度加密效果。
在加密方式上,毋庸置疑 AES 一直被用在了磁盘加密上,不只是因为它的安全性能,更因为 AES 是一种很好的分析加密算法。但是在加密模式上一直存在一定的问题。普通的 ECB模式因为它的一一对应容易受到水印攻击(watermarking attack),而 CBC(Cipher Block Chain)式一直以来是众 多模式中使用最为广泛的加密模式,即便是在某些方面存 在一些不足。综合考虑各种因素,CBC 仍然具有多方面的优越性。
在一块可以扇区寻址的 Flash 或者硬盘上,通常一个扇区的大小为 512Byte,那么一个扇区 所需 要 的 AES 加 密 次 数 为 32 次 。 这 32 次 加 密 我 们 就 使 用 CBC 模 式 完 成 , 由ESSIV(Encrypted Salt-Sector IV)算法生成 IV(In itiation Vector)初始化向量。
经过其中 H (k ) 是由密钥生成的散列。由于 IV 的生成涉及到密码 k 的介入,所以 IV 的不可预测性很大程度增加了破解的难度。
4.6 FAT 文件系统
FAT 文件系统包括 FAT16 和 FAT32 两种,他们分别应用在不同大小的 U 盘中,有的 U盘两者都可以使用,但 是根据簇的大小以及寻址的位数,在不同容量的系统 中,他们会体现出不同的磁盘效率。
图 4-3FAT 文件 系统
如图 4-3 所示,FAT 主要有四部分组成:DBR (DOS Boot Record) 即操作系统引导记录区、FAT (File Allocation Table) 即文件分配表、 根目录、数据区。这四个部分随着 FAT 的位数的不同有略微的变化,但是磁盘的实现原理是一样的。
DBR 主要存储了跳转指 令、BPB 等一些分区信息,用于操作系统对 分区的识别以及进一步的操作。FAT 用于存储磁盘中大于一簇的文件的跨簇存储的信息,采用链表的方式实现了文件的连续和不连续的存储,同时 FAT 会存有相同的两份,以供其中一个出现错误时恢复用。根目录记录了 根目录下的文件、文件夹信息和他们所在的实际首地址、 长度等信息。最后便是所有文件数据存储的区块。
在 USB 的读写过程中,USB 控制器无需对文件系统有任何了解,在对文件的处理过程中所需要的操作全部由 PC 机上的操作系统完成,将需要读写的数据读出或写到 Flash 中。而USB 所要做的就是不断的响应 PC 的请求,这些请求就是 4.4 节所述的 SCSI 的读写命令,完全不需要管上层的文件 系统究竟在做什么工作。这一层与层之间 的独立的特性也为系统的实现以及对磁盘的加密提供了理论前提。
4.7 指纹特征提取与密钥生成
4.7.1 指纹特征提取
指纹模块完成指纹采集、指纹登记、指纹 1:N 和 1:1 比对等与指纹有关的操作。它由高速信号处理器 DSP 芯片 TMS320VC5416、指纹传感器(滑动式)、高性能指纹比对算法等软硬件组成。采用 SPI 总线接口和控制器通信。模块上的指纹传感器芯片为 AuthenTec 公司的EntréPad 2510 芯片,该芯片体积功耗都很小,对各种指纹适应能力非常强,并且从原理上讲只对人的真皮皮肤有反应,从根本上杜绝了人造指纹的问题。
下面是指纹模块硬件内部原理框图:
图 4-4指纹 模块 内部 硬件 框图
下面是指纹模块识别算法流程图:
图 4-5指 纹识 别算 法流 程图
4.7.2密钥生成
这部分 工作是由MicroBlaze完成的。MicroBlaze从指纹模块读取到某个 指纹特征数据后,通过 ANSI X9.17 算法产生密钥。ANSI X9.17 是最强的伪随机数发生器之一,有一些应用使用了这种方法,如金
指纹识别 保密系统 Spartan3E FPGA XC3S500E 相关文章:
- 基于DSP CCS 2.2实现指纹识别预处理系统(07-28)
- 基于FPS200传感器和DSP的指纹识别系统(01-12)
- 基于嵌入式Linux平台的指纹门禁系统(01-20)
- 基于DSP CCS2.2实现指纹识别预处理系统设计(06-10)
- 基于DSP CCS2.2实现指纹识别预处理系统设计方案(06-17)
- 基于DSP的指纹识别系统设计方案(07-03)