The Damm algorithm (H. Michael Damm, 2004) is a decimal checksum built on a single 10×10 weakly totally anti-symmetric quasigroup. It catches every single-digit substitution and every adjacent-digit transposition — the two dominant classes of human error — using one table lookup per digit and no permutation family (unlike Verhoeff). The check digit is appended verbatim, so validity is simply "the algorithm ends at 0".
Feed a payload (any number of digits, no trailing check digit). The tool runs the Damm loop and returns the digit that would drive interim to 0 when appended — which, by construction, is the current interim itself.
The row is the current interim, the column is the incoming digit. Damm proved that any table meeting the weakly-totally-anti-symmetric property has zeros on the diagonal, guaranteeing detection of every adjacent transposition. The row/column active for your last validated step is highlighted.
H. Michael Damm published this construction in his 2004 doctoral thesis, Total anti-symmetrische Quasigruppen. He gave the first proof that a weakly totally anti-symmetric quasigroup of order 10 exists — earlier work by Verhoeff had used the dihedral group D5 with a permutation family. Because Damm's algorithm needs only one lookup table with zeros on the diagonal, an N-digit payload followed by its check digit is valid iff the interim value ends at 0, meaning "check by prepending zero" and "generate by starting from zero" collapse into the same code path. That elegance made Damm popular in embedded firmware and educational contexts, though Verhoeff (used by Aadhaar, India's 12-digit ID) has more historical mind-share. Neither is a substitute for a cryptographic MAC — both are error-detection codes designed to catch human typos, not adversarial tampering.