面向密码应用的定制处理器关键技术研究
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
密码算法及其应用程序是人们为了保障信息安全而发明的信息技术手段,作为安全加密技术的基础,在信息安全领域得到了广泛的运用。随着互联网技术的发展以及敏感数据越来越多的存储在网络上,密码算法在云计算、在线事务处理等网络应用中扮演着越来越重要的角色。同时由于通信技术、漏洞攻击技术和旁路攻击技术的进步,各应用对密码算法运算平台的计算速率、安全性能以及灵活性能提出了更高的要求。
     传统的软硬件运算平台如CPU、GPU、FPGA和ASIC对密码算法的各项性能支持互不相同,CPU的灵活性能高,但是计算速率和安全性低;GPU的计算速率高但安全性低功耗过大;ASIC的计算速率和安全性都很好,但是造价高同时灵活性太低;FPGA的安全性高功耗低,但计算速率平常且灵活性偏低。各计算平台对密码应用都分别只能满足一项或两项性能要求,且都分别具有过低的性能指标。
     本课题在对安全加密应用程序和加密算法深入分析的基础上,设计实现了两款面向密码应用的定制处理器IPCCP(IP Core Compute Processor)和FUMCP(frequent used mode Compute Processor),提供了相应的编译器,同时设计了面向密码应用的可视化编程环境以供定制处理器的使用者方便的开发相应的密码应用程序。我们还设计了用于自动分析代码、发掘密码算法中频繁使用模式的新型快速频繁子图挖掘算法Top-FFSM。
     我们设计的IPCCP在运行示例程序时获得了相对于通用CPU 57、相对于FPGA 1.8的加速比;而FUMCP在运行示例程序时获得了相对于通用CPU 1.5至2的加速比,FUMCP相对于IPCCP的优势则是灵活性几乎与CPU完全一样。我们设计的频繁子图挖掘算法Top-FFSM在子图覆盖率和指令周期减少率上都取得了比通过C代码分析定制频繁使用部件更好的效果。本课题设计的可视化编程环境通过实验检验也被证明可以充分表达各种密码算法应用程序,同时对新的密码算法和密码程序都具有高度的可扩展性。
People invented Cipher algorithm and applications to ensure the safety of information. As the base of security technology, Cipher algorithm has been used widly in information field. The Internet developed quickly and more secret information has been stored on the Internet, hence the cipher algorithm become more and more important in applications like Cloud computing and On-line transaction processing. At the same time, due to the development of communication, hole attack and side-channel attack technology, the platform of cipher compute should be faster, safer and more flexible.
     The traditional hardware and software computing platforms such as CPU, GPU, FPGA and ASIC have a different support on cipher algorithm performance. CPU has a high flexible performance but low performance of computation rate and safety; GPU has a high of compute rate but low safety and of excessive power dissipation; ASIC has high performance in compute rate and security, but the cost is too high and the flexibility is too low; FPGA is of high security and low power consumption, but the computation of rate is normal and flexibility is too low. Each computing platform for cryptographic applications are met only one or two performance requirements.
     Based on the basis of deep analysis to cryptography algorithm and its application, we designed two customized processors IPCCP and FUMCP for cryptographic applications and providesd the corresponding compiler. At the same time, we designed a visual programming environment oriented to cryptographic application for the customized processor users to facilitate the development of the corresponding cipher application. We also designed a new type of fast frequent subgraph mining algorithm Top-FFSM for excavation frequently used model in cipher algorithm.
     The IPCCP obtained 57 speedup compared to CPU and 1.8 speedup relative to FPGA. At the same time, FUMCP obtained 1.5 speedup compared to CPU, but the advantage of FUMCP relative to IPCCP is that it has almost exactly the same flexibility as CPU. The frequent subgraph mining algorithm Top-FFSM we designed obtained better effective than C code analysis in both subgraph coverage and execution cycle reduction rate. The visual programming environment we designed has been shown to fully express various cryptographic algorithm application, while the new encryption and password procedures are highly scalable.
引文
[1]BO Shi, GE Ning, LIN Xiao-kang. Custom Instruction Design for Security and Encryption Applications[J]. Computer Engineering,2010,36(20):1-4.
    [2]National Institute of Standard and Technology. Data Encryption Standard(DES)[S].Federal Information Processing Standards Publication,1999.
    [3]Lai X, Massey J L. A proposal for a new block encryption standard[C]. Proceedings of Advances in Cryptology (Eurocrypt 1990), Aarhus, Denmark, 1990:389-404.
    [4]Wikipedia. Advanced Encryption Standard[EB/OL] http://en.wikipedia.org/wiki/Advanced_Encryption_Standard.
    [5]MJ Wiener. Cryptanalysis of short RSA secret exponents[J]. IEEE Transactions on Information Theory,1990,36(3):553-558.
    [6]J. Huang, R. Berry and M.L. Honig. Distributed interference compensation for wireless networks[J]. IEEE Journal on Selected Areas in Communications,2006,24(5):1074-1084.
    [7]R. Rivest. The MD5 Message-Digest Algorithm[S]. RFC 1321, MIT LCS & RSA Data Security,1992.
    [8]National Institute of Standards and Technology. FIPS 18022, Announcing the secure hash standard [S],2002.
    [9]National Institute of Standards and Technology (NIST) [S]. Secure Hash Standard (SHS). Digital signature Standard (DSS). FIPS PUB 180-2 Standard, 2002.
    [10]David K. Black. The Digital Signature Standard:Overview and Current Status[J]. Computers & Security,1993,12(5):437-446.
    [11]Eyas Al-Hajery.Trust Model in PGP and X.509 Standard PKI[EB/OL].http://www.sans.org/infosecFAQ/encryption/trust_model.htm.
    [12]魏辉.IC卡安全的基础——IC卡用芯片的安全[J].电脑与信息技术,2006,14(5):42-44.
    [13]彭湘凯.VPN及其核心技术[J].成都大学学报,2001,20(1):12-15.
    [14]LIANG Quan, ZHANG Hong Zheng, LIANG, Kai Jian, YANG Yang. Research on Grid Quality of Service(QoS)[J]. Computer science,2006,33(7): 42-46.
    [15]Foster I, Kesselman C, Lee C, et al. A Distributed Resource Management Architecture that Supports Advance Reservation and Co Allocation[C]. Proceedings of the International Workshop on QoS(IWQoS), London,1999: 27-36.
    [16]Yutu Liu, Anne H.H. Ngu, Liangzhao Zeng. QoS Computation and Policing in Dynamlic Web Service Selection[C]. Proceedings of the 13th International Conference on World Wide Web(WWW),New York, USA,2004:66-73.
    [17]雅奇880.[EB/OL]http://www.yqmis.com/
    [18]Elisabeth Oswald,Stefan Mangard. Template Attacks on Masking—Resistance Is Futile[C]. Proceedings of The Cryptographers' Track at the RSA Conference 2007(CTRSA 2007), San Francisco, CA, USA,2007:12-27.
    [19]ZHANG Tao, FAN Mingyu, ZHENG Xiulin.Method on building self-headling cryptosystem resistant to side-channal attack [J].Application Research of Comuters,2008,25(9):2829-2833.
    [20]OSWALD E, MANGARD S, HERBST C, et al. Pract ical second-order DPA attacks for m asked sm artcard implementations of block ciphers[C]. Proceedings of The Cryptographers' Track at the RSA Conference 2006(CTRSA 2006), San Jose, CA, USA,2006:192-207.
    [21]Tillich S, GroBschadl J. Accelerating AES Using Instruction Set Extensions for Elliptic Curve Cryptography[C]. Proceedings of 2005 International Workshop on Information Security & and Hiding, Singapore,2005:43-59.
    [22]Dai Z Bibin, Li Wei, Yang X Hiaohui, et al. The Research and Implementation of Reconfigurable Processor Architecture for Block Cipher Processing[C]. Proceedings of 2008 International Conference on Embedded Software and Systems:587-594.
    [23]Kubilay Atasu, Laura Pozzi, Paolo Ienne. Automatic application-specific instruction-set extensions under microarchitectural constraints[C]. Proceedings of the 40th conference on Design automation,CA, USA,2003:176-184.
    [24]薄拾,葛宁,林孝康.面向安全与加密应用的定制指令设计[J].计算机工程,2010,36(20):1-4.
    [25]F.L.Ni, M.H.Jin, Z.W.Xie, Sh.C.Shi,Y.Ch.Liu, H.Liu, G.Hirzinger. Highly Integrated Joint Servo System Based on FPGA with Nios II Processor[C]. Proceedings of the 2006 IEEE International Conference on Mechatronics and Automation, Luoyang, China,2006:973-978.
    [26]Joshi Nivedita N.,Dakhole P.K.,Zode P.P. Embedded Web Server on Nios II Embedded FPGA Platform[C]. Proceedings of 2009 2nd International Conference on Emerging Trends in Engineering and Technology(ICETET 2009):372-377.
    [27]黄崧,曾芳玲,杨景曙.基于NIOS Ⅱ的嵌入式云发生器电路设计[J].应用电路设计,2007,(29)3:74-76.
    [28]Altera Corporation.Nios Ⅱ Processor Reference Handbook[EB/OL]. http://www.altera.com/literature/hb/nios2/n2cpu_nii5v1.pdf
    [29]Altera Corporation.Nios Ⅱ Hardware Development Tutorial [EB/OL]. http://www.altera.com/literature/hb/nios2/n2cpu_nii5v1.pdf
    [30]MSDN. Microsoft Robotics StudioVPL Introduction[EB/OL]. http://Officedn.microsoft.com/zh-cn/library/bb483088(en-us).aspx,2008
    [31]周伟明.多核计算与程序设计[M].武汉:华中科技大学出版社,2009.
    [32]都志辉.高性能计算并行编程技术——mpi并行程序设计.北京:清华大学出版社,2001.
    [33]Intel Corporation. Intel C/C++Compiler Class Li2 braries for SIMD Operation User's Guide[EB/OL]. http://developer.intel.com/design/pentium4/manuals.
    [34]NVIDIA Corporation. CUDA Programming Guide[EB/OL], http://developer.download.nvidia.com/compute/cuda/1_1/NVIDIA_CUDA_Pr ogramming_Guide_1.1.pdf
    [35]Saxe T., Faith B. Less is more with FPGAs[EB/OL]. http://www.eetasia.com/ART_8800369231_499485_NT_2ee885ce.HTM
    [36]J.M. Rabaey, A. Chandrakasan, B. Nikolic. Digital Integrated Circuits A Design Perspective (Senond Edition)[M]. New Jersey:Prentice Hall,2004.
    [37]Ji Yao,Hongbo Kang. FPGA Implementation of Dynamic Key Management for DES Encryption Algorithm[C]. Proceedings of 2011 International Conference on Electronic & Mechanical Engineering and Information Technology,2011:4795-4798
    [38]禹金璐,龙翔,高小鹏.支持变长密钥的AES算法的FPGA实现[C].北京地区高校研究生学术交流会,2008:660-666.
    [39]NIST. HASH Competition [EB/OL]. http://csrc.nist.gov/groups/ST/hash/sha-3/Round2/submissions_rnd2.html
    [40]Kimmo Jarvinen,Matti Tommiska and Joma Skytta. Hardware Implementation Analysis of the MD5 Hash Algorithm[C].Proceedings of the 38th Hawaii International Conference on System Sciences, Hawaii,United States,2005:298.
    [41]Ylonen T.rfc4251-2006,The secure shell(SSH)protoeol architecture[S].IETF,2006:12-24
    [42]Ylonen T.rfc4254-2006,The secure shell(SSH)connection protocol[S].IETF,2006:19-21
    [43]Ylonen T.rfc4252-2006,The secure shell(SSH)authentication protocol[S].IETF,2006:4-14
    [44]Ylonen T.rfc4253-2006,The secure shell(SSH)transport layer protocol[S].IETF,2006:4-23
    [45]Noda H, Niimi M, Kawaguchi E. High-performance JPEG steganography using quantization index modulation in DCT domain[J]. Pattern Recognition Letters, 2006,27(5):455-461.
    [46]Fridrich J. Feature-based steg analysis for JPEG images and its implications for future design of steganographic schemes[J]. Proceedings of Information Hiding 2005, Barcelona, Spain,2005:67-81.
    [47]中关村在线.nVIDIA GeForce GTX 580、AMD Radeon HD 6970参数对比 [EB/OL].http://detail.zol.com.cn/ProductComp_param_267040-262758.html
    [48]薄拾.一种高效的凸连通子图枚举算法[J].软件学报,2010,21(12)3106-3115.
    [49]Guido Marco Bertoni, Speeding Up AES By Extending a 32 bit Processor Instruction Set[C]. Proceedings of IEEE 17th International Conference on Application-specific Systems, Architectures and Processors(ASAP 2006), Steamboat Springs, CO, United states,2006:275-279.
    [50]M. H.Marghny and A.A.Mitwaly. Fast Algorithm for Mining Association Rules. In proc. Of the First ICGST International Conference on Artificial Intelligence and Machine Learning AIML05,2005:36-40.
    [51]Inokuchi A, Washio T, Okada T. An Apriori-Based Algorithm for Mining Frequent Substructures from Graph Data[C].Proceedings of 2000 European Conference on Principles of Data Mining and Knowledge Discovery (PKDD2000), Lyon, France,2000:13-23.
    [52]Inokuchi A, Washio T, Okada T, et al. Applying Algebraic Mining Method of Graph Substructures to Mutageniesis Data Analysis[C].Proceedings of Pacific-Asia Conference on Knowledge Discovery and Data Mining (PAKDD2000),.http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.38.2 592&rep=rep1&type=pdf
    [53]Kuramochi M, Karypis G. Frequent Subgraph Discovery[C]. Proceedings of 2001 IEEE International Conference on Data Mining(ICDM 2001),2001: 313-320.
    [54]Yah Y, Han J. gSpan:Graph-Based Subst ructure Pattern Mining[C]. Proceedings of 2002 IEEE International Conference on Data Mining(ICDM 2002),2002:721-724.
    [55]Yan X, Han J. CloseGraph:Mining Closed Frequent Graph Patterns[C]. Proceedings of the 9th ACM SIGKDD Inernational Conf on Knowledge Discovery and Data Mining,2003:286-295.
    [56]Han J, Wang W, Prins J. Efficient Mining of Frequent Subgraphs in the Presence of Isomorphism[C]. Proceedings of the IEEE International Conf on Data Mining,2003:549-552.
    [57]Cook DJ,Holder LB.Mining graph data[M].New Jersey: John Wiley & Sons Inc Publication,2007.
    [58]Chang Hun You, Lawrence B. Holder and Diane J. Graph-based Data Mining in Dynamic Networks: Empirical Comparison of Compression-based and Frequency-based Subgraph Mining[C]. Proceedings of IEEE International Conference on Data Mining Workshops,2008:929-938.
    [59]赵传申,孙志挥,张净.基于投影分支的快速频繁子树挖掘算法[J].计算机研究与发展,2006,43(3):456-462.
    [60]薄拾,葛宁,林孝康.面向多任务的定制指令模式提取[J].计算机工程与设计,2010,31(15):3417-3418.
    [61]严蔚敏,吴伟民.数据结构(C语言版)[M].北京:清华大学出版社,1997.
    [62]LI Xian-Tong,LI Jiang-Zhong,GAO Hong.An Efficient Frequent Subgraph Mining Algorithm[J].Journal of Software,2007,18(10):2469-2480.
    [63]李星毅.可视化语言与语言可视化[J].江苏理工大学学报,2001(6):54-58.
    [64]Burnett,Margaret.Visual Programming[J].Encyclopedia of Electrical and Electronics Engineering.New York:John Wiley&Sons Inc,1999.
    [65]Jim Davies,Ashok K.Goel.Transfer of problem-solving strategy using Covlan[J].Visual Languages and Computing,2007,18(2):149-164.
    [66]Steven L.Tanimoto. Representation and learnability in visual languages for web-based interpersonal communication[C]. Proceedings of the 1997 IEEE Symposium on Visual Languages, Capri,1997:2-10.
    [67]沈立.通过寄存器队列模型实现寄存器分配和指令调度[J].小型微型计算机系统,2004(4):757-761.
    [68]P.A.Lee,M.D.Hamilton,S.Parastatidis.A Visual Parallel Programming Languages[R].Technical Report, CSTR-793,2003.
    [69]Burnett,Margaret.Types and Type Inference in a Visual Programming Language[C].Procedings of 1993 IEEE Symposium on Visual Languages(ISVL), Bergen,Norway,1993:238-243.
    [70]李刚.林凌LAB VIEW——易学易用的计算机图形化编程语言[M].北京:北京航天航空大学出版社,2001.
    [71]董新法.一种可视化程序设计语言UVPL原型的研究与实现[D].河南大学硕士学位论文.2009.
    [72]HENDERSONDA,CARDSK.RooOffice:The use of multiple virtual workspaces to reduce space contention in a window-based graphical user interface[J].ACM Transactions on Graphics,1986,5(3):210-243
    [73]Burnettmm, Bakermj, Bohusc et al. Scaling up visual programming languages[J].IEEE Computer Society,1995,28(3):45-54.
    [74]沈夏炯等.基于fisheye views算法解决可视化程序设计语言问题的研究[J].计算机应用,2009,29(1):306-308.

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

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

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