与apk签名有关的那些概念与命令】的更多相关文章

一.概念篇 1.消息摘要-Message Digest 消息摘要:在消息数据上,执行一个单向的hash函数,生成一个固定长度的hash值,这个Hash值就是消息摘要,也成为数字指纹. 消息摘要特点: (1)无论输入消息多长,计算出来的消息摘要长度总是固定的: (2)不可逆性,通过摘要无法推算出消息本身: (3)如果修改了消息,摘要会发生变化(长明文生成短摘要的Hash必然会碰撞): 作用:只能保证消息的完整性,无法保证消息的防篡改.使用场景:文件下载的MD5校验. 消息摘要算法:MD5.SHA-…
什么是APK 了解APK签名之前,首先要知道什么是apk文件:APK是AndroidPackage的缩写,即Android安装包(apk),APK文件其实就是zip格式的文件,只是后缀被改为了apk,所以用任何能解压zip的软件都可以直接把一个APK文件解压出来,解压出来的东西如图(已签名的APK): APK签名 APK签名的意义 安全,每个发布的Android应用在升级的时候都需要保证签名和包名必须相同,这样如果有人使用了不一致的签名或篡改了我们的发布的apk包,系统将拒绝进行升级 权限管理,…
网上已有多篇分析签名的类似文章,但是都有一个共同的问题,就是概念混乱,混乱的一塌糊涂. 在了解APK签名原理之前,首先澄清几个概念: 消息摘要 -Message Digest 简称摘要,请看英文翻译,是摘要,不是签名,网上几乎所有APK签名分析的文章都混淆了这两个概念. 摘要的链接http://en.wikipedia.org/wiki/Message_digest 简单的说消息摘要就是在消息数据上,执行一个单向的Hash函数,生成一个固定长度的Hash值,这个Hash值即是消息摘要也称为数字指…
[转]通过apk签名使应用程序有系统权限 (2013-01-08 13:40:50) 转载▼ 标签: it 分类: Android 出处:http://blog.csdn.net/doom66151/article/details/7085464 问题: 系统预装软件,需要访问一些配置文件,配置文件的owner都是设置为system.所以应用程序需要有授权才可以读写. google搜索找到以下文章,解决了这个问题. 以下内容解释了: android系统权限规则? 如何使应用程序获取系统权限? a…
Android5.1.1 - APK签名校验分析和修改源码绕过签名校验 作者:寻禹@阿里聚安全 APK签名校验分析 找到PackageParser类,该类在文件“frameworks/base/core/java/android/content/pm/PackageParser.java”中.PackageParser类的collectCertificates方法会对APK进行签名校验,在该方法会遍历APK中的所有文件,并对每个文件进行校验.下面是该方法的部分源码: APK是一个ZIP格式的文件…
转载:http://www.cnblogs.com/tianguook/archive/2012/09/27/2705724.html 生成apk最懒惰的方法是:只要你运行过android项目,到工作目录的bin文件夹下就能找到与项目同名的apk文件,这种apk默认是已经使用debug用户签名的. 如果想要自己给apk签名: 1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一…
Cordova 3.5 为 Android APK 签名,生成可发布的 APK 程序文件  任侠  2014-06-07 00:04  移动开发  抢沙发  16,288 views  目录 [隐藏] (1)调试用APK (2)发布用APK   Cordova 编译 Android工程时,调用 Android SDK 的默认 build 过程,是基于Ant的. (1)调试用APK cordova build android 默认是debug模式,会使用 debug.keystore 来生成以下两…
朋友发来一个apk,需要分析其中的一些算法,分析过程涉及到了重新打包apk,打包后的apk运行失败,估计是apk内部有检验是否被篡改的代码.检验apk是否被篡改,简单的方法是直接校验签名,如果apk签名和预先设置的签名不同,则可以判定apk被篡改了. 获取签名函数: getPackageInfo 尝试在代码里查找此函数,找到好几处,每个地方都查看了一下,最后定位到如下代码: public static String getSignNumber(Context paramContext) { tr…
apk提交给应用市场加固后,需要重新签名 签名工具:360签名 下载地址:http://yunpan.cn/cm8GqVWL7Y8Eh 签名步骤:http://jiagu.360.cn/qcms/help.html#!id=84 命令行签名步骤: 利用标准的java工具keytool.exe(位于jdk\jre\bin目录下)创建key,利用jarsigner.exe工具使用生成的key来生成证书和给程序签名(位于jdk\bin目录下).Win +R 运行cmd,进入目录D:\temp(注:使用…
获取apk签名工具类 import android.content.Context; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.pm.Signature; import android.os.Build; import android.util.DisplayMetrics; import java.io.File; import…