Android官方文档

https://source.android.google.cn/devices/tech/ota/sign_builds?hl=zh-cn
https://android.googlesource.com/platform/build/+/refs/heads/master/target/product/security/README

前言

Android 操作系统映像在三个地方使用加密签名:

  1. 映像中的所有 .apk 文件都必须经过签名。Android 软件包管理器通过下列两种方式使用 .apk 签名:

    • 更换应用时,必须使用与旧应用相同的密钥对其签名,才能存取旧应用的数据。无论是通过覆盖 .apk 来更新用户应用,还是使用安装在 /data 下的新版本应用来覆盖系统应用,这一点都适用。
    • 如果两个或多个应用想要共享同一个用户 ID(方便共享数据等),则必须使用相同的密钥对它们进行签名。
  2. 必须使用符合系统预期的密钥对 OTA 更新包进行签名,否则在安装过程中 OTA 更新包将被拒绝。
  3. 必须使用符合系统预期的密钥对img进行签名,否则flash img后verity boot将失败而不能正常启动

生成key

生成releasekey platform shared media networkstack

subject='/C=CN/ST=Shanghai/L=Shanghai/O=Android/OU=Android/CN=Android/emailAddress=android@android.com'
for x in releasekey platform shared media networkstack; do \./development/tools/make_key ~/.android-certs/$x "$subject"; \done

生成 verity_key

make generate_verity_key
development/tools/make_key verity   '/C=CN/ST=Shanghai/L=Shanghai/O=Android/OU=Android/CN=Android/emailAddress=android@android.com'
out/host/linux-x86/bin/generate_verity_key -convert verity.x509.pem verity_key

拷贝key

将以上两部份生成的key,拷贝到build/target/product/security,替换掉原来的key

生成key的参数解释

  • C — Country Name (2 letter code)
  • ST — State or Province Name (full name)
  • L — Locality Name (eg, city)
  • O — Organization Name (eg, company)
  • OU — Organizational Unit Name (eg, section)
  • CN — Common Name (eg, your name or your server’s hostname)
  • emailAddress — Contact email address

Android 生成自己的签名key(releasekey platform shared media networkstack verify等)相关推荐

  1. Android 生成原生系统签名jks 与 keystore

    在漫长的Android开发生涯中难免需要实现某个系统应用的系统功能,比如,appstore的静默安装,静默卸载 这两个功能对app的权限是有要求的,app必须是系统级别的应用才行,每个厂商的定制不同, ...

  2. android 生成apk名字自动已,Jenkins打包android应用时自动签名apk详解

    前言 如果你是使用android studio编译项目的化,在编译apk只会会自动给apk签名. 但默认配置下jenkins下编译出的apk是unsign的.需要一些额外的设置才能自动sign. 这个 ...

  3. Android使用keytool-importkeypair生成一个系统签名,只要打包的时候使用该签名,便可以获得系统所有权限

    Android系统源码中提供了platform.x509.pem .platform.pk8等签名文件例如: 这个是不能直接在调试的时候使用的,如果要用,需要先转换为android studio调试用 ...

  4. Android 生成签名文件、配置签名信息、打包

    AndroidStudio生成签名文件.配置签名信息.打包 开发完一款Application之后,需要对其进行打包,才可以发布工用户使用(release).而Android Studio就具备了打包的 ...

  5. Android系统制作自定义签名

    1.简介 应客户要求为了是特殊定制的系统更具安全,系统ROM需要使用自己定义的签名,还有一些特殊的场景也会更改系统的签名比如在过cts认证测试的时候也会修改平台签名才能测试通过关于签名的问题.这是因为 ...

  6. android+apk+修改+签名文件位置,Jenkins打包android应用时自动签名apk详解

    前言 如果你是使用android studio编译项目的化,在编译apk只会会自动给apk签名. 但默认配置下jenkins下编译出的apk是unsign的.需要一些额外的设置才能自动sign. 这个 ...

  7. 为你的android App实现自签名的ssl证书

    为你的android App实现自签名的ssl证书(https) 最近公司项目用到https的接口形式,对于一般的网络请求 我们用的是http://******      使用的是 代码用来打开一个  ...

  8. ionic android 版本号,ionic android 版本release 和 签名(示例代码)

    使用Cordova生成发布版本 cordova build --release android 或者 ionic build android -release 看到Build Successful说明 ...

  9. Android apk系列1-------APK签名

    Android apk系列1-------APK签名 在Android系统中,所有安装到系统的应用程序都必有一个数字证书,此数字证书用于标识应用程序的作者和在应用程序之间建立信任关系,如果一个perm ...

最新文章

  1. Java8(jdk1.8)中文档注释处理工具javadoc的环境参量配置及使用方法
  2. python爬虫新手项目-给新手推荐几个实用又适合上手的Python爬虫项目
  3. 【设计模式】享元模式 简介 ( 定义 | 对象池 | 内部状态 | 外部状态 | 适用场景 | 相关角色 )
  4. 判断二叉树是否是平衡二叉树(dp tree)
  5. html里调用css的语句
  6. Python itertools 操作迭代对象
  7. 圣斗士星矢服务器维护时间,圣斗士星矢正义传说开服时间表 什么时候开新服...
  8. ps读写ddr3里面的数据 zynq_ZYNQ应该如何让PS端的opencv程序读取到ddr中的图像数据...
  9. 人工智能原理与方法作业1
  10. 自然码双拼输入法的辅助码编写问题
  11. 要么忙于生存,要么忙于去死
  12. 【漫画程序员涛哥】程序员是如何换灯泡的?
  13. 如何使用nose 进行Python项目的自动化测试
  14. 通过裁切视频画面来改变视频尺寸 ,同时不影响画质
  15. 从系统托盘中删除Synaptics触摸板图标
  16. FL Studio20.8完整版注册密钥下载有哪些新功能?
  17. 【操作系统】--面包师问题
  18. 如何禁止计算机的打印功能,pdf设置禁止打印 pdf如何防止修改的方法
  19. java 设置excel格式为单元格格式为数值,不是坑爹的自定义
  20. CAD教程:CAD软件中怎么画任意梯段?

热门文章

  1. Java学习----前端3
  2. 机器学习深度学习 常用算法推导
  3. 孤立汉语数字语音识别系统
  4. 百慕大财政部批准Velocity Ledger ICO申请
  5. /var/spool/postfix/maildrop占用空间大量处理
  6. 张小军详解华为区块链政务应用,指出区块链的应用领域正从金融向全领域拓展...
  7. RT-Thread 软件定时器(学习笔记)
  8. 双减之后,体育培训升温,如何为孩子选择合适的体育项目?
  9. flex 底部固定_div 底部固定方法(不用position定位)
  10. 计算机考研报录比10比1,考研报录比10:1高么