APK重签名总结】的更多相关文章

当我们需要修改已经打包好的apk中的某个文件时,比如改下图标,我们势必要采用反编译apk,改文件,重编译apk,重签名才行,参考:https://www.cnblogs.com/zndxall/p/9628475.html 但是如果我们不需要改apk里的东西呢,只是想重新签名一下,比如我们会有这样的场景需要验证,apk只能是我们自己的签名才能安装,如果其他人换用其他签名就会安装失败并报错签名不可用.这个时候我们只需要重新签名apk就可以了,如果还是采用反编译,删META-INF,重编译,再签名,…
对APK 进行在线 加固后,Apk体积一般会变大,而且Apk会无法直接安装,因为缺少了你的签名.是的,你需要对这个Apk进行重签名. 如何重签名 重签名的方法,一般来说,有两种,第一种是用JDK自带的 jarsigner 工具,用命令行来给指定Apk文件用指定的keystore文件对它进行重签名.第二种就是用可视化的签名工具 使用 jarsigner 工具 首先最好把 待签名的Apk文件和 用来签名的keystore 文件放在同一个目录,然后在目录下开启命令行. 输入指令(简陋版) jarsig…
方法一:命令行重签名 D:\>keytool -helpkeytool 用法: -certreq [-v] [-protected] [-alias <别名>] [-sigalg <sigalg>] [-file <csr_file>] [-keypass <密钥库口令>] [-keystore <密钥库>] [-storepass <存储库口令>] [-storetype <存储类型>] [-providernam…
因为robotium要求被测应用和测试代码要有一致的签名, 所以需要将apk包重签名. 方法一:通过re-sign.jar来产生debug key的apk(不适用于jdk 7以上) re-sign.jar 下载地址: http://download.csdn.net/download/sujuanxu/10229243 下载好后,双击运行re-sign.jar文件,将apk包直接拉到re-sign图标上,可能会报错,“tools目录下无zipalign.exe”,需要下载zipalign.exe…
转载(http://www.51testing.com/?uid-115892-action-viewspace-itemid-223023) 1.      生成Android APK包签名证书 1).     在doc中切换到jdk的bin目录 cd C:\Program Files\Java\jdk1.6.0_18\bin 2).     运行下面的命令 keytool –genkey –alias android123.keystore –keyalg RSA –validity 200…
keytool -genkey -alias aeo_android.keystore -keyalg RSA -validity 20000 -keystore aeo_android.keystore   jarsigner -digestalg SHA1 -sigalg MD5withRSA -verbose -keystore aeo_android.keystore -signedjar debug_signed.apk debug.apk aeo_android.keystore  …
Android反编译(三) 之重签名 [目录] 1.原理 2.工具与准备工作 3.操作步骤 4.装X技巧 5.问题 1.原理 1).APK签名的要点 a.所有的应用程序都必须有数字证书 ,Android系统不会安装一个没有数字证书的应用程序: b.Android程序包使用的数字证书可以是自签名的,不需要一个权威的数字证书机构签名认证: c.数字证书都是存在有效期的,Android只是在应用程序安装的时候才会检查证书的有效期.如果程序已经安装在系统中,即使证书过期也不会影响程序的正常功能. d.A…
使用jarsigner对APK重签名,提示:jarsigner: 无法对 jar 进行签名: java.util.zip.ZipException: invalid entry compressed size (expected 41278 but got 42575 bytes) 网上说解决办法是:把要重签名的apk后缀改成zip,打开后删除里面的META-INF目录,然后重新改成apk后缀 我采用的上面的方法,:unzip解压apk-->删除META-INF-->zip压缩成新的apk--…
准备: ① re-sign.jar重签名工具:(下载地址为:http://troido.de/downloads/category/1): ② 待重签名的apk:      重签名步骤: ① 右键re-sign.jar,在“打开方式”里,选择“Java(TM) Platform SE binary”选项,打开之后,显示如下:…
问题 打开re-sign.jar,将下载好的apk拖入re-sign.jar的界面进行重签名.重签名成功后,通过adb intall命令安装重签名后的apk文件失败.提示:Failure [INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION] 原因 通过在网上不断搜索,终于找到了问题的原因(见该篇文章评论中的10楼).即:resigner.jar进行重签名默认所使用的key文件在“user/.android/”路径下,叫“debug.keystore”.如果这个路…
背景介绍: 最近在做Robotium自动化测试,使用到solo.takeScreenshot()函数以在测试过程中截图,但此函数需要被测试APP具有<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />权限.在只有被测试APP的apk文件的情况下,修改apk文件后缀名为zip,解压缩后,修改AndroidManifest.xml文件,删除META-INF文件夹,重压缩为apk文…
apk 反编译大家都比较熟悉,这里只做一个笔记. 1 反编译 apk apktool d perfect.apk 这样就把资源文件解压缩了, classes.dex 也反编译成了 smali 文件 2 修改 smali 文件 得到 smali 文件,现在就可以对 smali 文件进行修改和添加自己的代码了. 当然可以进一步用  dex2jar (或者 enjarify) 处理将  dex 转成 java class 文件, 再用  jd-jui 等反编译成 java 代码. 现在 apk 基本都…
利用Robotinum对给的apk文件进行自动化测试,在不知道源码的情况下,只有apk文件如何进行自动化测试呢? 首先需要对apk文件进行重签名,并获得该apk文件的包名和程序入口的类名. 最开始网上说用re-sign.jar这个jar包,但是我用mac电脑实验了很多次都不行,一直提示JAVA_HOME环境变量没有设置,可是我已经设置了,echo $PATH输出也能看到JAVA_HOME,不过在Windows系统上实验是好的,可惜我是mac电脑,实验了好几个小时都不行,特别是在真心实意的请教测试…
1.      生成Android APK包签名证书 1).     在doc中切换到jdk的bin目录 cd C:\Program Files\Java\jdk1.6.0_18\bin 2).     运行下面的命令 keytool –genkey –alias android123.keystore –keyalg RSA –validity 20000 –keystore android123.keystore /*解释:keytool工具是Java JDK自带的证书工具 -genkey参…
本文源链接:http://blog.csdn.net/qq393830887/article/details/56025923 工具 Java环境 Apktool(这玩意有些坑爹,不是官网最新的就好,找到一个好用的版本号能少非常多坑) Apktool watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXEzOTM4MzA4ODc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravi…
1.      生成Android APK包签名证书1).     在doc中切换到jdk的bin目录cd C:\Program Files\Java\jdk1.6.0_18\bin2).     运行下面的命令keytool –genkey –alias android123.keystore –keyalg RSA –validity 20000 –keystore android123.keystore/*解释:keytool工具是Java JDK自带的证书工具-genkey参数表示:要生…
问题:在用re-sign.jar重签名apk文件后,显示重签名成功,但在实际安装过程中确提示:Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES] 原因:网上查找了下是重签名时出错了. 解决方法:使用命令行重签名,如: 1.生成重签名文件debug.store D:\>keytool -genkey -keyalg RSA -keystore debug.store -alias debug -keysize 2048 -validity 365 2.关联…
今天在家里电脑重签名过的apk拿到公司来用装到模拟器上,运行Robotium测试用例时,报了如下错误,原本以为是工程里的activity名称和包名写错了呢,检查了一遍发现木有错误呀.... 好吧,那我重新签名总可以吧,又用re-sign.jar重签名了一次,然后重装,报错依旧,没有解决问题... 只能问伟大的度娘了,终于解决了,现记录如下: [错误]: [2015-01-05 15:12:57 - WdjRobotiumTest] Test run failed: Permission Deni…
某些apk为了防止重打包,使用了签名校验.所以在破解的时候我们需要破解签名校验.在定位签名校验位置时常用的关键词有sign,signature,checkSign,signCheck,getPackageManager,getPackageInfo,verify,same等. java层签名校验代码示例: //原签名信息 private static final String SIGNATURE = "478yYkKAQF+KST8y4ATKvHkYibo="; private sta…
1.使用platform密钥对apk进行签名 1.1.进入<Android_Source_Path>/build/target/product/security,找到[platform.pk8]和[platform.x509.pem]系统密钥. 1.2.进入<Android_Source_Path>/build/tools/signapk找到SignApk.java,执行javac编译成SignApk.class 1.3.运行命令java com.android.signapk.S…
准备: ① re-sign.jar重签名工具:(下载地址为:http://troido.de/downloads/category/1): ② 从D:\Android\sdk\build-tools\25.0.1 中拷贝zipalign.exe 到 D:\Android\sdk\tools 目录下 ③ 待重签名的apk: 重签名步骤: ① 右键re-sign.jar,在“打开方式”里,选择“Java(TM) Platform SE binary”选项,打开之后,显示如下:          ② …
声明: 1.本文转载自:http://www.2cto.com/Article/201311/256406.html,为了留作日后参考上传博客 2.如有转载请复试上面连接,尊重原创 apk文件签名绕过 0x01 Android签名机制 将APK重命名为zip文件,然后可以看到有个META-INF的文件夹,里面有三个文件,分别名为MANIFEST.MF.CERT.SF和CERT.RSA,这些就是使用signapk.jar生成的签名文件. 1. MANIFEST.MF文件: 程序遍历update.a…
前言:开发iOS的朋友都知道,在功能开发完成后,我们就会用申请的苹果账号在后台做证书配置,然后提交到AppStore,但是也有部分APP我们不需要提交到AppStore,比如内部测试用的APP.定制给客户开发的功能性APP.还有其他一些不适合提交到AppStore的APP,那么这时候我们就仅需要针对特定的人群或部分手机设备来安装,最简单方式就是把需要安装的设备UDID作为测试机在配置文件中添加,最多可添加100台设备,另外一种方案就是采用企业证书重新打包,这样就不限制设备数量,相对来说简单,此外…
Android开发中很重要的一部就是用自己的密钥给Apk文件签名,不经过签名的Apk文件一般是无法安装的,就算装了最后也是失败. 网上流传的"勾选允许安装未知来源的应用"其实跟签不签名没啥关系,说白了就是允许安装不从电子市场上下载的应用而已. 近几日需要修改一个Apk中JNI调用的.so文件,苦于没有apk源代码,只好研究了一下签名相关的问题.当然有很多第三方工具可以做到,但其实JDK中已经提供了强大的签名工具jarsigner. 去除签名 其实很简单,用WinRAR打开apk,找到M…
Android项目以它的包名作为唯一标识,如果在同一设备上安装两个相同的应用,后面安装的应用就会覆盖前面安装的应用.为了避免这种情况的发生,我们需要对作为产品发布的应用进行签名. 签名其实有两个作用: (1) 确定发布者的身份.防止别人用相同包名来替换你已安装的程序. (2) 确保应用的完整性.签名会对应用包中的每个文件进行处理,以确保程序包中的文件不会被替换. 在应用的开发和调试阶段,Eclipse的ADT插件或ANT工具会自动生成调试证书,对Android应用签名.但是,如果要正式发布一个A…
1.将证书(debug.keystore)复制到与需要重新签名的apk文件相同的目录下(如:复制到D:\Sign) 2.在cmd中切换到需要重新签名的apk文件的目录下 3.使用WinRAR打开要重新签名的apk,删除META-INF下的两个签名文件(扩展名分别为RSA和SF) 4.运行下面的命令 jarsigner -verbose -keystore debug.keystore -signedjar PhoneBook_signed.apk PhoneBook.apk mine.keyst…
一.生成密钥库将位置定位在jdk的bin文件中,输入以下命名行:keytool -genkey -alias ChangeBackgroundWidget.keystore -keyalg RSA -validity 20000 -keystore ChangeBackgroundWidget.keystore(中间不换行),按下“Enter”键,并根据提示填写相关信息,详细信息如下及图1(validity为有效期,这里有效期为20000天):输入keystore密码:再次输入新密码:您的名字与…
一.命令行创建Android应用 android create project -n HelloWorld -t android-22 -p HelloWorld1 -k org.crazyit.helloworld -a HelloWorld 在上面的命令中,-n选项制定创建项目的名称:-t选项指定项目针对的Android平台;-p选项指定该项目的保存路径:-k选项指定该项目的包名:-a选项指定Activity的名称. 二.使用命令对APK包签名 1.创建Key store库(创建在bin目录…
在微信开放平台等申请API key 和secret时经常要用到apk文件签名,那么如何读取呢? 下面贴一下相关读取源码: 一共两个文件MainActivity和MD5, package com.lcg.gensinature; import android.app.Activity; import android.app.AlertDialog; import android.content.Context; import android.content.DialogInterface; imp…
推断Apk是否签名 用命令:jarsigner -verify -verbose -certs <apk文件> 假设有Android Debug字樣就是debug 假设已经签名: [证书的有效期为13-8-31 下午2:31至41-1-16 下午2:31] 推断Apk签名是否一致      jdk 须要安装: 想查demo.apk所使用的签名的fingerprint,能够这样做: 1. 查找apk里的rsa文件 Windows 平台: > jar tfdemo.apk |findstr…