java源代码加密+使用proguard混淆java web项目代码+自定义Classloader

本文介绍了两种保护Java源代码的方法:使用ProGuard混淆代码和自定义ClassLoader进行加密解密。详细讲述了ProGuard的配置和使用过程,并提供了一个DESEncryptUtil类的示例,该类用于生成、加密和解密数据,可用于自定义ClassLoader中实现源代码的加密解密。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

               

如何保护我们的源代码,实际上,应该有几种方法可以使用:1、使用代码混淆器 2、重载应用服务器的classloader

使用代码混淆器proguard进行代码混淆

1.首先下载proGuard.zip到本地: proguard4.5beta4.tar.zip解压开,
2.新建文本文档,修改文件名为XXX.pro,然后复制下面内容到.pro

-injars 'Y:\src.jar' #需要混淆的jar-outjars 'Y:\java\src.jar' #输出jar-libraryjars 'C:\java\jre6\lib\rt.jar' #必须的系统类库-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\activation-1.1.jar' #项目需要的jar-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\ant.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\antlr-2.7.6.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\asm-attrs.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\asm.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\aspectjrt.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\aspectjweaver.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\axis-ant.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\axis.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\backport-util-concurrent.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\bsf-2.3.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\bsh-2.0b4.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\c3p0-0.9.1.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\cfgatewayadapter.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\cglib-2.1.3.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\ckeditor-java-core-3.5.3.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\CKFinder-2.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\CKFinderPlugin-FileEditor-2.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\CKFinderPlugin-ImageResize-2.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\cmpp3.0-java.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-attributes-api.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-attributes-compiler.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-beanutils-1.8.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-codec-1.3.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-collections-3.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-configuration-1.6.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-dbcp-1.2.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-discovery-0.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-fileupload-1.2.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-io-2.0.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-lang-2.3.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-logging-1.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-logging-api-1.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-pool.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\commons-validator-1.3.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\concurrent.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\dom4j-1.6.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\dwr.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\ehcache-1.5.0.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\ejb3-persistence.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\fckeditor-java-core-2.4.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\freemarker-2.3.15.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\generic-hession-api-0109.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\gson-1.7.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\hessian-4.0.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\hibernate-annotations.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\hibernate-commons-annotations.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\hibernate-entitymanager.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\hibernate-validator.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\hibernate3.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\im4java-1.3.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jackson-core-asl-1.3.0.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jackson-mapper-asl-1.3.0.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jakarta-oro-2.0.8.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\Java2Word.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\javassist-3.4.GA.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jaxrpc.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jboss-archive-browsing.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jdbc2_0-stdext.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jdom.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jetty-6.1.24.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jetty-plus-6.1.24.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jetty-util-6.1.24.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jsf-api.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jsf-impl.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\json-lib-2.3-jdk15.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\json_simple-1.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jstl-1.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jstl-api-1.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jstl-impl-1.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jta.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\jtds-1.2.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\junit.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\log4j-1.2.15.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\mail-1.4.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\mysql-connector-java-5.1.22-bin.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\ognl-2.7.3.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\ojdbc5.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\p6spy.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\pager-taglib.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\poi-3.6-20091214.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\quartz-all-1.6.6.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\servlet-api-2.5-20081211.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\SimpleAPI.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\sitemesh-2.3.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\slf4j-api-1.5.8.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\slf4j-log4j12-1.5.8.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\spring.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\standard.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\struts2-core-2.1.8.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\struts2-dojo-plugin-2.1.8.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\struts2-json-plugin-2.3.1.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\struts2-sitemesh-plugin-2.1.8.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\struts2-spring-plugin-2.1.8.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\struts2-sunspoter-stream-1.0.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\Thumbnailator-0.3.10.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\urlrewrite-2.6.0.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\velocity-1.7.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\velocity-tools-2.0.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\wsdl4j-1.5.1.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\xalan.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\xstream-1.2.2.jar'-libraryjars 'Y:\kf\WebRoot\WEB-INF\lib\xwork-core-2.1.6.jar'-dontskipnonpubliclibraryclassmembers-target 1.5-dontshrink-dontoptimize-useunique
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值