碧波液压网 欢迎你,游客。 登录 注册

基于MEMS&FPGA的USB移动硬盘加解密系统

版权信息:站内文章仅供学习与参考,如触及到您的版权信息,请与本站联系。

  1. 系统结构布局

  该系统由Cypress CY7C68013 USB2.0 控制器、Altera EP2C35 FPGA 和MEMS 强链构成, 图1 描述了整个系统的硬件布局。

  

  MEMS 强链负责对用户输入的密码进行验证。CY7C68013 USB 控制器内含增强型51 核,它不 但能高效处理USB 协议事务,而且是整个系统的控制中心。EP2C35 FPGA 一端连接USB 控制 芯片的GPIF 接口,一端连接IDE 硬盘,它负责从IDE 总线中区分出控制信号、读写硬盘寄存器的数据信号和读写硬盘扇区的数据信号,然后仅对写入硬盘扇区的数据作加密处理,对读出 硬盘扇区的数据作解密处理。

  2. MEMS 强链

  MEMS 强链的棘爪能卡住棘轮,从而能精确定位到固定的位置,棘爪装有电磁驱动型电机, 使其具有误码鉴别与自复位功能,因而可用于信息安全,实现密码锁的功能。鉴码机构由两组 电磁型微步进电机驱动反干涉齿轮集A 和B,反干涉码轮集中机械固化了密码。反干涉齿轮集 在正确解码时,码齿之间互相没有接触;当出现错码时,码齿相互干涉,反干涉齿轮集卡死。 使用光电耦合机构,在正确接收到24 位密码时光电能量耦合,系统开启。图2 是MSMS 强链 结构图。

  

  3. 物理密钥与密码认证

  物理密钥是相对于逻辑密钥而言的,逻辑密钥通常以二进制形式存在于芯片内部ROM 区, 容易被破解。而物理密钥固化在机械结构内部。本设计采用的反向啮合齿轮集鉴码机构所蕴含 的密钥就属于物理密钥。它的结构相当隐含,不是专业人士即使知道了鉴码机构,也很难推出 其密码。

  密码认证开始时,USB 控制器把接收到的来自PC 的24 位待验证二进制密码以脉冲的形 式传递给强链。强链的电机会根据脉冲驱动码轮。若密码正确,反干涉齿轮*无摩擦的走通 一周回到原位;只要有一位密码错误,反干涉齿轮*在该位卡死。USB 控制器根据强链的反 馈信号作出判断,如果验证通过,则将该系统枚举成一个可移动磁盘,并把该正确密码传递给 FPGA,作为AES 加密算法的密钥;否则向PC 机返回验证失败的信息。

  4. ATA 协议控制器的实现

  从密码认证通过,枚举开始的那一刻起,USB 控制器得到了对硬盘的访问权。 根据 ATA 协议,对支持Ultra DMA 传输方式的IDE 硬盘而言,操作归结为两种,对硬盘接 口寄存器读写以及对硬盘扇区进行Ultra DMA 批量扇区。为了对硬盘数据进行加解密,我们把 FPGA 插入连接GPIF 接口和硬盘接口的IDE 总线,这样所有控制信号和数据信号都要通过 FPGA,受到FPGA 的监视和控制。

  FPGA 必须实现有限状态机,能够对信号进行协议解析,区 分出那些需要加解密的扇区数据,也就是在Ultra DMA 传输过程中出现在数据总线上的数据。 在PIO 状态时,FPGA 让所有信号保持直通,因而读写硬盘接口寄存器的操作不受任何影响,但状态机监测对硬盘接口寄存器的写入操作。一旦发现写入命令寄存器的命令代码为DMA 读 (0xC8 或0x25)或DMA 写(0xCA 或0x35)命令,则有限状态机进入DMA 状态。

你没有登陆,无法阅读全文内容

您需要 登录 才可以查看,没有帐号? 立即注册

标签: MEMS
点赞   收藏

相关文章

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名: 验证码:

最新评论