您当前的位置:五五电子网电子知识单片机-工控设备DSP/FPGA技术基于FPGA的PCI硬件加解密卡设计 正文
基于FPGA的PCI硬件加解密卡设计

基于FPGA的PCI硬件加解密卡设计

点击数:7492 次   录入时间:03-04 11:36:41   整理:http://www.55dianzi.com   DSP/FPGA技术

摘要:提出一种基于FPGA的PCI硬件加解密卡的设计方案,用硬件加解密取代了传统的软件加解密,将加解密模块和PCI接口模块集成在一个FPGA芯片内实现。分析了PCI加解密卡的软硬件的结构和原理,详细介绍了DESX加解密算法的原理、步骤和硬件实现、PCI接口模块的IP核设计以及USB接口模块的电路连接。系统硬件以FPGA为核心,使用QUARTusII7.2软件和VHDL语言设计,软件由DriverStudio2.7和VisualC++6-.0设计。采用192位密钥的DESX分组对称加解密算法来取代64位DES算法,密文和密钥在专用硬件中存储,计算机内只有明文,有效防止黑客攻击,保护数据安全。设计采用逻辑综合式取代时钟驱动级联式来实现DESX算法,使加密一组数据的时间由16
个周期缩短为1个周期。
关键词:DESX算法;硬件加解密;FPGA;PCI;USB

    数据加解密分为软件加解密和硬件加解密两种。目前,采用软件加解密的方法对数据进行加解密较为普遍,原因是软件加解密方法实现起来较为简单和经济,但其弱点是软件加解密的明文、密文和密钥都需要在计算机内存储,容易被窃取、攻击和破译,难以应用到需要高级保密的商业机密和军事机密中。硬件加解密可以较好解决软件加解密的不足。硬件加解密的密文和密钥可以在专用硬件中存储,计算机内只有明文,而且硬件加解密基于硬件层处理,CPU不参与加解密的执行过程,不会占用系统资源。因此使用硬件加解密方法,更为安全可靠,是保证数据安全的根本方法,适用于军事机密和高级商业机密。
    但同时硬件加解密实现起来较为困难,主要表现在其较高的生产成本、加解密的硬件实现、加解密速度的提高。以及在调试时不易做分级验证等。另外,在本PCI加解密卡的接口模块设计中用到了复杂的USB、PCI协议,增加了开发的难度。

1 设计思想
    PCI硬件加解密卡是基于加解密器件和PCI总线技术的安全保密设备,为重要的计算机信息提供加密、解密、存储和分发的功能,有效防止机密信息的截获和破译,可以应用在需要高级保密级别的商业和军事领域。系统采用硬件加密方式对数据进行加密存储和解密读取。加解密过程在专用硬件中进行,加密强度较高。系统最大特点是密钥和密文均不在计算机中存储,而是存储在专用硬件中,计算机中只存有明文,可有效防止窃取、攻击和破译。
    加密操作时,PC机的明文数据通过PCI接口传输到FPGA内的加解密模块进行硬件加密,加密后的密文通过USB接口送到密文载体中存储和分发。解密操作时,数据的传输过程相反。加解密算法采用DESX分组对称密钥加密算法.密钥为192位二进制数,与传统的DES相比,更为安全、可靠。密钥存储在PCI卡上的非易失存储器(EEPROM)中,当密钥由于不再安全或者过期等原因需要更新时,通过执行相应软件来更新EEPROM上的密钥信息,而不需要拆卸硬件。系统加密存储和解密读取的工作原理图如图l所示。

2 系统硬件结构和实现
2.1 硬件结构
    加解密卡为PC机PCI卡形式,通过PCI插槽与PC机相连,密文载体与PCI卡的USB接口相连。其硬件主要由三部分组成:加解密模块、PCI接口模块和USB接口模块。其中,加解密模块和PCI接口模块在FPGA内实现,FPGA型号是EP1C12Q240C8,设计软件为QuartusⅡ7.2,采用自顶向下(Top-Down)的实现方式,编辑语言为VHDL。
2.2 加解密算法的硬件实现
    硬件加解密是本系统的核心部分。DES算法在加解密和密钥生成过程中全部使用逻辑运算和查表运算,FPGA在实现算法方面具有灵活性、物理安全性和比软件更高的速度,而且可移植性好,便于升级,因此FPGA已成为硬件实现DES算法的最佳选择。


本文关键字:硬件  DSP/FPGA技术单片机-工控设备 - DSP/FPGA技术