利用keystore 指令来确认凭证密码

利用keystore 指令来确认凭证密码

Keytool是Java证书的管理工具,Keytool将金钥(key)、证书(certificates)存在一个keystore的档案里,android利用此keystore来替APK签名并上架,不过如果时间久没上架,有可能就忘记之前建立的keystore密码,要如何确认密码是否符合keystore的?这要利用keytool-list指令并使用-keystore指定keystore档案来测试密码:

keytool -list -keystore yourkeystore

在此时就会需要你输入当时建立的密码,利用这点就能反复的测试:

220-138-234-113:302_Android danny$ keytool -list -keystore adannytw.store
输入金钥储存库密码:
金钥工具错误: java.io.IOException: Keystore was tampered with, or password was incorrect

直到输入正确时就会列出资讯:

220-138-234-113:302_Android danny$ keytool -list -keystore adannytw.store
输入金钥储存库密码:

金钥储存库类型: JKS
金钥储存库提供者: SUN

您的金钥储存库包含 1 项目

adannytw.keystore, 2011/4/26, PrivateKeyEntry,
凭证指纹 (SHA1): 6A:3C::000........:50:28

keytool -list支援的命令:

keytool -list [OPTION]...

列示金钥储存库中的项目

选项:

 -rfc                            以 RFC 样式输出
 -alias <alias>                  要处理项目的别名名称
 -keystore <keystore>            金钥储存库名称
 -storepass <arg>                金钥储存库密码
 -storetype <storetype>          金钥储存库类型
 -providername <providername>    提供者名称
 -providerclass <providerclass>  提供者类别名称
 -providerarg <arg>              提供者引数
 -providerpath <pathlist>        提供者类别路径
 -v                              详细资讯输出
 -protected                      经由保护机制的密码

使用 "keytool -help" 取得所有可用的命令