新闻中心

EEPW首页>嵌入式系统>设计应用> 基于MEMS和FPGA的移动硬盘数据加解密系统

基于MEMS和FPGA的移动硬盘数据加解密系统

作者: 时间:2009-11-04 来源:网络 收藏

5. AES 加密模块的实现

  AES 的设计原理可参考文献[1],下面只简单介绍算法过程。AES 是一个迭代的分组密码, 每一轮迭代称为一个轮变换,包括一个混合和三个代换:

  (1)字节代换(SubBytes):利用S 盒对状态的每一个字节进行非线性变换。

  (2)行移位(ShiftRow):对状态的每一行,按不同的位移量进行行移位。

  (3)列混合(MixColumn):对状态中的每一列并行应用列混合,在最后一轮省略该步。

  (4)扩展密钥加(AddRoundKey):与扩展密钥异或。 加密算法的流程如图4 所示。

加密算法的流程

  相应的,解密算法使用逆序的扩展密钥,轮变换分别为InvSubByte,InvShiftRow, InvMixColumn,数据流程稍有不同。

  我们设计的AES 加密运算模块以128 位为一个分组,完成一个分组的运算需要11 个时钟 周期。第1 个时钟周期,密钥扩展模块输出第1 个扩展密码,也就是初始密码本身;同时初始 变换模块用这个扩展密码对128 位明文作AddRoundKey 操作。

  第2 个到第11 个时钟周期,密 钥扩展模块依次生成10 个扩展密码,同时,轮变换模块利用这些扩展密码对输入密文作10 个 轮次的轮变换,其中最后一轮缺少列混合操作,然后输出最终的密文,结束一个分组的运算。

 6. 数据吞吐率分析

  Ultra DMA 在模式2 下的数据传输率为33.33MB/s。由于全局时钟频率为100MHz, 所以加解密一个128 位分组需要110ns。加上数据的输入和输出阶段各占用一个时钟周期,总共 需要130ns。所以加解密模块的数据处理速率约为61.54MB/s,完全能够达到实时处理的要求。

7. 结束语

  本文提出了一种安全高效的数据。其中,MEMS 强链的应用开辟 了系统物理认证的新方向;Ultra DMA 协议接口的实现大大提高了硬盘读写的吞吐率,同时AES 加解模块的处理速率又能完全满足Ultra DMA 传输带宽,两者的有机协作使得一种高 效的硬件加解密流水线得以实现。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭