android apk 签名

来源:互联网 发布:清华大学网络 编辑:程序博客网 时间:2024/05/28 14:56
1.有用链接
  1. 签名的文档:http://android-dls.com/wiki/index.php?title=Generating_Keys
  2. 别人的签名的总结:http://www.cnblogs.com/wanqieddy/p/3556060.html
 
2.签名的作用
(1) Android系统要求所有的程序经过数字签名才能安装,如果没有可用的数字签名,系统将不许安装运行此程序。
(2)
 
3.步骤
 
方法1:使用keytool和jarsigner签名(这两个文件都在jre包里面)
 
(1) 利用keytool 生成keystore
keytool -genkeypair -keystore keystorename -storepass keystorepassword -keyalg RSA -validity $((25 * 365)) -alias keyalias -keysize 2048 -dname "CN=J Random Hacker, O=HackerCo, L=Anytown, ST=Anystate, C=US"

  

 
(2)利用jarsigner 根据keystore对apk进行打包
  1. 对未签名的apk签名:jarsigner -verbose -keystore keystorename apkfilename keyalias
  2. 对已经签名的apk签名:jarsigner -verbose -keystore keystorename -signedjar signedapkfilename apkfilename keyalias
(3)检查apk是否已经签名:
jarsigner -verify -verbose -certs apkfilename
 
方法2:使用SignApk进行签名
signapk下载:http://android.pocitac.com/download/old/tutorials/
android原生的各种签名的key文件:https://android.googlesource.com/platform/build/+/master/target/product/security/
 
 
(1)利用openssl生成签名文件
openssl genrsa -out key.pem 1024openssl req -new -key key.pem -out request.pemopenssl x509 -req -days 9999 -in request.pem -signkey key.pem -out certificate.pemopenssl pkcs8 -topk8 -outform DER -in key.pem -inform PEM -out key.pk8 -nocrypt

  

 
(2)利用SignApk对apk签名
java -jar SignApk.jar certificate.pem key.pk8 Application.apk Application_signed.apk

  

 
 
0 0
原创粉丝点击