salt • RSASSA-PSS with SHA2-512 digest, 64 bytes of salt • RSASSA-PKCS1-v1_5 with SHA2-256 digest • RSASSA-PKCS1-v1_5 with SHA2-512 digest • ECDSA with SHA2-256 digest • ECDSA with SHA2-512 digest • DSA with SHA2-256 digest
robust way to verify the authenticity and integrity of Android application packages (APKs). It's like a tamper-evident seal for your app, ensuring that it hasn't been modified and truly comes from the developer you expect. • Speeds up app installation times • Verifies the integrity of the entire APK file • Smaller APK file size
upon the strong foundation of v2, adding a critical feature: key rotation. This allows developers to change their signing keys without disrupting app updates for users. • Strengthens security and enables future cryptographic upgrades. • Seamless updates from key rotation without any disruption or reinstallation
a detached signature format. This means the signature is stored in a separate file, offering several advantages. Streaming installations, where apps can be used even while they are still being downloaded.
upon the key rotation capabilities of v3, addressing some of its limitations and offering a smoother experience for developers and users. • Strengthens security and enables future cryptographic upgrades. • Specify a target SDK version for each signing key in the rotation chain. • Backward compatible with v3 • v4 compatible
key for you and uses it to sign optimized distribution APKs that are generated from your app bundles. Keys are protected by Google’s Key Management Service.
12 (S) The Android platform does not enforce the usage of this upgraded key and still recognizes the legacy signing key as the app signing key. Google Play Protect will check that app updates are signed with your upgraded key, unless turned off by the user.
key, older versions will use the old key. Google Play Protect Verifies that app updates are signed with the upgraded key. Provide an extra layer of security without fully enforcing the new key at the platform level. Google Play’s approach to key upgrades
to enhance the trustworthiness and security of Android apps. It essentially adds verifiable metadata to an app's manifest, indicating its origin and distribution channel.
update the SHA-1 or SHA-256 fingerprint for any services used within your app, such as Firebase, Google APIs, or Digital Asset Links. Be sure to use the fingerprint of the new app signing key.
bundled with the Java Development Kit (JDK). It's a powerful utility for managing cryptographic keys and certificates. Example directory on macOS /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/keytool
BLOCK SIGNER 0 SIGNED DATA DIGEST 0 SIGNATURE ALGORITHM ID: 0x104 (RSASSA-PKCS1-v1_5 with SHA2-512 digest) CERTIFICATE 0 X.509 SUBJECT: #### PUBLIC KEY ALGORITHM: RSA PUBLIC KEY BIT SIZE: 4096 MIN SDK: 33 MAX SDK: 2147483647 MIN SDK: 33 MAX SDK: 2147483647 SIGNATURE 0 SIGNATURE ALGORITHM ID: 0x104 (RSASSA-PKCS1-v1_5 with SHA2-512 digest) PUBLIC KEY PUBLIC KEY ALGORITHM: RSA PUBLIC KEY BIT SIZE: 4096
Use a robust signature algorithm for your key • Keep your app signing key and upload key separate • Enable v3 and v4 scheme to leverage App Signing features • Disabling v1 scheme requires setting your app's minimum supported Android version to 7.0 (Nougat) or higher • Even with strong signing keys, apps can still be reverse engineered