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.

Cover Fashion - Doll Dress Up

air.com.winkypinky.coverfashiondolldressupBuild 1.3.1 · 2026-10-07 14:44 UTC

1 matching category · 1 matching occurrence

A · 93/100Static analysis complete

PDF Scanner Scan files & notes

com.ticktalk.scannerdocumentBuild 191.0 · 2026-10-07 14:27 UTC

1 matching category · 1 matching occurrence

B · 89/100Static analysis complete

GPS Speedometer for Car

com.digitalspeedometer.velocimetrogpsBuild 3.1.0 · 2026-10-07 14:26 UTC

1 matching category · 1 matching occurrence

A · 92/100Static analysis complete

Forest Preserve Golf

com.gallusgolf.c769.android.fpgolfBuild 23.01.00 · 2026-10-07 14:24 UTC

1 matching category · 1 matching occurrence

B · 83/100Static analysis complete

The Atlanta Opera

com.instantencore.atlopera_5114480Build 21.02.00 · 2026-10-07 14:20 UTC

1 matching category · 1 matching occurrence

B · 84/100Static analysis complete

Revere Golf Club-Official

com.gallusgolf.c601.android.revergcBuild 23.01.00 · 2026-10-07 14:07 UTC

1 matching category · 1 matching occurrence

B · 83/100Static analysis complete

Call Blocker - Blacklist

com.netqin.mmBuild 5.8.14.00 · 2026-10-07 13:28 UTC

1 matching category · 1 matching occurrence

B · 80/100Static analysis complete

White Calling

com.whitecard.callingcardBuild 4.3.0 · 2026-10-07 12:51 UTC

1 matching category · 1 matching occurrence

A · 90/100Static analysis complete

Hunting Simulator Games

com.woodcock.huntingsimulatorBuild 7.80 · 2026-10-07 12:48 UTC

1 matching category · 1 matching occurrence

F · 31/100Static analysis complete

Bell Bank Mobile

com.SBT.mobilebankingBuild 26.6.0 · 2026-10-07 12:46 UTC

1 matching category · 1 matching occurrence

A · 90/100Static analysis complete

Toy Blast

net.peakgames.amyBuild 26595 · 2026-10-07 12:42 UTC

1 matching category · 1 matching occurrence

B · 84/100Static analysis complete

SignPost Compass

nl.arnorob.pointliteBuild 156 · 2026-10-07 12:31 UTC

1 matching category · 1 matching occurrence

A · 93/100Static analysis complete

Dropbox Paper

com.dropbox.paperBuild 304.1 · 2026-10-07 12:23 UTC

1 matching category · 1 matching occurrence

A · 90/100Static analysis complete

Netspend Small Business

com.netspend.biz.androidBuild 6.9.0 · 2026-10-07 12:11 UTC

1 matching category · 1 matching occurrence

A · 93/100Static analysis complete

Mobile Soldiers: Plastic Army

com.ecliptec_mobile_ltd.toy_soldiers_3_0Build 3.5.15 · 2026-10-07 11:51 UTC

1 matching category · 1 matching occurrence

B · 83/100Static analysis complete

Suncoast SunMobile

org.suncoast.mobileBuild 5.0.29.01-(3388) · 2026-10-07 11:08 UTC

1 matching category · 1 matching occurrence

A · 93/100Static analysis complete

Talking Ginger 2

com.outfit7.gingersbirthdayfreeBuild 3.8.1.686 · 2026-10-07 10:45 UTC

1 matching category · 1 matching occurrence

F · 0/100Static analysis complete

Healthify: AI Diet & Fitness

com.healthifyme.basicBuild v31.4 · 2026-10-07 10:36 UTC

1 matching category · 1 matching occurrence

B · 87/100Static analysis complete

Rabbit Hunting Bow Games

com.play.vertex.rabbit.hunting.challenge.bowmaster.shooting.gameBuild 1.7 · 2026-10-07 09:42 UTC

1 matching category · 1 matching occurrence

A · 93/100Static analysis complete

Bingo Farm Ways: Bingo Games

com.playcus.free.bingo.games.country.farm.gameBuild 1.304.679 · 2026-10-07 09:36 UTC

1 matching category · 1 matching occurrence

C · 72/100Static analysis complete

Word Connect 2026 Brain Puzzle

com.wordfinder.unscrabble.connect.addictBuild 5.5 · 2026-10-07 09:30 UTC

1 matching category · 1 matching occurrence

B · 85/100Static analysis complete

Hairteach

com.agtdigital.HairTeach3DBuild 3.2.5 · 2026-10-07 09:00 UTC

1 matching category · 1 matching occurrence

A · 91/100Static analysis complete

ShinePhone.

com.growatt.shinephonesBuild 8.5.7.0 · 2026-10-07 08:55 UTC

1 matching category · 1 matching occurrence

B · 87/100Static analysis complete

UBS Access: Secure login

com.ubs.swidK2Y.androidBuild 26.10.2.2649 · 2026-10-07 08:54 UTC

1 matching category · 1 matching occurrence

A · 92/100Static analysis complete

Lectionary: From the CofE

com.aimer.lectionaryBuild 2.0.16 · 2026-10-07 08:50 UTC

1 matching category · 1 matching occurrence

Limited coverageRecorded findings available · overall grade withheld