Android安全机制(3) APK 签名机制

前言

以前的Android安全机制(1)介绍过基于UID和GID的Android进程隔离机制,使用的是Linux的权限访问控制,控制文件和设备访问。Android安全机制(2)Android Permission权限机制是对Android安全机制的一个重要补充,控制了应用对于系统接口或者对外接口的访问。
这次介绍一下Android的APK签名机制。APK签名是Android安全的第一道防线,Android系统在安装APK的时候,首先会检验APK的签名,如果发现签名文件不存在或者校验签名失败,则会拒绝安装。另外签名被破解或者伪造的话,就等于整个APK都可能被伪造。

基础知识

数字摘要

数字摘要(Digital Digest),又称消息摘要(Message Digest)或数字指纹(Finger Print)。一段信息,经过摘要算法得到一串值,就是摘要(dijest)。摘要算法有MD5、SHA1、SHA256、SHA512等
1、信息是任意长度,而摘要是定长。例如应用MD5算法摘要的消息有128个比特位,用SHA-1算法摘要的消息最终有160比特位的输出,SHA-1的变体可以产生192比特位和256比特位的消息摘要。一般认为,摘要的最终输出越长,该摘要算法就越安全。
2、算法把无限的映射成有限,因此理论上可能会有碰撞(两个不同的信息,算出的摘要相同)
3、摘要不同于加密算法,因为不存在解密,因为从摘要反推原信息很难(可以认为能加密但无法解密还原)
4、HmacMD5/HmacSHA1/HmacSHA256等算法在对应的HASH算法之上增加了密钥的支持以提高安全性

非对称加密算法(私钥、公钥)

加密算法重要的概念是公钥和私匙。
先有私钥,再用函数生成公钥。公钥包含了私钥的信息,但也掺杂了其他随机变量,因此不能反推。
私匙不要泄露,公钥要告诉和你通信的对方。公钥加密,只有对应私钥能解开;私钥加密,只有对应公钥能解开。
具体有两种情形:
(1)对方用你的公钥加密信息,你收到后用私钥解开。只有你有私钥,所以只有你能解开,换句话说,有私钥才能看到信息,很安全。
(2)你拿私钥加密信息,对方收到后用你的公钥解开。公钥是公开的,所以其他人也可以看到你的信息,不保密。私钥加密࿰

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值