购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3结束语

本文针对指挥信息系统的特点及指挥信息系统软件面临的两大主要威胁——逆向分析和篡改,设计了一种基于代码加密的软件防护方法。使用分块加密的方式对关键代码进行链式保护,在代码中插入哨兵实现对加密代码的解密和再加密功能。将各个代码块的解密密钥保存在硬件加密锁中。程序运行时首先检查加密锁并从加密锁中取出响应密钥进行解密执行代码,相比较传统的加密和基于加密锁的软件保护,这种方式通过分块加密和链式保护,使得软件在正常运行过程中也只有小部分关键代码处于明文状态,有效抵抗内存dump攻击,大大延缓了在密码锁丢失情况下软件被破解的速度;结合了加密和加密锁两种方式的优点,尽可能地减少加密锁参与软件正常运行的活动,仅将解密所必需的密钥保存在加密锁中,克服加密锁运行速度慢,存储空间小,与计算机交互时间开销大的缺点;使用密码学算法保护关键代码安全,使用硬件加密锁保护密钥安全,在减小开销的情况下,没有减弱保护的强度。

下一步,计划对整个方案进一步进行改进,针对目前对于静态分析有很强的防护能力,但对于得到加密锁后的动态调试,在防护强度上略显不足的问题,在程序中加入检测调试的监测点或者哨兵,当发现程序运行在虚拟机或者调试器下时,采取针对性的措施对攻击者进行迷惑。

参考文献

[1] Collberg C.S.,Thomborson C.Watermarking,tamper-proofing,and obfliscation-tools for software protection[J].IEEE Transactions on Software Engineering,2002,28(8):735-746.

[2] Elliot J.Chikofsky,James H.Cross.Reverse Engineering and Design Recovery:A Taxonomy[J].IEEE software,1990,7(1):13-17.

[3] 王怀军.白盒环境中防动态攻击的软件保护方法研究[D].西北大学,2014.

[4] Orschot P.C.Revisiting software protection:The 6th International Information Security Conference,Bristol,UK,2003[C].Springer-Verlag.

[5] Lee Jaewon,Kim Heeyoul,Yoon Hyunsoo.Tamper Resistant Software by Integrity Based Encryption[J] . Division of ComputerScience Department of EECS,KAIST,2004,3320:608-612.

[6] Jin H.,Myles G.,Lotspiech J.Towards better software tamper resistance[C].Proc of 8th Int Conf Information Security,Berlin,2005.Springer.

[7] Jiao Hongxia,Lotspiech J.Forensic analysis for tamper resistant software[C].IEEE Computer Society,Proc of the 14th Int Symp on Software Reliability Engineering,Wshington,2003.

[8] Jin H.,Lotspiech J.Proactive software tampering Detection:[C].Proc of Information Security,6th Int Conf.,Berlin,2003.Springer.

[9] Wang Ping,Kang Seok-kyu,Kim Kwangjo.Tamper Resistant Software Through Dynamic Integrity Checking[C].Proceedings of The 2005 Symposium on Cryptography and Information Security,2005.

[10] Aucsmith D.Tamper Resistant Software: An implementation[C].Proc of the 1 st Int Workshop on Information Hiding,Berlin,1996.Springer.

[11] 康绯,王乾,肖亚南,等.基于软件执行轨迹差异比对的关键函数定位技术研究[J].通信学报,2013,34(9):177-184.

[12] Beck Fabian,Dit Bogdan,Velasco Madden,et al.Rethinking User Interfaces for Feature Location[C].2015 IEEE 23rd International Conference on Program Comprehension,2015.

[13] Koschke Rainer,Quante Jochen.On Dynamic Feature Location[C].Proceedings of the 20th IEEE/ACM International Conference on Automated software engineering,California,USA,2005.IEEE.

[14] Hoi Chang,Mikhail J.Protecting software code by guards[J].Lecture Notes in Computer Science,2002,2320:160-175.

[15] 刘磊,张晶,赵健,等.程序分析方法[M].北京:机械工业出版社,2013.

[16] 余祥,李强,何海洋.基于加密锁的指挥信息系统软件防护问题研究[J].指挥与控制学报,2015,1(4):448-452.

[17] 段钢.加密与解密[M].第2版.北京:电子工业出版社,2003. c8tBonMQmgnL8xrzk+E/D6zeGCjUiLEGvT5rzoy/PTFtV8TXtEhBNJatWZfNt45q

点击中间区域
呼出菜单
上一章
目录
下一章
×