1. 声明

当前内容主要为学习和使用Allatori这个代码混淆器的使用,主要为了混淆java代码

下载demo版的:

2. 基本demo

1. 解压后并在lib中找到这个

2.创建一个maven项目

3.在项目目录下创建lib目录,将jar包复制进去,并导入依赖(idea一样,只是导入依赖的方式不一样,下文中会说明)

4.在项目目录下创建一个allatori文件夹和在这个文件夹下面创建一个allatori.xml

5.开始编写主要的混淆配置信息:allatori.xml,该文件需要修改的就是config-input-jar的in和out

<?xml version="1.0" encoding="UTF-8"?>
<config><input><!-- 这里的in表示需要混淆的jar(springboot打包后的jar),out表示输出混淆后的jar(混淆器修改springboot打包后的jar) --><jar in="test.jar" out="test-output.jar" /></input><keep-names><class access="protected+"><field access="protected+" /><method access="protected+" /></class></keep-names><!--  忽略springBoot的启动项(防止启动报错)     --><ignore-classes><class template="class *springframework*" /></ignore-classes><property name="log-file" value="log.xml" /><!--    添加水印密匙,主要用来保护版权   --><!-- <watermark key="secure-key-to-extract-watermark" value="Customer: John Smith; Date: xx.yy.zzzz"/> --><!--  配置过期时间   --><!-- <expiry date="2000/01/01" string="EXPIRED!"/> -->
</config>

6.最后编写pom.xml(打包后使用混淆器)

如果使用idea需要先添加allatori.jar的依赖

<dependency><groupId>com.allatori</groupId>     <!-- 自定义即可 --><artifactId>allatori</artifactId>    <!-- jar名称 --><version>7.9</version>          <!-- 如果jar包未指定自定义即可--><type>jar</type><scope>system</scope><systemPath>${project.basedir}/lib/allatori.jar</systemPath>    <!-- 使用jar所在的绝对路径 --></dependency>

配置打包信息

<build><plugins><!-- springboot打包 --><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><executions><execution><goals><goal>repackage</goal></goals></execution></executions><configuration><fork>true</fork></configuration></plugin><!-- Allatori plugin start --><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}/target/allatori.xml</argument></arguments></configuration></plugin><!-- Allatori plugin end --></plugins></build>

3.开始打包和运行

用maven命令打包

打包完成之后在项目的target目录即可找到对应混淆的jar,名字就是在5中设置的out的名字

Allatori:代码混淆器的使用(EclipseIDEA)相关推荐

  1. JAVA代码混淆器大全

      JAVA代码混淆器大全 Author/Company Program Shrink. Optim. Obfusc. Preverif. License Eric Lafortune ProGuar ...

  2. 分享:几款代码混淆器(DotFuscator, .NET Reactor, xenocode)

    在介绍工具之前,我需要说明几点: 1.如果你编写的软件不涉及商业用途的话,本着开源的思想,本人不推荐使用代码混淆器 2.使用代码混淆器存在一定的风险,在使用前最好做好相关代码备份 3.凡是需要序列化成 ...

  3. Java培训分享5个常用Java代码混淆器

    对于Java程序员来说,如果辛辛苦苦写的代码被人摽窃走,将是一件非常恼火的事情.如何保护自己的代码呢,可以通过逆向工程反编译得到Java程序的源代码,这种反编译工具之一就是JAD,尽可能给反编译人员制 ...

  4. C/C++代码混淆器

    原文地址:https://foxzzz.com/c-cpp-disorder 试图通过混淆 C/C++源代码以达到保护知识产权的目的的做法其实就是自欺欺人,因为不论如何混淆代码,到了编译阶段代码终究是 ...

  5. 5个常用Java代码混淆器 助你保护你的代码

    [IT168 技术文档] 从事Java编程的人都知道,可以通过逆向工程反编译得到Java程序的源代码,这种反编译工具之一就是JAD.因此,为保护我们的劳动成果,尽可能给反编译人员制造障碍,我们可以使用 ...

  6. java代码混淆器proguard使用大法3种

    ProGuard注意事项 1.反射调用类或者方法,可能失败 2.对外接口的类和方法,不要混淆 3.嵌套类 4.native方法 5.枚举类 https://www.guardsquare.com/en ...

  7. vs 中自带的代码混淆器 Dotfuscator (图)

    研究了一下,确实可以起到一定的混淆代码作用.但是有几点需要注意一下: 1.未注册版本使用时不能混淆公共类库.公共方法等,所以使用时一些敏感的信息以及程序逻辑尽可能的现在 private 方法中. 2. ...

  8. ProGuard代码混淆器如何使用

  9. VBA 工程代码加密混淆器,保护你的宏作品

    个人制作的 VBA 代码加密混淆器,帮你加密你的宏代码,让它不再那么易读.因 VBA 的方便一直以来都喜欢用它写一些小工具,了解多了也就知道这种代码编写的工具完全没有安全性可言,工程密码形同虚设,很容 ...

  10. 代码混淆是什么?代码混淆的方法有哪些?

    一.什么是代码混淆?  代码混淆 (Obfuscated code)是将计算机程序的代码,转换成一种功能上等价,但是难于阅读和理解的形式的行为.代码混淆可以用于程序源代码,也可以用于程序编译而成的中间 ...

最新文章

  1. tokenizer.encode() 与 tokenizer.tokenize()对比,言简意赅 转 高人讲学
  2. 十问教主楼天城:身似小马心向远,恨未智行更早时
  3. STM32堆栈溢出的问题
  4. 微软发布自己定制的 Linux 内核和发行版,面向物联网
  5. python模块(5)-Matplotlib 简易使用教程
  6. 【博客话题】技术之路上的人和事
  7. 光盘DOS启动盘制作
  8. 自定义View来显示多条支付信息
  9. 一文详解工业相机和镜头选取
  10. U盘文件夹类型变成应用程序
  11. 缠中说禅股票交易系统图解 z
  12. 呼叫中心点击拨打接口升级代码
  13. 拿大厂机器学习岗offer,吐血整理的面试秘籍!
  14. Legend of Mir(传奇)官方源码学习2、运行试玩及GM命令
  15. 华为手机开启开发者模式
  16. 问题 A: 买牛奶  某同学负责给班里的同学买牛奶 ,每人两瓶。输入一个整数,表示班级人数。输出牛奶瓶数
  17. C++实现的BP神经网络(代码与详解)
  18. 利用粤嵌LinuxGEC6818开发板实现电子相册
  19. Python基础学习_函数数def_返回值及返回值类型_函数块
  20. windows与linux中,ping大数据包的命令格式

热门文章

  1. ltspice导入spice模型_LTspice 怎么自建 MOSFET 模型
  2. java表情包_大佬 java表情包 - 大佬 java微信表情包 - 大佬 javaQQ表情包 - 发表情 fabiaoqing.com...
  3. 衡量GDP,哪种夜间灯光数据更靠谱?
  4. java开发手册 - 码出规范 - 要点整理
  5. 线性代数-向量叉乘意义
  6. C++ Test的使用
  7. 从微软下载Vista Ultimate 中文旗舰版
  8. 光纤通信原理实验箱QY-JXSY03
  9. 家庭网络布线工程图布线方案
  10. 机房管理制度(试行)