微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 拿来即用,指纹识别保密系统完整解决方案

拿来即用,指纹识别保密系统完整解决方案

时间:06-04 来源:互联网 点击:

融安全应用和 PGP 等。


图 4-6ANSI X9.17 伪 随机 数发 生器

上图中 K 为密钥,按照 ANSI X9.17 这个密钥是保密的。指纹特征数据分为 128bit 每组,最后一组若不足 128bit 则以 0 补足,作为 DTi 输入。Vi 为第 i 轮的初始种子值。Ri 为第 i轮产生的伪随机数。作品中取最后一轮产生的伪随机数作为密钥。

5 硬件框图

系统硬件实现框图如图 5-1 系 统 硬 件 实 现 框 图 所 示 。 虚 线 框 内 均 在starter kit 开发板上实现,虚线框外在自行设计的电路板上实现。

图 5-1系统硬 件实 现框 图

5.1 微处理器模块(MicroBlaze 系统)

本系统中使用了 Xilinx 公司 IP Version 为 6.00a 的 Microblaze 软核作 为 CPU。其主要工作是过滤 PC 与 U 盘之间的数据传输,解析协议,提取需要加/解密部分交给 AES 模块,与指纹模块通信并生成密钥。系统部分 IP 核定义总结如表 5-1 所示:

表 5-1 MicroBlaze 系统部分 IP 核定义

5.2 AES 加密模块

AES 模块是用 VHDL 语言设计的加密电路,采用 128 位密钥,工作在 CBC 模式。用户通过指纹验证后,MicroBlaze 获得 128 位密钥,然后将其写入 AES 模块。AES 模块内部存储并扩展密钥,用其加密 MicroBlaze 发来的数据。图 5-2 是本模块引脚图。


图 5-2AES 模块引脚图

Microblaze 首先 将 密 钥发 给 AES 模 块 , AES 模 块完 成 密 钥扩 展 后发 出 信 号通 知Microblaze。 这 时 ,Microblaze 便可 以 将 数据 写 入 AES 模 块, 运 算完 成 后 读出 数 据 。当Microblaze 发到“de”端口的信号为“0”时,AES 模块工作在加密模式,为“1”时工作在解密模式。

Microblaze 是 32 位的处理器,密钥和数据需要分 4 次写入或读出。我们定义了一组握手协议来完成密钥及数据的交互。写入密钥时,首先 Microblaze 将最低的 1 个字写进 idata_enc, 再将 key_check_enc 设为“00”。AES 模块判断出 key_check_enc 等于 key_kw_enc,在下一个时钟周期将 idata_enc 的数据读入,并将 key_kw_enc 信号加 1。Microblaze 发现 key_check_enc 与 key_kw_enc 不等,证实上一次写入的数据已经被 AES 模块接收,于是将下一个字的密钥加到 idata_enc,再将key_check_enc 加 1。这样,新的一个字的密钥就被写入 AES 模块。当 key_kw_enc 为“11”时,加 1 后又重新回到“00”,4 个字的密钥就成功写入。写入密钥的波形图如下:

图 5-3

写入数据的过程相似,不再赘述。

密钥 写入 波形 图读出数据时,以 data_check_enc 信号为地址, odata_enc 输出运算结果中相应的字。 AES 算法需要进行 10 轮运算。本模块中每轮运算仅需 8 个时钟周期 ,80 个时钟周期即可 完 成 一 次 加 密 或 解 密 运 算 。 按 照 系 统 50MHz 的 时 钟 频 率 计 算 , 本 模 块 最 高 可 达 到10Mbyte/s 的加解密速度。当然,每次加密前需要将数据写入 AES 模块,加密后再将数据读出。这部分占用的时间取决于 Microblaze 处理器的指令周期,所以实际应用中的运算速度要比 10Mbyte/s 小。

5.3 USB 接口电路模块

USB 接口电路以两块美国 MAXIM 公司的 MAX3421E 芯片为核心。MAX3421E 是一款USB 控制器,既可作 USB 外设又可作 USB 主机。在这里,与 PC 相连的 MAX3421E 芯片使用 USB 外设工作模式 ,与 U 盘相连的 MAX3421E 芯片使用 USB 主机工作模式。

图 5-4

芯片具有通信速 率可高达USB 接 S 口电 路信 号图 26MHz 的 SPI 接口,在Micro Blaze系统中使用的是v1.00.d 版本的 opb_spi IP 核实现 SPI 接口,其允许的最小分频数为 2,而 opb bus 的时钟频率为 50MHz, 所以 此 处 spi bus 时 钟 频率 为 25MHz。两 块 芯片 均 工作 在 SPI 从机 模 式,MicroBlaze 系 统的 SPI 口为 主 机模 式。 主 从机 的 SPI 工 作方 式均 保 持默 认: CPHA=0,CPOL=0。 MAX3421 芯片提供了 D+、D-引脚,在串联 33Ω电阻后可直接连至 USB 总线。而且芯片内部集成了 ESD 保护和 VBCOMP,使外围电路进一步简化。为进一步保护插入的设备,我们在主机工作模式的 MAX3421 芯片外部又添加了限流芯片 MIC2545A,限流电阻选取 470Ω,最大允许电流为 490mA。

MAX3421 芯片内部集成了±15KV ESD 保护功能,故外围电路中没有再增加静电防护电路。

5.4 指纹模块

指纹模块采用深圳艾菲尔公司设计生产的 EFM-200 通用型指纹识别模块。它由高速信号处理器 DSP、指纹传感器芯片 AES2510、高性能指纹比对算法等软硬件组成。

图 5-5指 纹模 块接 口定 义

指纹模块通过

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top