嵌入式软件保护关键技术研究与应用
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
随着嵌入式系统在人类生活各领域中的广泛应用,它们越来越多的被非法入侵和破坏,为国家和社会造成巨大的经济损失,有时甚至危害到国家和社会的安全。因此嵌入式系统的安全问题是一个当前急需解决的热点问题,必须给予充分的重视并设法解决。
     本文首先分析了嵌入式系统所面临的安全性问题及其安全需求,讨论了嵌入式系统的体系结构,提出了一种安全的嵌入式体系结构SESS, SESS能够较好的解决目前嵌入式系统面临的安全问题。给出了SESS的安全策略、设计策略等主要内容。为了对嵌入式系统进行更好的保护,本文在嵌入式软件加密、嵌入式软件水印、嵌入式软件混淆等方面提出新的方法和技术,以期解决嵌入式软件保护中的主要问题。
     本文研究的主要内容有:
     1.嵌入式系统安全体系结构
     由于硬件技术的逐渐成熟和公开,硬件成本不断下降,人们对如何保护产品的设计和版权的思考,转化成了对嵌入式应用软件的保护。本章对嵌入式系统面临的相关安全理论和安全问题进行了研究与分析,对嵌入式系统的体系结构方面进行了深入研究,从而提出了安全的嵌入式系统体系结构,这种体系结构能够较好的解决目前嵌入式系统面临的安全问题。本文研究了安全嵌入式系统设计的安全策略、设计策略和构建安全嵌入式系统的要点。
     2.嵌入式软件加密技术
     本文重点研究了分层的基于身份的加密方案(HIBE)以及密钥隔离机制,以探索更为安全和高效的基于身份的加密方案及密钥更新方案,改进嵌入式软件保护技术。本文将利用HIBE改善基于身份的加密机制的安全性,并对HIBE的安全性加以形式化证明。研究基于身份的密钥隔离机制进行密钥更新的具体过程与算法描述。证明了基于身份的密钥隔离机制是选择密文安全的,为与HIBE加密模型融合提供可靠的前提。在研究HIBE方案和密钥隔离机制的基础之上,提出了HIKE加密模型,在该模型中解决了单个PKG负担大威胁高的问题同时能够在减少交互情况下完成密钥更新,并且支持离线更新。
     3.嵌入式软件水印
     软件水印作为软件保护的一种新技术,为保护知识产权和追踪盗版提供新的途径。本文研究了动态图软件水印的拓扑结构、编码、算法以及保护措施,根据嵌入式系统的特点,提出了一种防篡改的软件水印方案。本文提出的防篡改的软件水印具有较高的数据率,同时将代码自检测技术和代码加密相结合以增强软件水印的抗攻击性能。
     4.嵌入式软件混淆技术
     本文介绍了软件混淆的基本理论和基本方法,并对几种常见软件混淆模型进行了详细的分析和说明。基于软件混淆的特点和零水印的设计思想提出了基于软件混淆的零水印设计方案,其核心思想是将编码后的水印信息通过软件混淆的过程嵌入到软件体中,不增加任何冗余水印信息,从而提高软件水印的安全性。
Along with the widely use of embedded system in all areas of human life, they have been illegally invaded destructed more and more seriously, which have cause great economic losses for our country and society, sometimes it even threaten the security of country and society Therefore the security of embedded system is a hot issue to solve at present, which needs sufficient attention to solve.
     At the beginning, the paper analyzed the security and its safety need which the embedded system faced with, discussed the architecture of the embedded system, coming up with a secure embedded architecture SESS, which can better solve the security issue the embedded system faced with, at present, presenting the main content of the security police and design police of the embedded system, In order to better protect the embedded system, the paper proposed new methods and technology on embedded software encryption, embedded software watermark, embedded software obfuscation and so on, hoping to solve the main problem of embedded system protection.
     The main content of research of the paper
     1. The Security Architecture of Embedded System
     Due to the gradually mature and disclosure of hardware technique, the hardware cost falling continuous, the consideration of how to protect the design and copyright of the product, converting to the protection of embedded application software. This section studied and analyzed the security and relevant security theory the embedded system faced with,and studied deeply on the architecture of embedded system, thus came up with the safety embedded system architecture, the architecture can better solve the security issue the embedded system faced for the moment. The paper studied the security police and design police of the design of and the key point of constructing safety embedded system.
     2. Embedded Software Encryption Technology
     The paper focus on the study of the layered, identity based encryption scheme and Key-Insulation mechanism, to explore more efficient and safer identity based encryption scheme and Key-Insulation scheme, improving the protection technology of embedded system. The article will use HIBE to improve the security of identity based encryption system and provide formal proof for the security of HIBE. The study of the specific process and arithmetic statement of identity based Key-Insulation mechanism proved the identity based Key-Insulation mechanism is to chose safe ciphertext, providing reliable premise for the obfuscation of encryption model with HIBE, on the basis of studying of HIBE scheme and Key-Insulation mechanism, coming up with HIKE encryption model. In this model,the problem of high burden threat of single PKG is solved and finish the update of encryption with less interact at the same time, and support offline update。
     3. Embedded Software Watermarking
     As a new technology of software protection, software watermarking provides new way of protecting intellectual property and tracking piracy. The article studied topological structure, encoding, arithmetic and protection measure, according to the feature of embedded system, carrying out a kind of software watermark scheme with tampering proofing. The tampering proofing software watermark proposed in the paper with high data rate. At the same time, it combines the code from testing technology with encrypted code to enhance the software watermark against attack performance.
     4. Embedded Software Obfuscation Technology
     The paper introduced basic theory and method of software obfuscation. Detailed analyzed and explain were done to several common software obfuscation models. Based on the feature of code obfuscation and the design idea of Zero-Watermarking, the Zero-Watermarking design scheme based on code obfuscation was proposed. Its core idea is embed the coded watermark message into software, without adding redundant watermark message, thereby improving the security of watermark.
引文
[1]Eighth Annual BSA Global Software Piracy Study, http://portal.bsa.org/globalpiracy2010/
    [2]《计算机软件保护条例》,http://www.gov.cn/zwgk/2005-06/03/content_4038.htm
    [3]何立民.嵌入式系统的定义与发展简史.北京:北京航空航天大学,2004.12
    [4]郭荣佐,王霖.嵌入式系统原理[M].北京:北京航空航天大学出版社,2008.
    [5]Oorschot P C van, Revisiting Sotfware Protection[A], Information Securiyt 6th International Conference[C], Bristol:Springer Press,2003:1-13.
    [6]飞天诚信.软件加密原理及应用[M].北京:电子工业出版社,2004:48-55.
    [7]孙永清,顾雨捷,赵戈.基于动态注册码的软件加密保护[J].计算机工程,2007,(12),183-184
    [8]佟晓筠,王翥,杜宇,岳银亮.基于软件安全混合加密技术的研究[J].计算机工程,2004,(23),98-100
    [9]Moskowitz SA,Cooperman M.Method for stega-cipher protection of computer code [P].American Pat 5 745 569.1996.
    [10]Bender W,Gruhl D,Morimoto N,Lu A.Techniques for data hiding.IBM Systems Journal,1996,35(3-4):313~336.
    [11]Christian C,Thomborsen C,Douglas L.A taxonomy of obfuscation transformations.Technical Report#148,1997.
    [12]C.Collberg, J.Thomborson, and D.Low, A Taxonomy of Obfuscating Transformations, Department of Computer Science, The University of Auckland,1997
    [13]C.Collberg and J.Thomborson, Watermarking,Tamper-Proofing, and Obfuscation-Tools for Software Protection, University of Arizona Technical Report 2000-0, Feb 2000.
    [14]C.wang, J.Hill, J.Knight, J.Davidson, Software Tamper Resistance:Obstructing Static Analysis of Programs. Technical Report CS-2000-12, Department of Computer Science, University of Virginia,2000
    [15]Home B, Matheson L R, Sheehan C, et al. Dynamic self-checking techniques for improved tamper resistance[C]//Security and Privacy in Digital Rights Management, LNCS 2320. London:Springer Verlag,2001:141-159
    [16]易开祥,石教英,孙鑫.数字水印技术研究进展[J].中国图象图形学报,2001,6(2):111-117.
    [17]Collberg C,Thomborson C.Software Watermarking:Models and Dynamic Embeddings[C].Proc.of POPL'99,New York:ACM Press,1999:311-324.
    [18]Stern J P,Hachez G,Koeune F,et al.Robust Object Watermarking:Application to Code[C].Proc.of IH'99,New York:ACM Press,1999:368-378.
    [19]Curran D,Hurley N J,Cinneide M O.Securing Java Through Software Watermarking[C].Proc.of PPPJ'03,New York:ACM Press,2003:145-148.
    [20]张立和,杨义先,钮心忻,牛少彰.软件水印综述[J].软件学报,2003,14(2):268-277.
    [21]杨建龙,王建民,李德毅.软件水印技术及其新进展[J].计算机工程,2007,33(17):168-170.
    [22]Yong He.Tamper-proofing a Software Watermark by Encoding Constants[D].Master's thesis,Comp.Sci.Dept..Univ.ofAuckland,2002.
    [23]C.S.Collberg,C.Thomborson.Watermarking,Tamper-Proofing and Obfuscation-Tools for Software Protection[J].IEEE Trans.Software Eng.,2002,28(8):735-746.
    [24]张雪松,李昕,崔维力,赫枫龄,左万利.动态自我验证的软件水印防篡改技术[J].吉林大学学报(工学版),2007,37(5):1148-1153.
    [25]杨志刚.基于常量编码的防篡改软件水印技术[D].吉林大学硕士学位论文,2009.
    [26]Ravi S.Tamper resistance mechanisms for secure embedded systems[C].Proceedings of the International Conference of VLSIDesign,2004:605-611.
    [27]David D Hwang.Securing embedded systems[C].IEEE Security and Privacy,2006:40-49.
    [28]Ricci L,McGinness L.Embedded system security[R].Columbia,USA:Applied Data Systems,2004.
    [29]Trusted Computing Group. TPM Main Part 1 Design Principles Specification, Version 1.2 Level 2 Revision 103 [EB/OL].9 July,2007.
    [30]Trusted Computing Group. TPM Main Part 2 TPM Structures Specification, Version 1.2 Level 2 Revision103 [EB/OL]J.26 October,2006.
    [31]Trusted Computing Group. TCG Software Stack Specification, Version 1.2 [EB/OL] 7 March,2007.http://www.trustedcomputinggroup.org/resources/tcg_software_stacK_tss_specification.
    [32]Trusted Computing Group. TCG Trusted Network Connect, TNC Architecture for Interoperability Specification Version 1.4 Revision 4 [EB/OL].18 May 2009.http://www.trustedcomputinggroup.org/developers/trusted_network_connect/specificati ons
    [33]国家密码管理局.可信计算密码支撑平台功能与接口规范[EB/OL].2007年12月.http://www.oscca.gov.en/
    [34]秦宇,可信虚拟平台安全机制研究[D]:[博士].北京:中国科学院软件研究所,2008.
    [35]Boneh D, Franklin M. Identity-based Encryption from the Weil Pairing[C]. Proc. of Crypto'01. Springer-Verlag,2001:213-229.
    [36]Y. Desmedt, Y. Frankel. Threshold cryptosystems.In Advanecs in Cryptology-Crypto'89, LNCS 435,pp.307-315.Springer-Verlag,1989.
    [37]A. De Santis, Y. Desmedt, Y. Frankel, M. Yung. How to share a function securely. In Proc.of STOC'94,ACM,1994.522-533.1994.
    [38]R. Ostrovsky, M. Yung. How to withstand mobile virus attacks. In:proceedings of PODC'91, pp.51-59.1991.
    [39]A. Shamir. How to share a secret. Comm.of the ACM 22(11):612-613.1979.
    [40]J. Baek, Y. Zheng. Identity-based threshold decryption. In Proc.of PKC'04,LNCS 2947,pp. 248-261.Springer-Verlag,2004.
    [41]Y. Dodis, J. Katz, S. Xu, M.Yung. Key-insulated public-key cryptosystems. In Advanecs in Cryptology-Eurocrypt'02,LNCS 2332,pp.65-82.Springer-Verlag,2002.
    [42]曾梦岐,卿昱,谭平璋,等.基于身份的加密体制研究综述[J].计算机应用研究,2010,27(1):27-31.
    [43]R.Davidson, N.Myhrvold. Method and system for generating and auditing a signature for a computer Program[P]. United States Patent:5559884,1996.
    [44]S.Moskowitz, M.Cooperman. Method for stega-cipher protection of computer code[P]. United States Patent:5745569,1998.
    [45]J.Stern, GHachez, F.Koeune, et al. Robust object watermarking:Application to code[C]. Proceedings of the Third International Workshop on Information Hiding, Springer-Verlag, 2000:368-378.
    [46]A. Monden, H.Lida, K.Matsumoto, et al. A practical method for watermarking java Programs[A]. The 24th Computer Software and Applications Conference (compsac2000)[C], 2000:191-197.
    [47]K. Fukushima, K. Sakurai. A software fingerprinting scheme for java using classfiles obfuscation[J]. LNCS 2908,2003:303-316.
    [48]C.Collberg, C. Thomborson, G. Townsend. Dynamic graph-based software watermarking[J]. Uni. Of Arizona TR04-08,2004.
    [49]R. Venkatesan, V. Vazirani, S. Sinha. A graph theoretic approach to software watermarking[A]. Lecture Notes in Computer Science,2001:157-168.
    [50]C. Collerg, A. Huntwork, E.Carter, et al. Graph theoretic software watermaks: Implementation, analysis, and attacks[A]. Springer,2004:192-207.
    [51]J.Nagra, C. Thomborsonm.. Threading software watermarks[C]. Proceeding of 6th Internatinal Workshop on Information Hiding. Springer-Verlag Berlin Heidelberg. 2004:208-223.
    [52]Kocher P.Security as a new dimension in embedded system design[C].Proc Design Automation Conference,2004:753-760.
    [53]Dyer J G.Building the IBM 4758 secure coprocessor[J].Computer,2004,34(10):57-66.
    [54]Srivaths Ravi,Anand Raghunathan,Srimat Chakradhar.Embedding security in wireless embedded systems[C].Proceedings of the 16th International Conference on VLSI Design,2003.
    [55]石文昌,孙玉芳.安全操作系统研究的发展(上).计算机科学.2002,29(6):5-12
    [56]张焕国,刘玉珍等一种新型嵌入式安全模块.武汉大学学报:理学版.2004,50(Aol):7-11
    [57]张祖鹰.嵌入式移动存储设备加密系统的设计[J].微计算机信息,2008,(36),93-95
    [58]郭荣佐.基于μC/OS-Ⅱ的联锁控制器设计与实现[D].成都:西南交通大学,2005.
    [59]谭兴烈.可信计算平台中的关键部件TPM.信息安全与通信保密.2005(2):29-31
    [60]徐亮.嵌入式加密卡设计[D].大连海事大学硕士学位论文,2009.
    [61]袁平.基于ARM和μC/OS-Ⅱ的嵌入式加密系统应用研究[D].辽宁科技大学硕士学位论文,2008.
    [62]王东民.嵌入式多机系统软件安全平台的设计与实现[D].北京邮电大学硕士学位论文,2008.
    [63]赵国冬.安全嵌入式系统体系结构研究与设计[D].哈尔滨工程大学硕士学位论文,2006.
    [64]杨波.现代密码学[M].北京:清华大学出版社,2003:4-6,38-46.
    [65]Kan X.Encryption and Decryption:Software Protection Technique and Complete Resolvent.Beijing:Electronic Engineering Publishing Company,2001 (in Chinese).
    [66]Rivest R L,Adlem an L,Dertouzos M L. On Data Banks and Privacy Homomorphism [A]. Foundations of Secure Computation[C]. New Youk:Academic Press,1978.169-179.
    [67]Sander T, Tschudin C.Towards Mobile Cryptography[A]. In Proceedings of the IEEE Symposium on Security and Privacy[C],Oakland:IEEE Computer Society Press,1998:1-14.
    [68]XIANG Guang-li, CHEN Xin-meng, ZHU Ping, et al.A Method of Homomorphic Encryption[J]. Wuhan University Journal of Natural Sciences.2006,11(1):181-184.
    [69]朱正平,钟诚,陈东用.一种基于执行路径隐藏的软件水印算法[J].计算机应用研究,2006,(12):118-121.
    [70]刘泉,江雪梅.用于图像篡改定位和恢复的分层半脆弱数字水印算法[J].通信学报,2007,28(7):105-110.
    [71]沈静博,房鼎益,吴晓南,陈晓江.基于多常量编码的动态图软件水印保护技术[J].计算机工程,2006,32(20):160-162.
    [72]Monden A,Iida H,Matsumoto K,Inoue K etc..A Practical Method for Watermarking Java Programs[C].The 24th Computer Software and Applications Conference (compsac 2000),Taipei,Taiwan,2000:191-197.
    [73]Arboit G.A Method for Watermarking Java Program via Opaque Predicates[C].In:The Fifth International Conference on Electronic Commerce Research(ICECR-5),2002:124-131.
    [74]Cousot P,Cousot R.An Abstract Interpretation-based Framework for Software Watermarking[C].Proc.of POPL'04,New York:ACM Press,2004:173-185.
    [75]Nagra J,Thomborson C.Threading Software Watermarks[C].Proc.of IH'04,Toronto,Canada,2004:208-223.
    [76]Collberg C,Carter E,Debray S,et al.Dynamic Path-based Software Watermarking[C].Proc.of PLDI'04,New York:ACM Press,2004:107-118.
    [77]Venkatesan R,Vazirani V,Sinha S.A Graph Theoretic Approach to Software Watermarking[C].Proc.of IH'01,New York:ACM Press,2001:157-168.
    [78]Jen Palsberg,Sowmya Krishnaswamy,Minseok Kwon,Di Ma,Qiuyun Shao,Yi Zhang. Experience with Software Watermarking[C].In:Epstein J,et al.,eds.Pro.of the 16th Annual Computer Security Applications Conference(ACSAC 2000).New Orleans:IEEE Computer Society Press,2000:308-316.
    [79]Christian Collberg,Andrew Huntwork,Edward Carter,Gregg Townsend.Graph Theoretic Software Watermarks:Implementation,Analysis and Attacks[R].Technical Report TR04-06 2004.
    [80]Palsberg J,Krishnaswamy S,Minseok K,Ma D,Shao QY,Zhang Y.Experience with software watermaking.In:Epstein J,et al.,eds.Proceedings of the 16th Annual Computer Security Applications Conference(ACSAC 2000).New Orleans:IEEE Computer Society Press,2000.308-316.
    [81]Collberg C, Thomborson C. Watermarking, tamper-proofing, and obfuscation-tools for software protection[J].IEEE Transactions on Software Engineering,2002,28:735-746
    [82]Christian Collberg,Gingers,Andrew Huntwork.SandMark-A Tool for Software Protection Research[J], Journal of IEEE Magazine of Securith and Privacy,2003,1:40-49.
    [83]史扬,曹立明,王小平.混淆算法研究综述[J].同济大学学报自然科学版,2005,33(6):813-819.
    [84]徐海银,董九山,李丹.一种改进的软件加密自检测防篡改技术[J].信息安全与通信保密,2007,(03),87-88+91
    [85]邹宏,谢余强.混淆技术研究初探[J].信息工程大学学报,2008,9(1):97-99.
    [86]李丹,徐海银,李婷,董九山.基于软件行为指纹的自检测防窜改技术研究[J].计算机应用研究,2008,(06),1812-1814
    [87]孙宗姚.基于hash函数的软件防篡改技术[D].吉林大学硕士学位论文,2009.

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

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

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