|
......
}
对 findClass(String name){}方法进行处理:
//name 为 findClass(String name)待传入参数,先做如下处理
addname = name + "01357924680";
protected Class findClass(final String addname){
name = addname.substring(0,addname.length()-11);
...... //fingClass 其他工作
}
int len; //len = 待传文件 file 的长度:file.length()
byte[] classBytes = new byte[(int) len]; classBytes[len + 1] = 0x00; classBytes[len + 2] = 0x11;
//classBytes 作为 decrypt(byte[] classBytes)的传入参数
private static byte[] decrypt(final byte[] classBytes){
byte[] data = new byte[(int)classByte.lengt - 2];
for(int i = 0; i < data.length; i++)
data[i] = classBytes[i];
...... //解密工作
}
5. 结论 本文介绍了我针对 Java 类文件设计的保护方法,在众多方法中,我选择了对 Class 文件 进行加密这一思想,加密之后又对包含重要信息的方法进行代码混淆处理,这样就对文件起 到了双重保护的作用。经过在 Windows 平台上测试,效果良好,难以反编译,起到了很好 的保护作用。
共2页: 上一页 [1] 2 下一页 |