QQ泡沫乐园 · 免费提供游戏辅助,破解软件,活动资讯,喜欢记得收藏哦!
综合软件_线报活动_游戏辅助_最新电影_最优质的的辅助分享平台

Android使用Java的数字证书相关的机制来给应用程序

网络 2022-12-06 03:06

核心提示:在Android系统中,所有安装到系统的应用程序都必有一个数字证书,Android 数字签名学习笔记,此数字证书用于标示应用程序的作者和在应用程序之间构建信任关系,如果一个 permission的protectionLevel为signature,那么就只有这些跟该permission所在的程序拥有同一个数字证书的应用

在Android系统中,所有安装到系统的应用程序都必有一个数字证书,此数字证书用于标示应用程序的作者和在应用程序之间构建信任关系,如果一个 permission的protectionLevel为signature,那么就只有这些跟该permission所在的程序拥有同一个数字证书的应用程序能够取得该权限。Android使用Java的数字证书相关的机制来给apk加盖数字证书,要理解android的数字证书,需要先了解以下数字证书的概念和java的数字证书机制。Android系统要求每一个安装进系统的应用程序都是经过数字证书签名的,数字证书的公钥则保存在程序开发者的手中。Android将数字证书拿来标示应用程序的作者和在应用程序之间构建信任关系,不是拿来决定最终用户可以安装什么应用程序。这个数字证书并不需要权威的数字证书签名机构认证,它只是拿来让应用程序包自我认证的。

同一个开发者的多个程序尽可能使用同一个数字证书,这可以带来以下益处。

(1)有利于程序升级,当新版程序和旧版程序的数字证书相同时,Android系统就会觉得这两个程序是同一个程序的不同版本。如果新版程序和旧版程序的数字证书不相同,则Android系统觉得她们是不同的程序,并形成冲突,会要求新程序修改包名。

(2)有利于程序的模块化设计和开发。Android系统容许拥有同一个数字签名的程序运行在一个进程中,Android程序会将她们视为同一个程序。所以开发者可以将自己的程序分模块开发,而用户只须要在须要的时侯下载适当的模块。

(3)可以通过权限(permission)的形式在多个程序间共享数据和代码。Android提供了基于数字证书的权限赋于机制,应用程序可以和其他的程序共享概功能或则数据给那这些与自己拥有相同数字证书的程序。如果某个权限(permission)的protectionLevel是 signature,则这个权限就只能授予这些跟该权限所在的包拥有同一个数字证书的程序。

疣迪搽剂没有效_没有有效的数字签名_无法获取有效签名信息

在签名时,需要考虑数字证书的有效期:

(1)数字证书的有效期要包含程序的预计生命周期,一旦数字证书失效,持有改数字证书的程序将不能正常升级。

(2)如果多个程序使用同一个数字证书,则该数字证书的有效期要包含所有程序的预计生命周期。

(3)Android Market强制要求所有应用程序数字证书的有效期要持续到2033年10月22日以后。

Android数字证书包含以下几个要点:

(1)所有的应用程序都必须有数字证书,Android系统不会安装一个没有数字证书的应用程序

上一篇:员工在部门表中的数据做法大全(二) 下一篇:没有了