用Allatori对java代码进行混淆
作者:互联网
1、去官网下载最新jar包
https://allatori.com/
2、在所需混淆的项目中根目录创建lib文件夹,并将下载到的2个jar粘进去
allatori.xml文件中的配置如下
<?xml version="1.0" encoding="utf-8"?> <config> <input> <!-- in表示输出的原始jar包(这里建议先用maven打包一下,看一下输出的文件名),out表示输出的混淆后的jar包,后者名称可自定义,也可以是war --> <jar in="auth-server.jar" out="auth.jar"/> </input> <keep-names> <class access="protected+"> <field access="protected+"/> <method access="protected+"/> </class> <!-- 视图层的方法参数名称不做混淆,否则传参会对应不上,不怕麻烦的也可以加@RequestParam指定入参名称 --> <class template="class *Controller"> <method template="private+ *(**)" parameters="keep"/> </class> </keep-names> <property name="log-file" value="log.xml"/> <!-- 忽略的包或类,这些文件将不被混淆 --> <ignore-classes> <class template="class *springframework*" /> <class template="class *shardingjdbc*" /> <class template="class *jni*" /> <class template="class *alibaba*"/> <class template="class *persistence*"/> <!-- 排除业务类(如果有更多,按需复制即可) --> <class template="class com.sun.authserver.config.*"/> <class template="class com.sun.authserver.component.*"/> <class template="class com.sun.authserver.controller.*"/> <!-- 这个是排除启动类 --> <class template="class com.cn.inspection.authserver.AuthServerApplication"/> </ignore-classes> <!-- 到期时间(到期后无法启动jar) 格式:yyyy/mm/dd--> <!--<expiry date="2021/04/03" string="SERVICE EXPIRED!"/>--> <!-- 随机命名混淆字符,默认用当前时间,每次打包混淆的类名、变量名都不一样,如果做了配置那么两次打包内容就一样--> <!--<property name="random-seed" value="abcdef ghnljk svi"/>--> </config>
3、在pom.xml中添加配置,以下配置基本不用变,注意,是插入到<plugins>标签中
<!-- Allatori 混淆配置文件输出到target --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>2.6</version> <executions> <execution> <id>copy-and-filter-allatori-config</id> <phase>package</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${basedir}/target</outputDirectory> <resources> <resource> <directory>${basedir}/lib</directory> <includes> <include>allatori.xml</include> </includes> <filtering>true</filtering> </resource> </resources> </configuration> </execution> </executions> </plugin> <!-- Allatori 插件 --> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>1.2.1</version> <executions> <execution> <id>run-allatori</id> <phase>package</phase> <goals> <goal>exec</goal> </goals> </execution> </executions> <configuration> <executable>java</executable> <arguments> <argument>-Xms128m</argument> <argument>-Xmx512m</argument> <argument>-jar</argument> <argument>${basedir}/lib/allatori.jar</argument> <argument>${basedir}/target/allatori.xml</argument> </arguments> </configuration> </plugin> <!-- Allatori plugin -->
4、最后maven install即可
打包前的效果
打包后的效果
标签:xml,混淆,java,lib,Allatori,basedir,jar,maven,allatori 来源: https://www.cnblogs.com/thesun/p/16266461.html