AnyTool
Your files never leave your device. All processing happens locally in your browser.

How do I mask my Aadhaar or PAN before sharing it?

Use the Aadhaar / PAN Masking Tool two ways, entirely in your browser. IMAGE mode: drop or paste a photo/scan of the card, then drag a rectangle (or paint with a brush) over the sensitive parts — the first 8 digits of the Aadhaar number, the QR code, DOB, address and signature — and a solid BLACK BOX (or heavy pixelate) is baked destructively into the pixels; download or copy the masked PNG. TEXT mode: paste a number and get the correctly masked form — an Aadhaar becomes “XXXX XXXX 9012” (first 8 hidden, last 4 kept, the UIDAI rule) and a PAN has its middle hidden — with a validity check (Aadhaar Verhoeff checksum, PAN AAAAA9999A format). Nothing is uploaded; your ID never leaves the page. The tool masks only the regions you pick, so verify the export before sharing.

  • Image mode: black-box or pixelate the regions you select, baked into the pixels
  • Text mode: Aadhaar → XXXX XXXX 9012 (UIDAI rule), PAN middle masked
  • Validity check: Aadhaar Verhoeff check digit, PAN AAAAA9999A + holder-type letter
  • Rectangle + brush, undo / redo / revert, zoom; export PNG (download + copy)
  • 100% client-side — your card image and number never leave your browser

What is

Masked Aadhaar / PAN

A masked Aadhaar is a privacy-preserving form of the 12-digit UIDAI number in which the first eight digits are replaced with X and only the last four remain visible (for example XXXX XXXX 9012); UIDAI recommends sharing it with any private party that only needs to confirm identity. Masking a PAN — the 10-character Income-Tax ID in the shape AAAAA9999A — has no single official standard, so a common approach hides the middle and keeps a couple of characters. On a card image, masking means covering the sensitive regions with an irreversible black box baked into the pixels. This tool does both locally: it validates the Aadhaar with the Verhoeff check digit and the PAN by format, produces the masked text, and lets you redact a card photo on a canvas — but it does not auto-detect the regions, so you select them.

Security & Privacy

Related terms

masked AadhaarUIDAIAadhaarPANVerhoeffredactionblack boxpixelateKYCDPDPprivacy

Frequently Asked Questions

No. The card image and the number you type are processed entirely in your browser and are never uploaded, logged or stored on a server.

The tool is 100% client-side. In image mode your card is drawn to a local canvas, every black-box or pixelate edit rewrites the pixels in memory, and the masked PNG is built and downloaded or copied in-browser. In text mode the number is validated and masked with pure in-browser math — the UIDAI Verhoeff scheme for Aadhaar and the AAAAA9999A pattern for PAN. There is no upload, no server, no CDN and no telemetry; nothing is persisted, so closing the tab erases it. Because your ID never leaves your machine, it is safe in a way an online masking service — which would receive your document — can never be. The only optional network use anywhere on the site is consent-gated ads, which never see your ID.

Hide the first 8 digits and keep only the last 4 — XXXX XXXX 9012 — which is exactly what UIDAI’s official masked Aadhaar does.

UIDAI’s masked Aadhaar replaces the first eight digits with X and shows only the last four, so you can prove identity without exposing the full number. This tool’s text mode produces that form automatically after checking the number is 12 digits, starts with 2–9 (UIDAI never issues an Aadhaar starting with 0 or 1) and passes the Verhoeff check digit. On a card image, cover those first eight digits — and the QR code, which encodes your details — with a solid black box. Note that masked Aadhaar is not accepted everywhere: banks, Aadhaar–PAN linking, DBT/EPF and some KYC still require the full number by law.

Yes. A solid black box overwrites the pixels and cannot be reversed; blur and light pixelation are averaging transforms that can be partially recovered.

For a card image, always prefer the black box for the number itself. Security researchers have de-pixelated short text and passwords (Depix, Unredacter) and machine-learning models have recovered blurred faces and plates, so a light blur or a few large mosaic blocks over an Aadhaar / PAN number is not safe. A black box replaces the region with one opaque colour, leaving nothing to reverse, and this tool bakes it destructively into the pixels so the exported PNG holds only the redacted data. Whatever you use, zoom in and verify the exported PNG before sharing, and remember the reverse side of the card, reflections and glare.

No. It does not OCR or auto-detect anything — you draw the rectangles or paint the areas yourself, so you must check nothing sensitive is left visible.

This is an honest, manual redaction editor, not an AI detector. It trusts your aim: it will not warn you if part of the number peeks out, and it does not scan the image for secrets. So before you export, check for anything left visible — the QR code, a reflection or glare, faint text under a semi-transparent box, and especially the reverse side of the card, which many people forget. The text-mode validity check confirms format and checksum only (a number can pass and still not belong to a real person). Treat the tool as a privacy aid that keeps everything on your device, not a guarantee; you remain responsible for what you share.

Detailed Explanation

How It Works

What the Aadhaar / PAN Masking Tool Does

This tool masks India’s two most-shared IDs — Aadhaar and PAN — entirely in your browser, two ways. In IMAGE mode you drop, choose or paste a photo/scan of the card; it is drawn to a <canvas> at true resolution and you drag a rectangle or paint with a brush over the sensitive regions (the Aadhaar number’s first eight digits, the QR code, date of birth, address, signature, optionally the photo). A pure engine bakes a solid BLACK BOX — or a heavy pixelate — DESTRUCTIVELY into the pixels, then you download or copy the masked PNG. Guidance chips remind you what to cover, and undo/redo, revert and zoom keep it precise. In TEXT mode you paste a number and get the correctly masked form: an Aadhaar becomes “XXXX XXXX 9012” (first eight digits hidden, last four kept — the UIDAI rule) and a PAN has its middle hidden, each with a validity read-out. It is a manual redaction aid, not an auto-detector.

  • Image mode: black-box or pixelate the regions you select, baked into the pixels
  • Text mode: Aadhaar → XXXX XXXX 9012 (UIDAI rule); PAN middle masked
  • Guidance chips for what to cover; rectangle + brush, undo/redo/revert, zoom
  • Export masked PNG (download + copy) or copy the masked number
  • 100% client-side — the card image and number never leave the browser
Methodology

How Validation Works (Verhoeff + PAN Format)

Text mode validates before it masks, using a pure engine (aadhaarMaskEngine.ts). An Aadhaar must be exactly 12 digits, must start with 2–9 (UIDAI never issues an Aadhaar beginning with 0 or 1), and must pass the UIDAI Verhoeff check digit — a dihedral-group (D5) checksum computed right-to-left over the multiplication and permutation tables, which catches every single-digit error and most adjacent transpositions. When all three hold, the masked form hides the first eight digits and shows the last four (XXXX XXXX 9012). A PAN must match AAAAA9999A (five letters, four digits, one letter); the 4th character is decoded as the holder/entity type (P = Individual, C = Company, H = HUF, F = Firm/LLP, A = AOP, T = Trust, B = BOI, L = Local Authority, J = Artificial Juridical Person, G = Government), and the mask keeps only the first two and last two characters, hiding the unique four-digit serial. The check confirms structure and checksum only — not that a number is issued to a real person.

  • Aadhaar: 12 digits, first digit 2–9, Verhoeff dihedral-group check digit
  • Verhoeff catches all single-digit errors and most transpositions
  • PAN: AAAAA9999A with a valid holder-type letter as the 4th character
  • Masked Aadhaar keeps the last 4; masked PAN keeps first 2 + last 2
  • Validation proves format/checksum, not real-world issuance
Technical Details

Destructive Canvas Redaction

Image redaction reuses the same audited engine as the Privacy Blur tool (blurEngine.ts): every operation rewrites the underlying ImageData in place, so the hidden information is genuinely gone from the buffer that gets exported rather than merely painted on top. A black box fills the selected rectangle or brush disc with one opaque colour; pixelate averages each origin-aligned mosaic block to a single colour; both are irreversible for the black box and strong for a heavy mosaic. The card is loaded via an offscreen canvas and getImageData, edits are applied to a base ImageData with a bounded undo/redo history (deep copies, 24 steps), and only the dirty rectangle is repainted for speed. Export calls canvas.toBlob(’image/png’) and downloads it or writes it to the clipboard as a ClipboardItem — and because the pixels are re-encoded through the canvas, the original file’s EXIF metadata (camera, GPS, timestamps) is dropped. Text masking is pure string math with no canvas needed.

  • blurEngine.ts rewrites ImageData in place — the data underneath is overwritten
  • Black box = one opaque colour (irreversible); pixelate = block averaging
  • Bounded undo/redo (deep copies, 24 steps); only the dirty rect repaints
  • Export via canvas.toBlob PNG; re-encoding drops original EXIF metadata
  • Copy writes a ClipboardItem; text masking needs no canvas
Limitations

Honest Limitations

The tool masks only the regions YOU select — it does not OCR or auto-detect the number, so it will not warn you if something sensitive is left visible. Before you export, check the QR code (it encodes your details), reflections and glare, faint text under a semi-transparent box, and especially the REVERSE side of the card, which is easy to forget. Prefer the solid black box over blur or light pixelation: averaging transforms can be partially REVERSED (Depix, Unredacter for short text; ML de-blurring for faces and plates), so a weak effect over a number is not safe — and always zoom in and verify the exported PNG at full resolution. The masked forms are not accepted everywhere: banks, Aadhaar–PAN linking, DBT/EPF claims and some KYC still legally require the full number. Finally, the validity check confirms format and the Verhoeff/PAN structure only; a number can pass and still not belong to a real person, and this tool cannot and does not verify identity with UIDAI or the Income-Tax department. It is a privacy aid, not a guarantee — you remain responsible for what you share.

  • No auto-detection — you select the regions; nothing is scanned for you
  • Check the QR code, reflections, and the reverse side before sharing
  • Blur/light pixelation can be reversed — prefer the black box; verify the PNG
  • Masked Aadhaar is not accepted for bank/PAN-link/DBT/EPF and some KYC
  • Validity = format/checksum only, not proof of real issuance
Privacy & Security

Private by Design

Everything happens on your device. In image mode the card is drawn to a local canvas, each black-box or pixelate edit rewrites the pixels in memory, and the masked PNG is built and downloaded or copied in-browser; in text mode the number you type is validated and masked with pure in-browser math (the UIDAI Verhoeff scheme for Aadhaar, the AAAAA9999A pattern for PAN). There is no upload, no server, no CDN and no telemetry anywhere in the path, and nothing is persisted — closing the tab erases it, and the tool works offline once cached. Because your Aadhaar or PAN never leaves your machine, this is safe in a way an online masking service — which would receive your document — can never be: a leaked ID photocopy has been misused for fraudulent SIMs and unauthorised access, which is exactly why UIDAI recommends sharing a masked Aadhaar. The only optional network use anywhere on the site is consent-gated ads, which never see your ID.

  • Image and text masking run locally; no upload, server, CDN or telemetry
  • Nothing persisted — closing the tab erases it; works offline once cached
  • Safe for a real ID, unlike an online masking service that receives your file
  • Verhoeff/PAN checks and PNG export are all in-browser
  • Only optional network use is consent-gated ads that never see your ID
Ways to share an Aadhaar / PAN more safely
ApproachWhat it doesTrade-offThis tool
Mask it (this tool)Black-box the card image or mask the number locallyYou select the regions; not accepted everywhereYes
UIDAI masked e-AadhaarOfficial PDF with the first 8 digits hiddenOnly Aadhaar; needs a UIDAI download + OTPComplements it
Blur / light pixelateSoftens the number instead of covering itCan be partially reversed — unsafe for the numberBlack box preferred
Online masking serviceMasks on a serverUploads your raw ID to a third partyNo — never uploaded

A black box baked into the pixels is irreversible; blur is not. Masked Aadhaar is not accepted where the full number is legally required. Everything here runs locally in the browser. As of July 2026.