2010-05-22 18 views
200

Actualmente tengo un almacén de claves, con una contraseña particular que solo yo debería saber. Ahora necesito para dar acceso a ese almacén de claves a otra persona, por lo que me gustaría, ya sea:Keystore cambiar contraseñas

1) cambiar la contraseña, para poder compartir con los demás y hacerles firmar
2) Crear una contraseña diferente y les permite firmar con él.

¿Esto es posible? y, si es así, ¿cómo?

Respuesta

371

Keystore solo tiene una contraseña. Puede cambiarlo usando herramienta de claves:

keytool -storepasswd -keystore my.keystore 

Para cambiar la contraseña de la clave:

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

Gracias por la respuesta. – user313724

+4

Genial, ¿entonces la firma del apk será la misma? Solo la contraseña cambiará? Esto es lo que necesito también. Elija una contraseña incorrecta, ahora necesita cambiarla. –

+3

La firma no cambiará, ya que la aplicación NO está firmada con el almacén de claves, pero con el certificado que guarda en el almacén de claves. –

65

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

El uso de herramienta de claves:

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

¡Gracias por el tutorial detallado! – user313724

+0

¿Esto también cambia la contraseña de la clave? –

+4

No. Keystore es una cosas, contraseñas (nota plural) es otra. Use 'herramienta de claves -keypasswd -alias -keystore my.keystore' para cambiar la contraseña de la clave privada' '

18

Para cambiar la contraseña de una clave myalias interior de el almacén de claves mykeyfile:

keytool -keystore mykeyfile -keypasswd -alias myalias 
+0

¿Qué es "llave interna"? –

+5

Perdón por mi mala explicación. Puede cambiar la contraseña del almacén de claves o la contraseña de una de las claves que ha almacenado en el almacén de claves. Eso es lo que quiero decir con "clave interna". – OriolJ

35

Cambiar contraseña del almacén de

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

Cambiar la contraseña del almacén de claves de alias

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

Nota:

**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

¡Funciona gracias! Una cosa más que quiero agregar para cambiar el nombre de alias que quería y obtuve de un foro. keytool -changealias -keystore my.keystore -alias mi_nombre -destalias my_new_name –

+0

Al cambiar la contraseña del alias aparece: UnrecoverableKeyException: No se puede recuperar la clave ¿Alguna sugerencia? – Foo

+0

@Foo ¿Alguna vez descubrió ese problema? Recibo el mismo error –

8

Si el almacén de claves contiene otras entradas-clave con contraseña diferente que tiene que cambiar también ellos o se puede aislar su clave a diferentes almacén de claves mediante el siguiente comando,

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

¡Acabas de guardar mi semana! El '-snackeypass mykeypass -destkeypass myotherkeypass' es justo lo que necesitaba. ¡¡¡Gracias!!! – Slav

+0

¡Esto es excelente! ¡Gracias! –

4

Hay tantas respuestas aquí, pero si usted está tratando de cambiar las jks contraseña en una Mac en Android Studio. Estos son los pasos más fáciles que pude encontrar

1) Abrir terminal y cd a donde se encuentra su .jks

2) herramienta de claves -storepasswd -nuevo CONTRASEÑA-NUEVA -keystore YOURKEYSTORE.jks

3) ingrese su contraseña actual

Cuestiones relacionadas