Android:APK签名

在没有源代码的情况下,通过反编译apk修改以后重新打包的apk,需要重新签名才能安装。

1. 将JDK路径添加到PATH环境变量中:C:\Program Files\Java\jdk1.6.0_33\bin

2. 创建keystore

keytool -genkey -v -keystore fetion.keystore -alias fetion_sign -keyalg RSA -keysize 2048 -validity 20000

说明:为了不改动签名信息,首先通过jarsigner得到了原始的签名信息关于组织机构等的信息,具体见下面介绍获取签名信息的方法。

输入keystore密码:
再次输入新密码:
您的名字与姓氏是什么?
  [Unknown]:  高雷
您的组织单位名称是什么?
  [Unknown]:  北京新媒传信科技有限公司
您的组织名称是什么?
  [Unknown]:  新媒传信
您所在的城市或区域名称是什么?
  [Unknown]:  北京
您所在的州或省份名称是什么?
  [Unknown]:  北京
该单位的两字母国家代码是什么
  [Unknown]:  cn
CN=高雷, OU=北京新媒传信科技有限公司, O=新媒传信, L=北京, ST=北京, C=cn 正确吗?

  [否]:  是

正在为以下对象生成 2,048 位 RSA 密钥对和自签名证书 (SHA1withRSA)(有效期为 20,000 天):
         CN=高雷, OU=北京新媒传信科技有限公司, O=新媒传信, L=北京, ST=北京, C=cn
输入<fetion_sign>的主密码
        (如果和 keystore 密码相同,按回车):
[正在存储 fetion.keystore]

3. 给apk签名:

首先将原apk更名为rar文件,找到META-INF目录,将里面的文件全部删除。重命名为apk

jarsigner -verbose -sigalg MD5withRSA -digestalg SHA1 -keystore fetion.keystore fetion.apk fetion_sign

验证是否签名完成:

jarsigner -verify fetion.apk
jar 已验证。

如果需要知道更详细的信息:

jarsigner -verify -verbose -certs fetion.apk > sign.txt


以上仅供技术研究分析用途。

参考文档:

http://developer.android.com/tools/publishing/app-signing.html



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值