a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 系統 > Android > 正文

Android簽名機制介紹:生成keystore、簽名、查看簽名信息等方法

2020-04-11 11:37:55
字體:
來源:轉載
供稿:網友

Android獨有的安全機制,除了權限機制外,另外一個就是簽名機制了。簽名機制主要用在以下兩個主要場合起到其作用:升級App和權限檢查。

升級App

用戶在升級一款已經安裝過的App時,如果程序的修改來自于同一來源,則允許升級安裝,否則會提示簽名不一致無法安裝的提示。

權限檢查

我曾在Android Permission權限機制的具體使用一文中提過,對于申請權限的  protection level 為 signature 或者 signatureOrSystem 的,會檢查權限申請者和權限聲明者的證書是否是一致的。

至于簽名機制的原理及其他作用,此不詳述,本文主要介紹,簽名文件key的生成、用key去簽名apk文件及查看簽名的方法。

生成keystore

創建keystore,需要用到keytool.exe (位于jdk_xx/jre/bin目錄下),具體做法如下:

復制代碼 代碼如下:

keytool -genkey -alias mykey -keyalg RSA -validity 40000 -keystore demo.keystore
#說明:
#    -genkey 產生密鑰
#    -alias mykey 別名 mykey
#    -keyalg RSA 使用RSA算法對簽名加密
#    -validity 40000 有效期限4000天
#    -keystore demo.keystore

對apk進行簽名

使用產生的keystore對apk簽名,使用到的是jarsigner.exe ,該工具位于jdk_xx/bin目錄下,命令如下:

復制代碼 代碼如下:

jarsigner -verbose -keystore demo.keystore -signedjar test_signed.apk test.apk mykey
#    test_signed.apk是簽名之后的文件
#    test.apk是需要簽名的文件

另外需要注意的是,如果你的jdk版本在1.7以上,你在對apk簽名時,需要加上這個參數:
復制代碼 代碼如下:

-digestalg SHA1 -sigalg MD5withRSA

否則同樣會出現:Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES]的錯誤。

查看簽名信息

1、查看keystore的信息

復制代碼 代碼如下:

keytool -list -keystore demo.keystore -alias mykey -v

2、查看keystore的公鑰證書信息
復制代碼 代碼如下:

keytool -list -keystore demo.keystore -alias mykey -rfc

(注:獲取Base64格式的公鑰證書,RFC 1421)

3、查看apk的簽名信息

復制代碼 代碼如下:

jarsigner -verify -verbose -certs <your_apk_path.apk>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美日本韩国一区二区 | 欧洲一级视频 | 91精品国产高清自在线观看 | 国产成人久久精品一区二区三区 | 麻豆精品 | 日韩免费精品视频 | 中文字幕在线一区 | 国产视频福利一区 | 一区二区三区四区免费观看 | 久久久久久久久久久久久女国产乱 | 黄色91在线 | 天天干人人 | 一级特黄 | 欧洲亚洲一区 | 青草视频在线免费观看 | 欧美大片一区二区 | 久久香蕉国产 | 欧美视频一区二区三区四区 | 久久精品国产99久久久 | 久久99国产精一区二区三区 | 精品久久久久久国产 | 久久久久久久久久久久网站 | 亚洲成人一区在线观看 | 欧美午夜精品理论片a级按摩 | 午夜精品久久久久久久久久久久久 | 91爱啪啪| 成人在线视频免费观看 | 成人av国产 | 精品欧美 | 国产精品免费观看 | 日本一级毛片视频 | 久久综合影院 | 99在线精品视频 | 日韩欧美综合在线 | 免费看的av | 午夜男人天堂 | 精品国产鲁一鲁一区二区三区 | 亚洲精品一区在线观看 | 91影库| 四虎最新紧急更新地址 | 精品视频在线观看 |