用户名: 密码: 验证码:
基于USB2.0+FPGA的密码算法硬件实现平台设计
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
硬件加密的诸多优势使得国内外对它的研究开发越来越重视,而密码算法硬件实现的研究更是其中的核心内容。一般来说,密码算法硬件实现研究大多使用通用型FPGA(Field Programmable Gate Array,FPGA)开发平台或者是针对某个项目特别开发的硬件电路。前者缺乏针对性并且体积较大,但是具有高灵活性;后者虽然有很强的针对性,易于控制成本,但是开发周期长,应用范围有限。本文尝试结合两者的优点,采用USB 2.0(Universal Serial Bus 2.0,USB2.0)接口主电路板和FPGA密码算法处理电路板分离的设计(两块电路板使用预定义的插槽连接),并预留足够的标准数据和控制信号接口,设计了基于USB2.0和FPGA技术的密码算法硬件实现平台。该平台不仅可以供开发设计阶段使用,也可以方便地用于演示。论文深入分析研究了USB的体系结构及其设备架构、对比分析了目前广泛使用的几种密码算法硬件实现方式,对整个平台系统架构、各个层面的划分及其解决方案给出了详细的分析与讨论,并采用VHDL(VHSICHardware Description Language,VHDL)语言实现了几个FPGA逻辑模块,对平台设计的有效性和功能进行了验证。所设计的平台具有快速的数据处理和高速的数据交换能力。
Numerous advantages of hardware encryption make people draw more attention to their research and development work at home and abroad. Moreover, hardware implementation of cipher algorithms is the core content of hardware encryption. Generally speaking, either a common FPGA-based (Field Programmable Gate Array, FPGA) development platform or a platform which is designed for a particular project can be used in the hardware implementation of cipher algorithms. The former lacks of specificity and relatively has a bigger size, but it is more flexibile; the latter is highly relevant and easy to control costs, but it has longer development cycle and limited scope of application. This paper attempts to combine the advantages of both by separating USB2.0 (Universal Serial Bus 2.0, USB2.0) main circuit board with FPGA algorithm processing circuit board (these two circuit boards can be connected by pre-defined slots) and setting aside adequate standard data and control signals interface to develop the USB2.0+FPGA-based cipher algorithms hardware implementation platform. This platform not only can be used for development, but also can be easily used for demonstration. In this paper, we studied in-depth the architecture of the USB structure and its equipment, compared and analysised several methods of cipher algorithms hardware implementation which are widely used. We also gave a detailed analysis and discussion of the entire system architecture and the division and solution of different levels. Finally, the functional verification of the entire platform is tested through some simple FPGA modules which are designed by VHDL (VHSIC Hardware Description Language, VHDL). The designed platform has the capacity of rapid data processing and high-speed data exchange.
引文
[1]PGP.PGP Encryption[EB/OL].http://www.pgp.com/products/index.html
    [2]Scramdisk.Scramdisk Introduction[EB/OL].http://www.scramdisk.clara.net
    [3]软件世界.GTC Safe Folder[EB/OL].http://media.ccidnet.com/media/swm/148/14902.htm
    [4]华翔.信息安全芯片的设计与实现[J].通信技术,2003.(7):91-95
    [5]秦小龙.硬件密码组件与软件密码组件的比较研究[J].单片机与嵌入式系统应用,2003,(10):15-18
    [6]陈芳,李伦.基于USB软件狗的反解密研究[J].微型机与应用,2004,(1):19-21
    [7]吴德会,王志毅.基于混沌保密的USB软件加密狗及其反解密研究[J].微计算机信息,2005,(8):15-17
    [8]信息安全相关术语[J].软件工程师,2004,(8):63
    [9]周怡辰.USB接口加密设备的设计与实现[D].电子科技大学,2002:37
    [10]刘学照.电子文档存储加密技术的研究与开发[D].华中科技大学,2003:13
    [11]毕进军,于志平,李伦.通过USBN8603/P89C51平台实现USB接口硬件加密[J],微型机与应用,2004,(4):17-20
    [12]李伦.USB外设接口硬件的研究与实现[D].中国地质大学,2003:1
    [13]时戬,孙朝霞.USB与IEEE1394[J].西部广播电视,2004,(10):7-9
    [14]孔笋,郑耀林.当前几种新型通用I/O接口及其应用[J].现代科学仪器,2006,(3):32-35
    [15]李志伟.PC串口之秀--USB与IEEE1394[J].微型电脑应用,2003,(2):30-31
    [16]龚义建.USB与IEEE1394的分析与比较[J].武汉理工大学学报,2003,(9):77-80
    [17]邹建华,李洋.高速接口USB与IEEE1394的性能分析[J].电声技术,2001,(1):44-48
    [18]Compaq,Hewlett-Packard,Intel,et al.Specification:Universal Serial Bus.Revision 2.0[S].Compaq,Hewlett-Packard,Intei,Lucent,Microsoft,NEC,Philips Corporation,2000
    [19]SYSTEMSOFT,INTEL.Universal Serial Bus Common Class Specification[EB/OL].http://www.usb.org/developers/devclass_docs/
    [20]USB Implementers Forum.Universal Serial Bus Content Security Method 1 Basic Authentication Protocol 1.0[EB/OL].http://www.usb.org/developers/devclass_docs/
    [21]刘炎,冯穗力,叶梧.通用串行总线(USB)原理及接口设计[J].电子技术应用,2000,(12):56-59
    [22]周振宇,谷海颖.基于USB总线的实时数据采集系统设计[J].电子技术应用,2002,(2):12-14
    [23]Don Anderson.精英科技译.USB系统体系[M].北京:中国电力出版社,2001.4
    [24]冯登国.国内外密码学研究现状及发展趋势[J].通信学报,2002,(5):18-26
    [25]Quintans,C.,Moure,M.J.,Pena,M.D.V.,Mandado,E..A Virtual Instrumentation Laboratory Based on a Reconfigurable Coprocessor[C].Instrumentation and Measurement,IEEE Transactions on Volume 55,Issue 2,2006,(4):635-645
    [26]曾毅,鲁欣,付宇卓.一种优化可配置的AES密码算法硬件实现[J].微电子学与计算机,2004,(12):34-37
    [27]许萍,何文才,阎亚龙.Twofish分组算法的FPGA实现研究[J].计算机工程与应用,2005,(3):103-105
    [28]唐明,汪波,杨欣,张焕国.分组密码的硬件实现[J].哈尔滨工业大学学报,2006,(9):1558-1562
    [29]何德彪,陈建华,孙金龙.RSA/ECC密码协处理器的硬件实现[J].计算机工程,2007,(22):29-31
    [30]盛利元,孙克辉,李传兵.基于切延迟的椭圆反射腔离散混沌系统及其性能研究[J].物理学报,2004,53(9):2871-2876
    [31]盛利元,曹莉凌,孙克辉.基于TD-ERCS混沌系统的伪随机数发生器及统计特性分析[J].物理学报,2005.54(9):4031-4037
    [32]盛利元,闻姜,曹莉凌.TD-ERCS混沌系统的差分分析[J].物理学报,2007,56(1):78-83
    [33]盛利元,刘念,曹莉凌.一种混沌伪随机序列发生器的FPGA实现[J].郑州大学学报工学版,2008,(3):44-47
    [34]刘念,盛利元,简远鸣.混沌变形DES算法的FPGA设计与实现[C].中国物理学会2007年秋季学术会议,2007:858
    [35]蔺守河.USB加密卡的硬件架构研究与设计[D].中国人民解放军信息工程大学,2006:10-11
    [36]Jan Axelson.陈逸等译.USB大全[M].北京:中国电力出版社,2001,(5):49-53
    [37]钱峰.EZ-USB FX2单片机原理、编程及应用[M].北京航空航天大学出版社,2006:19-20
    [38]Philips.Datasheet:ISP1581 Hi-Speed USB interface device.Revision 05[DB].Philips Semiconductors,2003
    [39]Cypress.Datasheet:CY7C68013 EZ-USB FX2 USB Microcontroller High-Speed USB Peripheral Controller.Revision C[DB].USA:Cypress Semiconductor Corporation,2002
    [40]Cypress.Manual:EZ-USB FX2 Technical Reference.Version2.1[DB].USA:Cypress Semiconductor Corporation,2001
    [41]Cypress.Manual:EZ-USB FX2 Development Kit Manual Getting Started.Revision 1.4[DB].USA:Cypress Semiconductor Corporation,2000
    [42]陈启美.计算机USB接口技术[M].南京:南京大学出版社,2003:1
    [43]萧世文.USB2.0硬件设计[M].北京:清华大学出版社,2002:95-117
    [44]曹莉凌.基于TD-ERCS伪随机序列发生器的FPGA设计与实现[D].长沙:中南大学,2007:13
    [45]潘文.基于USB2.0技术的全自动膜片钳数据采集系统的研制[D].武汉:华中科技大学,2005:53
    [46]Altera.Cyclone EP1C6 Device Pin Information[DB].USA:Altera Corporation,2003
    [47]Altera.Cyclone EP1C12 Device Pin Information[DB].USA:Altera Corporation,2003
    [48]Altera.Cyclone EP1C20 Device Pin Information[DB].USA:Altera Corporation,2003
    [49]Paul W.Kohlbrenner.The Design and Analysis of a True Random Number Generator in a Field Programmable Gate Array[D].USA:George Mason University,2003:61
    [50]尹勇,王洪成.单片机开发环境uVision2使用指南及USB固件编程与调试[M].北京:北京航空航天大学出版社,2004.10
    [51]武安河,周利莉.Windows设备驱动程序(VxD和WDM)开发实务[M].北京:电子工业出版社,2001.9
    [52]陈俊,李治.用VC++编写USB接口通信程序[J].计算机系统应用,2003,(6):62-64
    [53]郇晓辉,郇晓斌,田金文.USB+FPGA系统测试设备开发[J].计算机与数字工程,2005,(6):5-7,44
    [54]胡晓军,杨正新,郜业猛.USB软件加密卡及其驱动程序的设计与开发[J].电子工程师,2002,(8):7-9
    [55]倪明辉,周军,杨庚.USB在FPGA控制的高速数据采集系统中的应用[J].计算机测量与控制,2006,(2):268-271
    [56]梁颖,游磊,饶蜀华.基于USB接口数据采集卡的设计与实现[J].计算机测量与控制,2005,(4):392-395
    [57]李松,张涌,徐江丰.由C6000DSP和EZUSB构成的图像处理系统[J].单片机与嵌入式系统应用,2005,(5):57-59
    [58]Microchip.Datasheet:24AA64/24LC64[DB].USA:Microchip Technology Inc,2002.11
    [59]Cypress.Datasheet:CY7C1019DV33[DB].USA:Cypress Semiconductor Corporation,2006.1
    [60]Altera.Cyclone Device Handbook,Volume 1[DB].USA:Altera Corporation,2003
    [61]Altera.Serial Configuration Devices(EPCS1&EPCS4)[DB].USA:Altera Corporation,2003
    [62]Altera.ByteBlaster Ⅱ Download Cable User Guide[DB].USA:Altera Corporation,2003
    [63]TI.Datasheet:MAX3232[DB].USA:Texas Instruments Incorporated,2004
    [64]National Semiconductor.Datasheet:LM108x[DB].National Semiconductor,Corp,1999
    [65]SMD.什么是磁珠以及磁珠的原理与应用[EB/OL].http://www.smd.net.cn/smd/html/28/1/1371/1.htm
    [66]莫海永,张中科.FPGA中双向端口I/O的研究[J].国外电子测量技术,2005,(6):49-51

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700