2010-05-22 201 views
200

我目前有一个密钥库,只有我应该知道的特定密码。我现在需要让别人访问该密钥库,所以我想要:密钥库更改密码

1)更改密码,以便我可以与其他人共享并让他们签名
2)创建一个不同的密码并让他们签字。

这可能吗? - 如果是 - 如何?

回答

371

密钥库只有一个密码。您可以使用密钥工具进行更改:

keytool -storepasswd -keystore my.keystore 

更改密钥的密码:

keytool -keypasswd -alias <key_name> -keystore my.keystore 
+1

感谢您的回答。 – user313724 2010-05-23 06:41:45

+4

太好了,所以apk的签名会一样吗?密码会改变吗?这也是我需要的。选择一个错误的密码,现在需要改变它。 – 2011-11-15 07:50:16

+3

签名不会更改,因为应用程序未使用密钥库进行签名,而是使用您保存在密钥库中的证书。 – 2013-01-16 19:46:23

65

[How can I] Change the password, so I can share it with others and let them sign

使用密钥工具:

keytool -storepasswd -keystore /path/to/keystore 
Enter keystore password: changeit 
New keystore password: new-password 
Re-enter new keystore password: new-password 
+1

感谢您的详细演练! – user313724 2010-05-23 06:42:13

+0

这是否也改变密钥的密码呢? – 2012-07-06 15:47:48

+4

号密钥库是一件事情,密码(注意复数)是另一回事。使用'keytool -keypasswd -alias -keystore my.keystore'来更改密钥的密码'' – 2013-01-16 19:45:25

18

要为里面的关键myalias更改密码密钥库mykeyfile

keytool -keystore mykeyfile -keypasswd -alias myalias 
+0

什么是“内部密钥”? – 2013-10-26 02:44:12

+5

对不起,我的不好解释。您可以更改密钥库的密码或密钥库中存储的其中一个密钥的密码。这就是我的意思是“内部密钥”。 – OriolJ 2013-10-29 09:50:43

35

更改库密码

$ keytool -storepasswd -keystore keystorename 
Enter keystore password: <old password> 
New keystore password: <new password> 
Re-enter new keystore password: <new password> 

更改密钥库别名密码

$keytool -keypasswd -keystore keystorename -alias aliasname 
Enter keystore password: 
New key password for <aliasname>: 
Re-enter new key password for <aliasname>: 

注:

**Keystorename**: name of your keystore(with path if you are indifferent folder) 
**aliasname**: alias name you used when creating (if name has space you can use \) 
for example: $keytool -keypasswd -keystore keystorename -alias stop\ watch 
+0

它的作品谢谢你!还有一件事,我想添加更改我想要从论坛中获得的别名。 keytool -changealias -keystore my.keystore -alias my_name -destalias my_new_name – 2014-09-20 05:03:32

+0

在更改别名密码时,我得到:UnrecoverableKeyException:无法恢复密钥 有什么建议吗? – Foo 2015-06-21 12:54:25

+0

@你有没有想过这个问题?我得到了相同的错误 – 2016-05-09 23:04:55

8

如果密钥库包含你有其他的按键输入不同的密码,以改变它们也或者您可以使用下面的命令你的钥匙隔离到不同的密钥库,

keytool -importkeystore -srckeystore mystore.jck -destkeystore myotherstore.jks -srcstoretype jceks 
-deststoretype jks -srcstorepass mystorepass -deststorepass myotherstorepass -srcalias myserverkey 
-destalias myotherserverkey -srckeypass mykeypass -destkeypass myotherkeypass 
+0

您刚刚保存了我的一周! '-srckeypass mykeypass -destkeypass myotherkeypass'正是我所需要的。谢谢!!! – Slav 2014-10-02 14:56:23

+0

这很棒!谢谢! – 2015-06-04 09:30:26

4

有这么多的答案在这里,但如果你试图改变JKS Android Studio中的Mac上的密码。下面是最简单的步骤,我能找到

1)打开终端和cd到你的.jks位于

2)密钥工具-storepasswd -New NEWPASSWORD -keystore YOURKEYSTORE.jks

3)输入您当前的密码