摘要: 代码反编译和逆向工程使软件安全受到严重威胁。针对该问题,根据Java编译器(JAVAC)与Java虚拟机(JVM)的语法特征差异,提出一种基于JAVAC与JVM特征的代码保护方案。给出修改标识符名和中断赋值2种混淆技术,加大程序的复杂度,降低程序的可读性,阻止反编译和逆向工程的自动进行。安全性与性能分析结果表明,该方案可行、有效。
关键词:
混淆技术,
标识符,
反编译器,
代码保护,
类文件
Abstract: Code decompilation and ereverse engineering is a serious threat to software security, so software protection becomes one important problem. The code obfuscation techniques can increase the complexity of the program, reduce the readability of the program, and effectively prevent automatical reverse engineering and decompilation. Based on the grammar characteristic difference of Java Compiler(JAVAC) and Java Virtual Machine(JVM), the confusing technology of modification of identifier and interruption assigning are presented. Security and performance analysing show the solution is feasible and efficient.
Key words:
confusing technology,
identifer,
decompiler,
code protection,
class file
中图分类号:
付剑晶. 基于JAVAC与JVM特征的代码保护[J]. 计算机工程, 2010, 36(11): 164-166,169.
FU Jian-Jing. Code Protection Based on Feature of JAVAC and JVM[J]. Computer Engineering, 2010, 36(11): 164-166,169.