`

APKTool签名的一个问题

 
阅读更多

0x01 昨天写了反编译,今天就写下签名的问题

 

0x02 apktool的重打包功能大家都知道,堪称神器,各类破解人事必备之良器,

         用法不多说,只说签名容易遇到的问题

0x03 创建私钥仓库这个事情就不多说,方法很多,eclipse和keytool       都有类似功能

        需要注意的是,这个私钥仓库一共有两个密码,一个是私钥仓库的密码(storepass),另一个则是仓库里面每一个私钥对应一个密码(keypass),都是需要记住的。一个私钥仓库可以有多个私钥。

 

        换句话说每个私钥仓库创建的时候,这几个参数是要记录的

-storepass 123456789 私钥仓库的密码

-keypass    1987XXXX   私钥的密码

-keystore  F:\\webattack\android\AndroidMasterKey_icefish.key  私钥仓库文件在哪

icefish              私钥的名称

 

 

0x04   下来就是签名的东西了,jarsigner

用法 jarsigner -help可以看到。

这里面比较关键的几个参数

-storepass   -keypass  -keystore  上面的都说了,

 

-verbose  输出详细信息

特别注意的是  -signedjar 这个参数,他一共有三个选项,第一个是签名后的apk文件名,第二个选项是需要签名的apk路径,第三个很关键,就是前面提到的私钥的名称了。

一个常见的如下所示

jarsigner -verbose -keystore F:\\webattack\android\AndroidMaster
Key_icefish.key -storepass 123456789 -keypass 1987XXXX -signedjar Modify_signed.
apk F:\\webattack\android\result\ModifyCompile\Modify.apk icefish

 

 

0x05 在实际使用中,我们成功打包,成功签名,然后Android机子上一装,报错:

 10-14 07:06:50.223: W/PackageParser(61): java.lang.SecurityException: META-INF/ICEFISH_.SF has invalid digest for res/menu/main.xml in /data/app/vmdl-2089432299.tmp

   

甚至没有改动任何代码的直接签名都报这个错。

原因如下:

http://hardpass.iteye.com/blog/1534636

   

   实质就是jdk7改变了jarsigner的默认选项,不再是SHA 128了,而是变成了SHA256,

   这样Android 模拟器就验证不对了

   解决办法就是再jarsigner的调用中在强制设置摘要算法

   -digestalg SHA1 -sigalg MD5withRSA

 

这样就可以了。

 

 

 

分享到:
评论

相关推荐

    apk签名工具apktool

    apk签名工具apktool,使用APKSign.exe这个来进行apk签名

    apktool签名工具

    apktool签名工具,1.安装JAVA。 2.完成安装后在桌面我的电脑上点右键,按以下步骤点击:属性>高级>环境变量,在下面的“环境变量”点击新建,创建两个系统变量:[1.变量名:JAVA_HOME 变量值:C:\Program Files\Java...

    Android apktool及签名工具

    apk包的反编译用Apktool工具,可以去https://bitbucket.org/iBotPeaches/apktool/downloads下载最新的apktool.jar包,Auto-sign是签名工具,只有签名后的apk才能使用

    apktool和签名工具

    apktool和签名工具,解压了就可以用了,先用apktool反编译apk,改好了代码再用apktool翻译成apk,最后用签名工具签名,apk就可以安装使用了。

    apktool 编译打包apk 签名

    这里面包含apktool可以将反编译的文件打包成apk文件,同时也包含一个数字签名文件,使打包的程序能够安装在设备上!

    ApkTool反编译回编译签名

    包括apktool1.5.2.tar、apktool-install-windows-r05-ibot.tar Auto-sign 三个压缩包和操作说明,网上的一些涉及到这些压缩包的教程都需要一个个下载,现整合到一起。网上有一些带图形界面的或者按照提示选择序号的...

    Apktool signapk.jar 可签名

    主要原因是因为使用apktool编译回没有签名. 所以不能安装, 而ApkToolKitV3.0 编译回去是签名了的. 用apptool编译后, 再使用signapk.jar签名就可以了. java -jar signapk.jar testkey.x509.pem testkey.pk8 test.apk ...

    apktool文件包(回编译用)含签名必须文件

    apktool文件包(回编译用)含签名必须文件com.htc.resources.apk和framework-res.apk

    apktool(包含签名文件)

    android apk反编译与重编译工具

    APK反编译 签名 修改工具Tool+v1.59.1免安装版

    Apk简易工具是一个轻量级的图形用户界面应用程序,使您能够管理,签名,编译和反编译APK文件的应用程序,你正在工作。 APK简易工具是绝对免费的商业和非商业用途。 请注意:这个工具不是为新手准备的,而是为那些懒...

    APKtool安卓反编译V1.2-新增签名.zip

    APKtool安卓反编译V1.2-新增签名

    ApkTool1.5.2中文版

    2 将反编译的APK重新编译 在当前目录生成2个文件 1个签名的和一个未签名的 3 反编译dex odex 转smali文件 4 将反编译的dex odex 重新编译成dex文件 5 将dex转成jar 具体使用方法请自行百度">apktool是一款功能最...

    ApkTool_GUI_1.3.5

    重建apk(貌似会直接生成一个未签名和一个已签名的apk文件) 签名 反编译dex 重建dex dex转jar(转为jar后就可以直接用jd-gui看代码了) 使用方法: 首先要安装java sdk 然后将apktool-gui和需要反编译的apk文件放在同一...

    ApkTool助手 2.48 apk修改工具_开发者常用工具

    ApkTool助手是一款集成了android apk编译、ADB调试、转换签名文件、smali文件编辑等功能于一体的软件。软件可以直接运行,无需安装。 其中apk编译功能依赖apktool,需要Java环境支持;ADB调试功能需要ADB环境支持...

    用于反编译、签名、证书制作、修改apk的工具(包括apktool)

    1、本工具用来编译及反编译apk 【用于自作个性化的apk】 2、可以自作自己的证书【用于自作的证书签名专属... signapk基于android默认签名,JarSigner基于自己的xxx.keystore签名 请自行修改 APKTool.cmd的批处理命令

    android安全测试,apktool工具使用

    apktool反编译工具工具包,使用说明,二次打包,使用jdk生成秘钥,apktool签名的操作方法

    反编译APK工具apktool

    反编译APK工具apktool apktool d apk文件 目标目录

Global site tag (gtag.js) - Google Analytics