Reference detail

Apps with signing-metadata findings

Android apps signed with a debug key, a weak algorithm (SHA-1/MD5), a short key, an expired cert, or v1-only signatures.

Mapped findings are review signals. Interpret each app’s build, scan date and coverage before drawing a conclusion. Historical verification describes only its recorded scan time.

What this finding means

Every Android app is signed, and the signature is what ties an update to the app it updates. This category covers properties of that signature which weaken the guarantee: a short key, a debug key, an expired certificate, or reliance on the original v1 JAR signing scheme alone.

We have recorded one of these in 1,009 apps, and all of them are the same property: an RSA key of 1024 bits. The debug-key, expired-certificate and v1-only checks are live and currently match nothing in this corpus.

Why key length is the one that matters here

A 1024-bit RSA key is below every current recommendation and has been deprecated across the industry for over a decade. The practical consequence is about longevity rather than an immediate break: a signing key has to resist attack for as long as the app exists, because whoever can forge the signature can ship an update your users will install.

It is also the hardest of these to fix, which is why it persists. The signing identity cannot simply be replaced; an app signed with a new key is, to Android, a different app. Play App Signing with key rotation is the route through, and it needs planning rather than a build-file change.

A note on something we used to report and no longer do. We previously flagged the algorithm a signing certificate used to sign itself, typically SHA-1. Android pins a signer by the certificate's exact bytes rather than by validating that self-signature, and the v2 and v3 schemes digest the APK with SHA-256 or SHA-512 regardless, so on a self-signed certificate that value is inert. Every app we had flagged already satisfied the remediation we were giving them, so the check was retired and the corpus regraded.

How to fix it

  • Enrol in Play App Signing, which lets Google hold a strong app signing key while you rotate your upload key independently.
  • Generate new keys as RSA 4096 or EC P-256, and keep them in a hardware-backed store or a KMS rather than a file on a laptop.
  • Make sure v2 and v3 signature blocks are present; v1 alone leaves the APK open to tampering tricks the later schemes close.
  • Check the signature of the artifact you actually ship, in CI, so a local keystore cannot end up signing a release.
  • Treat expiry as a real deadline: a certificate must outlive the app, and Play requires validity well into the future.

How we detect it

Signature blocks and certificates are read from the APK with a parser written for this purpose, which reports the schemes present, the key type and size, and the validity window. No network lookup is involved and nothing about the signature is inferred.

Mapped checks & review guidance (5)

Signed with a debug certificate

Sign release builds with a private release key, not the well-known Android debug key.

Browse this category

Certificate self-signature algorithm (retired)

No action: Android identifies a signer by the certificate's exact bytes, so a self-signed certificate's own signature algorithm does not affect APK integrity. Signing-scheme and key-strength issues are reported separately.

Browse this category

Short signing key

Use an RSA key of at least 2048 bits or an EC P-256 key for signing.

Browse this category

Expired signing certificate

Renew the signing certificate; ensure validity extends well beyond the app's expected lifetime.

Browse this category

v1-only APK signature

Adopt APK Signature Scheme v2/v3 — v1-only signing is exposed to the Janus (CVE-2017-13156) tampering class.

Browse this category

Apps with mapped findings

Reset

1009 matching apps · Counts below include only this page’s mapped finding types.

Caviar - Order Food Delivery

com.trycaviar.customerBuild 15.294.1 · 2026-10-09 15:51 UTC

1 matching category · 1 matching occurrence

B · 82/100Static analysis complete

EZVIZ

com.ezvizBuild 7.5.9.0806 · 2026-10-09 15:42 UTC

1 matching category · 1 matching occurrence

B · 75/100Static analysis complete

Checkout 51: Cash Back Savings

com.c51Build 9.22.0 · 2026-10-09 15:22 UTC

1 matching category · 1 matching occurrence

B · 79/100Static analysis complete

Hik-Connect - for End User

com.connect.enduserBuild 6.13.890.0902 · 2026-10-09 15:20 UTC

1 matching category · 1 matching occurrence

C · 65/100Static analysis complete

Xiaomi Home

com.xiaomi.smarthomeBuild 11.7.704 · 2026-10-09 15:18 UTC

1 matching category · 1 matching occurrence

B · 76/100Static analysis complete

Wallet: Budget Expense Tracker

com.droid4you.application.walletBuild 9.3.12 · 2026-10-09 15:03 UTC

1 matching category · 1 matching occurrence

B · 89/100Static analysis complete

Baemin - Food Delivery

com.sampleappBuild 16.26.1 · 2026-10-09 14:50 UTC

1 matching category · 1 matching occurrence

F · 28/100Static analysis complete

Naver Papago - AI Translator

com.naver.labs.translatorBuild 1.12.2 · 2026-10-09 14:46 UTC

1 matching category · 1 matching occurrence

A · 90/100Static analysis complete

Zoho CRM Analytics

com.zoho.crm.analyticsstudioBuild 4.4.1 · 2026-10-09 14:45 UTC

1 matching category · 1 matching occurrence

A · 94/100Static analysis complete

GRE Vocabulary Flashcards

com.magoosh.flashcards.greBuild 3.6.3 · 2026-10-09 14:39 UTC

1 matching category · 1 matching occurrence

A · 94/100Static analysis complete

OK: Social Network

ru.ok.androidBuild 26.9.3 · 2026-10-09 14:20 UTC

1 matching category · 1 matching occurrence

B · 83/100Static analysis complete

WeChat

com.tencent.mmBuild 8.0.77 · 2026-10-09 14:13 UTC

1 matching category · 1 matching occurrence

C · 73/100Static analysis complete

Mighty Fu Casino Slots Games

com.productmadness.fafafagoldBuild 5.5.0 · 2026-10-09 14:10 UTC

1 matching category · 1 matching occurrence

Limited coverageRecorded findings available · overall grade withheld

Cooking Adventure: Chef Tycoon

com.grampus.cookingadventureBuild 70804 · 2026-10-09 13:48 UTC

1 matching category · 1 matching occurrence

B · 78/100Static analysis complete

Shuffles by Pinterest

com.pinterest.shufflesBuild 0.43.104 · 2026-10-09 13:44 UTC

1 matching category · 1 matching occurrence

C · 73/100Static analysis complete

Pixlr AI Photo & Video Editor

com.pixlr.expressBuild 3.9.3 · 2026-10-09 13:32 UTC

1 matching category · 1 matching occurrence

A · 90/100Static analysis complete

IIFL : Stocks, Demat & IPOs

com.indiainfolineBuild 9.0.5.0 · 2026-10-09 12:41 UTC

1 matching category · 1 matching occurrence

Limited coverageRecorded findings available · overall grade withheld

Disney Speedstorm

com.gameloft.anmp.disney.speedstormBuild 1.21.0d · 2026-10-09 12:28 UTC

1 matching category · 1 matching occurrence

Limited coverageRecorded findings available · overall grade withheld

Rise of Kingdoms: Lost Crusade

com.lilithgame.roc.gpBuild 1.1.12.20 · 2026-10-09 12:21 UTC

1 matching category · 1 matching occurrence

B · 84/100Static analysis complete

Upside: Gas & Food Cash Back

com.upside.consumer.androidBuild 26.27.0 · 2026-10-09 12:06 UTC

1 matching category · 1 matching occurrence

B · 88/100Static analysis complete

DoorDash - Dasher

com.doordash.driverappBuild 8.101.8 · 2026-10-09 11:38 UTC

1 matching category · 1 matching occurrence

B · 87/100Static analysis complete

B612 AI Photo&Video Editor

com.linecorp.b612.androidBuild 15.4.6 · 2026-10-09 11:24 UTC

1 matching category · 1 matching occurrence

C · 72/100Static analysis complete

Dictionary - Merriam-Webster

com.merriamwebsterBuild 5.6.2 · 2026-10-09 11:16 UTC

1 matching category · 1 matching occurrence

Limited coverageRecorded findings available · overall grade withheld

Lords Mobile x Transformers

com.igg.android.lordsmobileBuild 2.203 · 2026-10-09 11:11 UTC

1 matching category · 1 matching occurrence

B · 78/100Static analysis complete

World Golf & Sand Creek GC

com.gallusgolf.c1505.android.wgscgolfBuild 23.01.00 · 2026-10-09 10:32 UTC

1 matching category · 1 matching occurrence

B · 84/100Static analysis complete