Signal's No-Phone Registration Still Runs Through Google
Everyone's celebrating the headline: registration without a phone number on Signal will use zero-knowledge proofs. It hit 125+ points on Hacker News yesterday. I did what HN commenters rarely do — I read the commit. Here's what nobody else is saying: the anti-spam gate on anonymous registration routes through Google Play Billing.
The receipts
Commit 7da3357b564b landed in signalapp/Signal-Android on September 4, titled "Add ability to pay for a signal login." It introduces a stack of new classes — OneTimeProduct, OneTimePurchaseApi, OneTimePurchaseResult — and one detail that matters more than all the ZK math: the purchase path is gated by Environment.supportsGooglePlayBilling(), which returns true only when the build ID matches GOOGLE_PLAY_BILLING_APPLICATION_ID. The commit diff itself documents pricing "as reported by Google Play," keyed to the user's Play account. Signal's own community forum thread — ten pages and counting — confirms the shape of it: ZK proofs verify you paid, Play Billing is how you pay.
Why it matters
A zero-knowledge proof that your payment didn't link to your identity is worth exactly zero if the payment rail is Google. Play Billing means a Google account, a payment instrument, and a purchase record sitting in Mountain View's ledger — the ZK layer hides the link from Signal's servers, not from the platform holding the receipt. One privacy invader is swapped for a bigger one. The same HN thread makes the secondary point well: Signal's push notifications still ride on Google/Apple services on stock clients, so the phone-number removal fixes one metadata leak while the plumbing still phones home.
Verdict: real progress, honestly shipped — but "no phone number" is not "anonymous." Watch whether Signal ships a non-Play payment path before declaring this solved. If the coupon can only be bought from Google, the escape hatch has a toll booth on it.
FAQ
Can you register on Signal without a phone number yet?
Not generally. The zero-knowledge registration mechanism is landing in the codebase (visible in September 2026 commits), with a paid one-time login as the spam-control gate.
Does the zero-knowledge proof make Signal registration anonymous?
Not fully. The proof hides your identity from Signal's servers, but the current payment path goes through Google Play Billing, which ties the purchase to a Google account and payment method.