侧边栏壁纸
博主头像
会飞的大象博主等级

爱运动的程序猿

  • 累计撰写 124 篇文章
  • 累计创建 162 个标签
  • 累计收到 1 条评论
标签搜索

目 录CONTENT

文章目录

代码混淆allatori

会飞的大象
2024-02-20 / 0 评论 / 0 点赞 / 478 阅读 / 770 字

代码环境工具官网 https://allatori.com/

1.配置pom添加如下plugin

      <plugin>
                <!--该插件主要用途:构建可执行的JAR -->
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <!--<version>${spring-boot-maven-plugin.version}</version>-->
<!--                <configuration>-->
<!--                    <includeSystemScope>true</includeSystemScope>-->
<!--                </configuration>-->
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>17</source>
                    <target>17</target>
                </configuration>
            </plugin>
            <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}/allatori</directory>
                                    <includes>
                                        <include>allatori.xml</include>
                                    </includes>
                                    <filtering>true</filtering>
                                </resource>
                            </resources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <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}/lib/allatori.xml</argument>
                    </arguments>
                </configuration>
            </plugin>

上传jar与编写xml文件

上传路径如下所示
image

xml文件内容

<config>
    <input>
        <!-- in表示输出的原始jar包,out表示输出的混淆后的jar包,后者名称可自定义,也可以是war -->
        <jar in="../target/electronic-seal-service-1.0.0.jar"
             out="../target/electronic-seal-service-1.0.0-test.jar"/>
    </input>
    <keep-names>
        <class access="protected+">
            <field access="protected+"/>
            <method access="protected+"/>
        </class>
    </keep-names>

    <property name="log-file" value="log.xml"/>

    <!-- 忽略的包或类,这些文件将不被混淆 -->
    <ignore-classes>
        <!-- 不要混淆主类 -->
        <class template="class cn.byzk.electronicSeal.startCore.SealStartCoreApplication"/>
        <!-- 不要混淆第三方的代码,否则会运行jar包会报错java.lang.NoClassDefFoundError -->
        <class template="class org.dom4j.*" />
        <class template="class akka.actor.*" />
        <class template="class *alibaba*" />
        <class template="class *org*" />
        <class template="class *rabbitmq*" />
        <class template="class *springframework*" />
        <class template="class *lombok*" />
    </ignore-classes>

    <!-- 到期时间(到期后无法启动jar) 格式:yyyy/mm/dd-->
    <!--<expiry date="2021/04/03" string="SERVICE EXPIRED!"/>-->
    <!-- 随机命名混淆字符-->
    <!--<property name="random-seed" value="abcdef ghnljk svi"/>-->

</config>

3.打包,生成一个带test的混淆包

image-1708419425762

0

评论区