关于Java:密钥库更改密码

Keystore change passwords

我现在有一个密钥库,其中有一个只有我自己知道的特定密码。我现在需要将该密钥库的访问权授予其他人,因此我希望:

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

这有可能吗?如果是,怎么办?


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

1
keytool -storepasswd -keystore my.keystore

要更改密钥的密码:

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


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

使用KEYTo刀:

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


更改密钥库密码

1
2
3
4
$ keytool -storepasswd -keystore keystorename
Enter keystore password:  
New keystore password: <new password>
Re-enter new keystore password: <new password>

更改密钥库别名密码

1
2
3
4
$keytool -keypasswd -keystore keystorename -alias aliasname
Enter keystore password:  
New key password for :
Re-enter new key password for :

注:

1
2
3
**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


要更改keystore mykeyfile内的密钥myalias的密码:

1
keytool -keystore mykeyfile -keypasswd -alias myalias


如果密钥库包含其他具有不同密码的密钥项,您还必须更改它们,或者您可以使用下面的命令将密钥隔离到不同的密钥库。

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

这里有很多答案,但是如果你想在Android Studio的Mac上更改jks密码。以下是我能找到的最简单的步骤

1)打开.jks所在的终端和CD

2)keytool-storepasswd-新密码-keystore yourkeystore.jks

3)输入当前密码


密钥库资源管理器是Java命令行实用工具密钥工具和JARSENER的开源GUI替换。keystore explorer通过直观的图形用户界面展示了它们的功能等等。

  • 打开现有的密钥库
  • 工具->设置密钥库密码

  • 对于完整的程序更改(例如安装程序),不提示

    1
    2
    3
    4
    5
    6
    7
    8
    #!/bin/bash -eu

    NEWPASSWORD=${1}
    OLDPASSWORD=${2}

    keytool -storepasswd -new"${NEWPASSWORD}" \
      -storepass"${OLDPASSWORD}" \
      -keystore /path/to/keystore

    完全公开:我不建议在shell中运行此命令行,因为旧密码和新密码将保存在shell的历史记录中,并在控制台中可见。