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,005 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

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

GoPro Quik: Video Editor

com.gopro.smartyBuild 13.42 · 2026-10-12 20:11 UTC

1 matching category · 1 matching occurrence

B · 85/100Static analysis complete

DuckDuckGo, optional Duck.ai

com.duckduckgo.mobile.androidBuild 5.297.1 · 2026-10-12 20:08 UTC

1 matching category · 1 matching occurrence

A · 94/100Static analysis complete

Bass Performance Hall

com.instantencore.bph_5174626Build 21.02.00 · 2026-10-12 19:51 UTC

1 matching category · 1 matching occurrence

B · 84/100Static analysis complete

FamilyAlbum - Photo Sharing

us.miteneBuild 23.0.0 · 2026-10-12 19:48 UTC

1 matching category · 1 matching occurrence

B · 84/100Static analysis complete

Korail+

com.korail.talkBuild 7.0.9 · 2026-10-12 19:32 UTC

1 matching category · 1 matching occurrence

A · 90/100Static analysis complete

Subway Surfers City

com.sybogames.subway.surfers.gameBuild 2.6.1 · 2026-10-12 19:10 UTC

1 matching category · 1 matching occurrence

A · 90/100Static analysis complete

BlaBlaCar: Carpooling and Bus

com.comutoBuild 6.34.0 · 2026-10-12 19:04 UTC

1 matching category · 1 matching occurrence

B · 86/100Static analysis complete

Fast Scanner - PDF Scan App

com.coolmobilesolution.fastscannerfreeBuild 4.7.7 · 2026-10-12 18:52 UTC

1 matching category · 1 matching occurrence

A · 91/100Static analysis complete

The Guardian - US & World News

com.guardianBuild 6.238.23405 · 2026-10-12 18:46 UTC

1 matching category · 1 matching occurrence

B · 89/100Static analysis complete

Audiobooks.com: Books & More

com.audiobooks.androidappBuild 13.0.1 · 2026-10-12 18:45 UTC

1 matching category · 1 matching occurrence

A · 91/100Static analysis complete

FieldForce | Field Service Opt

com.loginext.fieldforceBuild 4.1.80 · 2026-10-12 18:33 UTC

1 matching category · 1 matching occurrence

B · 89/100Static analysis complete

Île-de-France Mobilités

com.applidium.vianavigoBuild 10.0.11-4316 · 2026-10-12 18:13 UTC

1 matching category · 1 matching occurrence

B · 88/100Static analysis complete

McDonald's

com.mcdonalds.appBuild 26.72.5 · 2026-10-12 17:58 UTC

1 matching category · 1 matching occurrence

F · 0/100Static analysis complete

JusTalk Kids - Safe Messenger

com.justalk.kids.androidBuild 2.15.1 · 2026-10-12 17:48 UTC

1 matching category · 1 matching occurrence

D · 51/100Static analysis complete

eDreams: Flights, Hotels, Cars

com.edreams.travelBuild 4.1459.0 · 2026-10-12 17:42 UTC

1 matching category · 1 matching occurrence

B · 89/100Static analysis complete

Sticky Password Manager

com.stickypassword.androidBuild 8.10.1.7181 · 2026-10-12 17:15 UTC

1 matching category · 1 matching occurrence

B · 88/100Static analysis complete

LINE Camera - Photo editor

jp.naver.linecamera.androidBuild 18.5.6 · 2026-10-12 17:12 UTC

1 matching category · 1 matching occurrence

C · 69/100Static analysis complete

VIZ Manga

com.vizmanga.androidBuild 4.14.6 · 2026-10-12 16:33 UTC

1 matching category · 1 matching occurrence

B · 85/100Static analysis complete

Handcent Next SMS messenger

com.handcent.app.nextsmsBuild 11.10.19 · 2026-10-12 16:25 UTC

1 matching category · 1 matching occurrence

B · 79/100Static analysis complete

Offline Map Navigation

com.virtualmaze.offlinemapnavigationtrackerBuild 2.6.0.1 · 2026-10-12 16:16 UTC

1 matching category · 1 matching occurrence

A · 91/100Static analysis complete

sRide - Carpool & Taxipool

co.srideBuild 6.48.67 · 2026-10-12 16:12 UTC

1 matching category · 1 matching occurrence

B · 88/100Static analysis complete

Certified Nurse Educator Prep

com.springerpub.nurseeducatorBuild 13.04.7372 · 2026-10-12 16:02 UTC

1 matching category · 1 matching occurrence

A · 91/100Static analysis complete

Ebook Reader

com.ebooks.ebookreaderBuild 5.2.10 · 2026-10-12 15:54 UTC

1 matching category · 1 matching occurrence

A · 91/100Static analysis complete

ibis Paint X

jp.ne.ibis.ibispaintx.appBuild 14.1.2 · 2026-10-12 15:35 UTC

1 matching category · 1 matching occurrence

B · 79/100Static analysis complete

WizeSMS: SMS to Email/Telegram

com.fulldive.extension.divesmsBuild 1.5.2 · 2026-10-12 15:26 UTC

1 matching category · 1 matching occurrence

A · 93/100Static analysis complete