allatori8.0文档翻译-第一步-基本类库混淆

第一步-基本类库混淆

下面表格中的文件位于: tutorial/step01/files

文件名说明
test.jar鼠标手势demo的jar
config.xmlAllatori 配置文件
RunAllatori.batAllatori运行脚本
MouseGesturesOriginal.bat运行原始的鼠标手势
MouseGesturesObfuscated.bat运行混淆后的鼠标手势
Clean.bat删除混淆过程生成的文件
mousegestures-1.2.jar鼠标手势类库

第一步,我们将混淆“鼠标手势”这个典型的类库,其中所有public API方法不会被重命名。所有使用“鼠标手势”这个类库的应用都可以使用混淆后的jar。当开发用于第三方产品的类库时,这种情况很常见。

运行RunAllatori.bat会产生3个文件:obf-mousegestures-1.2.jarobf-test.jar是被混淆后的“鼠标手势”jars ,log.xml是混淆处理过程的日志文件。

现在,你可以运行 MouseGesturesOriginal.batMouseGesturesObfuscated.bat 测试应用的原始版本以及混淆版本。请注意,Allatori 的演示版将 System.out 添加到混淆的应用程序中。

让我们看看config.xml:

<config>
    <input>
        <jar in="test.jar" out="obf-test.jar"/>
        <jar in="mousegestures-1.2.jar" out="obf-mousegestures-1.2.jar"/>
    </input>

    <keep-names>
        <class access="protected+">
            <field access="protected+"/>
            <method access="protected+"/>
        </class>
    </keep-names>

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

“jars”的节点中定义了输入和输出的jar文件。如果输入输出使用的相同的文件名称,混淆后的jar文件会覆盖原始文件。

在“ keep-names”节点定义的类、方法和成员名称不会被改变。当我们混淆类库时,通过将“access”属性设定为“protected+”,来公开所有外部可见的类。这意味着,所有“protected”、“public”的东西将保持名称不变。

“log-file”属性定义日志文件的名字。如果你不需要混淆过程的日志,可以删除这个属性标签。关于日志文件的例子可以参考第8步

执行Clean.bat会删除obf-mousegestures-1.2.jar*, obf-test.jar 以及 log.xml 三个文件.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值