zoukankan      html  css  js  c++  java
  • android代码签名和混乱的包装

    研究了一下android的apk困惑签名和代码包装,假设没有混乱包。然后apk人们可以直接查看源代码反编译出来,尽管混乱包或能看懂。但不是那么容易理解,要求在至少一些时间

    假设不混淆,反编译后的代码例如以下:

    基本上就是源代码。

    假设混淆后,反编译后的代码例如以下:

    代码中出现非常多的a、b、c之类的变量命名,所以要读懂就具有一定的困难了!


    以下先说一下apk的签名:

    1.apk签名必须先弄一个key,怎样生成key呢?那么就要运用jdk来生成。

    首先必须把jdk在系统环境变量中配置好。

    这个就不多说了,这是使用java就必须配置好的。

    2.生成keystore


    执行cmd。然后使用cd 进入 C:Program FilesJavajdk1.6.0_10in>(也就是你C盘的安装jdk的位置)文件夹下,然后输入keytool -genkey -alias android.keystore -keyalg RSA -validity 50000 -keystore android.keystore


    參数意义:-validity主要是证书的有效期,写50000天。


    红色的android字样能够随便改成自己的命名。



    命令运行后会在C:Program FilesJavajdk1.6.0_10in>文件夹下生成 android.keystore文件。例如以下图:





    弄到apk后就能够打包了,而且带上自己的签名。

    在打包前我们须要加点东西来混淆代码。是我们打包后再反编译后无法正常查看代码。

    混淆代码事实上灰常简单。在须要打包的项目下找到 project.properties这个文件。打开然后在最以下加上一句话就ok了,例如以下图:

    低版本号的adt不是这样写的。高版本号就这样写就ok了,假设是低版本号的话是写成 proguard.config=proguard.cfg。只是如今一般都用不上了,都是搞版本号的。在高版本号中这样写就会在打包的最后步骤上报错:报错的大概内容是:

    invalid proguard configuration file path c:.../proguard.cfg dose not exist  or is not regular file


    加完后就能够签名打包apk了。

    在Eclipse界面点击 File-》Export...











    然后就能够了!成功到处带签名的混淆代码的apk。



    版权声明:本文博客原创文章,博客,未经同意,不得转载。

  • 相关阅读:
    Scrapy数据持久化
    Mybatis源码与Spring源码中设计模式的应用总结
    Count-Min Sketch 算法
    加解密算法、消息摘要、消息认证技术、数字签名与公钥证书
    智能卡系统设计(一) 断电保护和数据备份
    TCP/IP协议——ARP详解
    DES算法详解
    Python调用外部程序——os.system()和subprocess.call()
    Python实现截图
    Linux笔记:SSH客户端断开配置
  • 原文地址:https://www.cnblogs.com/yxwkf/p/4713800.html
Copyright © 2011-2022 走看看