APK Signature Scheme v2, introduced in Android 7.0, signs the APK as a whole blob so any change outside the signing block breaks it. Scheme v3, from Android 9, adds a proof-of-rotation structure so an app can move to a new signing key without losing its update path.
Why v2 replaced the older approach
Android's documentation says v2 hashes and signs the APK contents and inserts a signing block, and that verification treats the file as a single blob. Any change outside the signing block invalidates the signature. The page describes this as faster to verify and better at detecting unauthorised changes.
Older devices ignore the extra data, so an APK must still carry a v1 signature to install on them. If you target old devices, keep that in mind when you sign.
What v3 adds
Per Android's documentation, v3 extends the v2 signing block with more information and otherwise works the same way. The notable addition is key rotation. Android 9 added support for APK key rotation, and v3 allows both the new and old signing keys. It adds supported SDK versions and a proof-of-rotation structure.
How proof of rotation works
The proof of rotation is a singly linked list of certificates, ordered by version, with the oldest certificate as the root. Each certificate signs the next one, giving the new key evidence that it deserves the trust the older key had. The structure sits inside the signed data section, so the signing key protects it, and verification checks that it is valid and that the signer is the last certificate in the list.
The documentation notes limits: the format does not support multiple signing keys, or multiple ancestor certificates converging into one. It also says that rotation is not recommended for Android 12 and earlier, and that on Android 13 and higher the signature check API recognises proof of rotation and returns the newest signature.
What this means for you
- Treat the signing key like a release secret. Losing it, or having it stolen, is a major event. See our key compromise recovery plan.
- If you publish through Google Play, the arrangement of upload key and app signing key matters too. We explain it in Play App Signing upload key versus app signing key.
- Plan any key rotation as a project with testing on the Android versions you support, not as a quick fix.
- Verify your release builds with apksigner in CI.
What we could not confirm
The Android page we read describes v2 and v3 only. For v3.1 and v4, read the dedicated Android pages before writing guidance that depends on them.
Quick check
Does v3 replace v2?
It extends the same signing block approach. Publishers often include several schemes so the APK works across devices.
Can I rotate keys on any Android version?
Android recommends against rotation for Android 12 and earlier. Check behaviour on every version you support.
Sources
- APK signature scheme v2 and v3 overview, Android Open Source Project
- APK signature scheme v3, Android Open Source Project
Last reviewed: 19 October 2026.