How to Blur ID Cards, Passports, and Bank Cards in a Photo

TL;DR

PrivShot detects mainland-China ID numbers, bank card numbers (Luhn-checked) and company credit codes, and can blur a whole card or document. It does not detect passport numbers automatically, so cover those with whole-document blur or the brush.

The problem

Sometimes you have no choice but to send a photo of an ID, a bank card or a document: to a landlord, a bank, a seller, a visa agent. But the moment it is in a chat app, it can be forwarded, saved and stored indefinitely. A clear photo of an ID number or a card number is everything an impostor needs.

You still need the recipient to see enough: your name, that the card is real. The goal is to hide the dangerous part and keep the rest legible. A thumb over the number isn’t reliable, and uploading to an online redactor defeats the point.

What PrivShot finds

PrivShot reads the text in the photo on your phone (it is tuned for Chinese and English text), then looks for specific kinds of numbers:

  • Resident ID numbers: the 18-character mainland-China format.
  • Bank and credit card numbers: 15 to 19 digits that pass the Luhn checksum, which keeps false alarms low.
  • Company credit codes: 18-character unified social credit codes, validated by their check character.
  • Phone numbers and addresses, if present.
  • Whole cards and documents: separately, it can find a card-shaped region and cover all of it.

Only the matching digits are covered, not the whole line, so the rest of the text stays readable.

What it does not find

Be clear about the gaps:

  • Passport numbers aren’t detected automatically.
  • Names are detected but off by default, because name detection triggers false alarms. Switch them on per photo when needed.
  • Numbers that OCR can’t read (glare, an angle, a worn card, unusual fonts) can be missed.

How to do it

  1. Photograph the card flat, in even light, so the text can be read. Glare is the main cause of misses.
  2. Import it into PrivShot, then tap the result tile to open the review screen.
  3. Look at the category chips. Switch on Documents if you want the whole card covered.
  4. Open each category’s list and check the individual detections.
  5. For anything not found (a passport number, a signature, a barcode), switch to Manual and cover it with the brush or a rectangle.
  6. Zoom in and read the result like a stranger would. If you can read or guess a digit, cover it more.
  7. Save. The saved copy has its location data removed.

Which approach to use

  • Whole-document blur when you don’t need the recipient to read anything on it, only to see that a document exists.
  • Number-only blur when they need to read your name or other fields.
  • Both together (whole-document plus manual) for passports.

Text is always covered with a heavy blur, never a light mosaic, because mosaic over small characters can stay partly legible.

Before you send

Tell the recipient why parts are covered, or write the purpose on the photo if a service asks for one. Don’t send the unblurred original to anyone who doesn’t need it.

FAQ

Does PrivShot detect passport numbers? Not automatically. It detects mainland-China resident ID numbers (18 characters), bank card numbers and company credit codes. For a passport, use whole-document blur and/or paint over the number by hand, then check the result.

What is whole-document blur? It covers the entire detected card or document rather than just the printed number. It is off by default because it is aggressive; you can switch it on per photo.

How does it know a number is a bank card? It looks for 15 to 19 digits and checks them with the Luhn checksum, so ordinary long numbers are rarely flagged.

Is the photo of my ID uploaded? No. Recognition runs on your device, and nothing is sent anywhere.