¿Qué es el archivo de keystore de Android, y para qué se utiliza?
Esta es una pregunta general, pero particularmente estoy interesado en su uso para Android. ¿Qué es un archivo de almacén de claves y para qué se utiliza?
¿Pueden varias aplicaciones de Android usar el mismo almacén de claves para firmar su aplicación (qué significa exactamente "firmar" un .apk?), Y cuáles son las implicaciones (si las hay) de esto?
- No encuentro el archivo debug.keystore
- ¿Cómo puedo especificar la ubicación de debug keystore para Android ant debug builds?
- Problema al ejecutar mi keystore firmado y liberado en Eclipse
- OkHttp certificado de confianza
- Android actualiza la aplicación de mercado con una clave de firma diferente
- Keystore SHA1 diferente de cert.rsa SHA1 de APK
- Diferentes almacenes de claves de depuración en Eclipse en una base por proyecto?
- Utilizar el mismo almacén de claves de depuración en varios equipos
- No hay debug.keystore en la carpeta .android
- ¿Cómo crear una llave RSA keystore Android con una validez infinita?
- Android Studio - Keystore fue manipulado o la contraseña fue incorrecta
- Error con keystore: Parse Tiempo generalizado, formato no válido
- No se puede encontrar la entrada de Keystore. Pero sé que está ahí
La respuesta que daría es que un archivo de almacén de claves es para autenticarse a cualquier persona que está pidiendo. No se limita a la firma de archivos .apk, puede usarlo para almacenar certificados personales, firmar datos para ser transmitidos y toda una variedad de autenticación.
En términos de lo que haces con él para Android y probablemente lo que estás buscando desde que mencionas firmando apk, es tu certificado. Está marcando su aplicación con sus credenciales. Puede marcar varias aplicaciones con la misma clave, de hecho, se recomienda utilizar un certificado para marcar varias aplicaciones que escriba. Es más fácil hacer un seguimiento de las aplicaciones que le pertenecen.
No estoy seguro de lo que quieres decir con implicaciones. Supongo que significa que nadie más que el titular de su certificado puede actualizar su aplicación. Eso significa que si lo liberas en la naturaleza, pierdes el cert que usaste para firmar la aplicación, entonces no puedes lanzar actualizaciones así que guarda ese certificado seguro y respaldado si es necesario.
Pero aparte de firmar apks para liberarlo a la naturaleza, puedes usarlo para autenticar tu dispositivo a un servidor a través de SSL si así lo deseas, (también relacionado con Android) entre otras funciones.
Android Market requiere que firme todas las aplicaciones que publica con un certificado, utilizando un mecanismo de clave pública / privada (el certificado está firmado con su clave privada). Esto proporciona una capa de seguridad que impide, entre otras cosas, que los atacantes remotos empujen las actualizaciones maliciosas de su aplicación al mercado (todas las actualizaciones deben estar firmadas con la misma clave).
Desde la Guía de firma de aplicaciones del sitio web del desarrollador de Android:
En general, la estrategia recomendada para todos los desarrolladores es firmar todas sus aplicaciones con el mismo certificado, a lo largo de la vida útil esperada de sus aplicaciones. Hay varias razones por las que debe hacerlo …
El uso de la misma clave tiene algunas ventajas: una es que es más fácil compartir datos entre aplicaciones firmadas con la misma clave. Otra es que permite que múltiples aplicaciones firmadas con la misma clave se ejecuten en el mismo proceso, por lo que un desarrollador puede crear más aplicaciones "modulares".
Puede encontrar más información sobre el proceso de firma en la documentación oficial de Android aquí: http://developer.android.com/guide/publishing/app-signing.html
Sí, puede firmar varias aplicaciones con el mismo almacén de claves. Pero debes recordar una cosa importante: si publicas una aplicación en Play Store, debes firmarla con un certificado que no sea de depuración. Y si algún día desea publicar una actualización para esta aplicación, el almacén de claves utilizado para firmar el apk debe ser el mismo. De lo contrario, no podrá publicar su actualización.
La idea de un keytool es firmar su apk con un identificador único que transmite la fuente de ese apk. Un archivo keystore (de lo que entiendo) se utiliza para la depuración por lo que su apk tiene la funcionalidad de un keytool sin la firma de su apk para la producción. Así que sí, para propósitos de depuración debe ser capaz de firmar múltiples apk con un único almacén de claves, pero entender al empujar a la producción que usted necesita keytools único como identificadores para cada apk
- ¿Cómo evito que la barra de estado y la barra de navegación se animen durante una transición de animación de escena de actividad?
- ¿Por qué los tipos de construcción son distintos de los sabores del producto?