计算机工程与应用 ›› 2012, Vol. 48 ›› Issue (26): 66-70.

• 研发、设计、测试 • 上一篇    下一篇

基于虚拟机的软件保护研究与设计

张丽娜1,阎文斌2   

  1. 1.西安科技大学 计算机科学与技术学院,西安 710054
    2.北京邮电大学 软件学院,北京 100876
  • 出版日期:2012-09-11 发布日期:2012-09-21

Research and design of software protection based on virtual machine

ZHANG Lina1, YAN Wenbin2   

  1. 1.School of Computer Science and Technology, Xi’an University of Science and Technology, Xi’an 710054, China
    2.School of Software Engineering, Beijing University of Posts and Telecommunications, Beijing 100876, China
  • Online:2012-09-11 Published:2012-09-21

摘要: 虚拟机技术一直是当今计算机安全领域研究的热点之一。从软件保护的角度出发,介绍了基于虚拟机的软件保护设计方案中的关键技术,并给出了一个范例,说明具体步骤和方法。该方法将保护对象细化为函数,给出了单函数识别的具体步骤和方法,利用基本的x86编码来构造虚拟机,对基本指令集采用基于字节码的加解密技术,此外还对各类指令进行了必要的模块化扩展以增加保护力度。目前国内对于虚拟机的保护技术处于起步阶段,因而对于虚拟机技术的理论基础研究和技术实践应用均具有较高的研究价值和发展空间。

关键词: 虚拟机, x86体系结构, 加密

Abstract: Virtual machine technique is one of the hot topics in the research field of computer security. From the viewpoint of software protection, the key technologies of software protection based on virtual machine are given. In order to illustrate the specific steps and methods, an example is presented. In the design, the protection objects are defined as functions and the corresponding methods of single-function identifying are discussed. Using basic x86 codes, the virtual machine is constructed, then the basic instruction set is processed by encryption and decryption technology based on bytecode. In addition, the necessary modular expansion of instructions is given in order to increase the strength of protection. The virtual machine technique for software protection is in its infancy and growing stage. Therefore the related researches and applications based on virtual machine technique have high research value and huge developing space.

Key words: virtual machine, x86 architecture, encryption