【安卓学习之打包过程】apk打包过程,文件的区别

来源:互联网 发布:古埃及人知乎 编辑:程序博客网 时间:2024/05/29 17:51

█ 相同源码,不同时间,导出的apk的区别(未加固,未签名):(打包两次的区别)

 这里写图片描述
 ● 只有classes.dex文件不同,其他文件都一模一样。此外该文件也是用来反编译出源码的关键文件。
 

█ apk签名前和签名后的区别:(未签名 ->已签名)

这里写图片描述
 ● 签名后的apk中多了META-INF这个文件夹,里面包含了三个文件,MANIFEST.MF、CERT.SF、CERT.RSA。
 

█ 相同apk(未加固,未签名),不同时间,签名后的apk的区别:(未加固Apk签名两次的区别)

 这里写图片描述
 ● 签名分别对同一个apk进行签名,两次签名后的apk是一样的。
 

█ apk加固前和加固后的区别:(已签名 ->未签名)

这里写图片描述

 ● apk在加固后,签名信息丢失,同时对classes.dex和AndroidManifest.xml文件进行加密。另外多生成了libjiagu_x86.so、libjiagu.so、.appkey三个文件。
 
这里写图片描述

█ 相同apk(已签名),不同时间,加固后的apk的区别:(加固两次的区别)

这里写图片描述
 ● 不同时段进行apk加固,classes.dex不同。此外,可能在\lib\x86文件中生成libjiagu.so文件。
 

█ apk(已加固)签名前和签名后的区别:

这里写图片描述

 ● 签名后的apk中多了META-INF这个文件夹,和之前一样。
 

█ 相同apk(已加固,未签名),不同时间,签名后的apk的区别:(已加固Apk签名两次的区别)

这里写图片描述
 ● 签名分别对同一个apk进行签名,两次签名后的apk是一样的。
 

 ######################################################## 

█ apk(未加固,未签名)和apk(已加固,未签名)的区别:

这里写图片描述

█ apk(未加固,已签名)和apk(已加固,已签名)的区别:

这里写图片描述

 ######################################################## 
 

█ 相同源码,不同时间,导出的apk并签名加固的区别(已加固,已签名):(整个过程的区别)

这里写图片描述

 ● 有时候libjiagu.so文件也会是一样的,虽然classes.dex不同。
 

█ 相关资料收集:

1.android安全学习之5—apk中的META-INF目录

  一、apk文件本身就是一个archive,是个类似于zip的文件,可以用解压软件直接解压。
  二、签名后的apk中多了META-INF这个文件夹,里面包含了三个文件,MANIFEST.MF、CERT.SF、CERT.RSA。
  1.MANIFEST.MF,列出了apk的所有文件,以及这些文件内容所对应的base64-encoded SHA1 哈希值。
  2.CERT.SF和MANIFEST.MF很相似,但是它描述的不是文件内容的hash值,而是列出了MANIFEST.MF这个文件中每条信息的hash值
  3.CERT.RSA,包含了对CERT.SF文件的数字签名以及签名时所用的platform.x509.pem这个数字证书(可以参考下节中对SignApk程序的分析)
  

转载请注明出处:
http://write.blog.csdn.net/mdeditor#!postId=78071605

原创粉丝点击