Measurement recordFixed seed, reproducible

Two identifiers guard your deal with one character each. We measured how well.

Buyers on this site meet two self-checking numbers: China’s 18-character company code on every business licence, and the 17-character VIN on every vehicle — including imported food trailers. Both end in a character computed from the rest. Guides say “the check digit catches typos” and stop. We ran 2.1 million deliberate errors through both algorithms to put numbers on which typos, and found the two designs are not equals.

· Measured the same day · Fixed seed 20260809 · Exhaustive where feasible, Monte-Carlo where not

Prepared by Currawong Web’s China-side verification network.

1. The numbers

Detection rate = share of deliberately corrupted codes that fail the scheme’s own check equation. Substitutions and transpositions are exhaustive over 2,000 generated codes per scheme; double errors are fixed-seed Monte-Carlo.

Error classUSCI (GB 32100-2015)VIN (49 CFR 565)
Single-character substitution (exhaustive)100% (1,080,000 of 1,080,000)92.52% (1,006,623 of 1,088,000)
Two-position transposition, all positions99.34%88.06%
— transpositions within data positions only100%86.75%
Random double substitution (Monte-Carlo)96.41%91.52%

The USCI’s only transposition misses involve swapping a data character with the check character itself; between data positions, no single error and no swap survived. For the VIN we also attributed the misses: in a 500-code sub-sample, all 20,364 undetected single substitutions — 100% — were same-value transliterations (writing J for A, S for 2, and the other pairs the transliteration table maps to one number).

2. Why the designs differ — and what that means at a desk

  • The USCI works modulo a prime. GB 32100-2015 uses 31 characters, weights that are all distinct powers of 3 modulo 31, and a prime modulus — so any single change, and any swap of two differing data characters, must move the checksum. The 100% rows are a property of the arithmetic, and our measurement confirms the implementation behaves as the arithmetic promises.
  • The VIN compresses 33 characters into 10 values. Working modulo 11 with letters transliterated to digits means A/J share a value, as do S/2 and other pairs — a substitution inside one of those families is invisible to the checksum by construction. That is the entire 7.5% gap: not randomness, one table.
  • For a buyer this cashes out as a rule of thumb. A failing USCI is always worth re-copying before you conclude anything — the algorithm does not cry wolf, so a failed check means the string in your hands is wrong. A passing VIN is weaker comfort on paper records: when a trailer deal turns on a VIN, check it against the manufacturer record, not just its own arithmetic.
  • Neither is proof of anything real. Both algorithms are public; a fabricated code passes by construction. Pass = transcribed correctly. Everything else — existence, status, ownership — lives in the registered record.

3. Method, and what this study cannot say

  • Codes: 2,000 per scheme, generated with a fixed-seed PRNG (mulberry32, seed 20260809) so the runs are reproducible. USCI codes use realistic authority/division prefixes; the prefix distribution does not affect detection, which depends only on character values and positions.
  • Implementations: the USCI algorithm is imported unchanged from this site’s public checker; the VIN algorithm follows 49 CFR 565.15 and validates against the sample VIN published in NHTSA’s manufacturer handbook (1M8GDM9AXKP042788, check digit X).
  • Error model limits: we measured uniformly generated mechanical errors. Human typos are not uniform — keyboard-adjacent and visually-similar substitutions are over-represented — so real-world rates could differ in either direction; the 100% rows are the exception, since exhaustive means every possible case was tried.
  • Scope limits: this is a study of two checksum algorithms, not of any company, vehicle or document, and not a comparison of the two identifier systems — the VIN encodes manufacturing facts the USCI does not attempt.

Citing this study

You are welcome to quote or reproduce these figures, including commercially, provided the measurement date, the seed and the stated limits travel with them. Machine-readable evidence with full counts: the result file. Primary sources: GB 32100-2015 (standard listing; checked 9 August 2026) and 49 CFR Part 565 (checked 9 August 2026). More measured data: the research index.