ID Analyzer
← Retour au blog
Document FraudMRZBarcodeDocument Authentication

Detecting Tampered Dates and Altered Fields: How Cross-Checking MRZ, Barcode and Visual Zone Data Exposes Forged IDs

ID Analyzer TeamOct 31, 20265 min de lecture
Detecting Tampered Dates and Altered Fields: How Cross-Checking MRZ, Barcode and Visual Zone Data Exposes Forged IDs

Most identity documents state the same facts more than once. A passport prints your date of birth in the visual inspection zone (VIZ) and encodes it again in the machine-readable zone (MRZ). A North American driver license prints it on the front and encodes it in the PDF417 barcode on the back. Many ID cards carry an MRZ, a barcode, or both, alongside the printed fields.

That redundancy is one of the most useful fraud signals available, because forgers rarely edit every copy of a field. This post covers how to build cross-zone consistency checks that catch tampered data and how to keep them from rejecting genuine documents.

Why Single-Zone Checks Aren't Enough

Reading one zone well is necessary, but it doesn't prove much on its own.

  • MRZ check digits confirm that a field was transcribed consistently. They don't confirm that the field is true. Anyone who edits an MRZ can recompute the check digits, because the algorithm is public in ICAO Doc 9303.
  • Barcodes are easy to generate. Free tools can produce a valid-looking PDF417 payload containing whatever data the forger wants.
  • The visual zone is the part a human reviewer reads, so it's often the part that gets edited. A common example is an expiry date pushed forward to revive an expired document.

Each zone can be internally valid while the document as a whole is false. The inconsistency only shows up when you compare zones against each other.

What Typically Gets Altered

Tampering usually targets a small set of fields where a change has value:

Dates

  • Expiry date: extended so an expired document passes a validity check.
  • Date of birth: shifted to clear an age threshold or to match a different identity.
  • Issue date: changed to fit a fabricated history, or left as is when other dates move. That can produce impossible sequences.

Identity fields

  • Name: edited to match a stolen or synthetic identity.
  • Document number: swapped to match a number that passes a lookup or blocklist check.
  • Sex and nationality: less common, but sometimes changed when building a synthetic profile.

When a forger edits one of these fields in only one zone, a field-by-field comparison catches it.

Building the Cross-Check

1. Extract every zone independently

Run OCR on the visual zone, parse the MRZ, and decode the barcode as separate operations. If you use one zone's output to "correct" another's during extraction, you hide the discrepancy you're trying to find.

2. Normalize before you compare

Zones encode the same data in different formats. If you compare raw strings, genuine documents will fail. Normalize first:

  • Dates. The MRZ uses YYMMDD with a two-digit year. AAMVA barcodes commonly use MMDDCCYY on US licenses and CCYYMMDD on Canadian ones. Printed dates follow local conventions such as DD.MM.YYYY, MM/DD/YYYY, or month names. Convert everything to a single ISO 8601 date before comparing.
  • Two-digit years. Resolve the century in context. A birth date can't be in the future, and an expiry date is rarely decades in the past.
  • Names. The MRZ is uppercase Latin with < fillers, and it may be truncated or transliterated. Strip diacritics, collapse fillers, and compare the MRZ name as a prefix of the printed name, not as an exact match.
  • Sex codes. Map M/F/X, AAMVA numeric codes, and localized printed labels to one shared value set.

3. Validate each zone internally

Before comparing zones, confirm each one is self-consistent:

  • MRZ check digits (7-3-1 weighting, modulo 10) for the document number, DOB, and expiry fields, plus the composite digit.
  • A barcode structure that matches the issuing jurisdiction's expected header and field set.
  • Logical date order: birth date before issue date, issue date before expiry date.
  • A plausible validity period for the document type.

4. Compare field by field

Compare each field in every zone where it appears and record the result per field rather than as a single pass/fail. A DOB mismatch with matching names points to something different than a name mismatch with matching dates. Your reviewers and your rules engine need that detail.

Heads up

A valid MRZ check digit next to a mismatched visual date is a strong tamper signal, not a minor discrepancy. It means one zone was edited cleanly and the other was left alone. Treat it as a high-severity flag, not an OCR confidence issue.

Handling Legitimate Mismatches

A good rule set is defined as much by what it forgives as by what it flags. Genuine documents differ across zones for predictable reasons:

  • Truncated names in the MRZ, where long names exceed the field length.
  • Transliteration differences between non-Latin printed names and their Latin MRZ form.
  • Secondary or native-script fields that appear in the VIZ but are never encoded.
  • OCR misreads of visually similar characters such as 0/O, 1/I, and 5/S, especially on worn or low-quality captures.

Separate these into two buckets. Explainable differences, such as truncation and transliteration, can pass automatically. Unexplained differences, such as a different day, month, or year in a date field, should escalate. When a mismatch might be an OCR error, request a recapture first. A clean second image settles most ambiguous cases.

Where Cross-Checking Fits in the Wider Stack

Data consistency is one layer. It catches edits that leave the zones disagreeing. It won't catch a forger who changes every zone consistently, or a genuine document presented by the wrong person. Combine it with:

  • Document authentication: template, font, and security-feature analysis to detect physical or digital editing.
  • Biometric face match and liveness: to confirm that the person presenting the document is its holder.
  • AML/PEP screening: to check the extracted identity against watchlists.

When these layers agree, you can approve with confidence. When they conflict, the per-field output from your cross-check shows reviewers exactly where to look.

How ID Analyzer Helps

ID Analyzer extracts the visual zone, MRZ, and barcode data from more than 3,000 document formats across 190+ countries. It then runs authentication and anti-forgery checks that include cross-zone consistency, and returns field-level results you can feed directly into your own decision rules. Teams that need to keep data in-house can run the same checks on-premise with ID Fort.

Commencer à vérifier

Prêt à vérifier votre première pièce d'identité ?

Crédits de test gratuits à l'inscription — sans carte bancaire.

  • Sans Carte de Crédit

  • Crédits d'Essai Gratuits à l'Inscription