CacheHackCacheHack

Checksum Calculator

Calculate and verify checksums using Luhn, Verhoeff, Damm, and modular arithmetic algorithms. Validate credit cards, ISBNs, and more.

Enter digits (non-digits will be ignored)

About Luhn (Credit Cards)

The Luhn algorithm (also known as mod 10) is used for credit cards, IMEI numbers, and many ID numbers. It catches all single-digit errors and most transpositions.

Common Uses

  • Luhn: Credit cards, IMEI, Canadian SIN
  • Verhoeff: Some European national IDs
  • Mod 11: ISBN-10, ISSN
  • ISBN-13: Modern book ISBNs, barcodes

What is a Checksum?

A checksum is a value calculated from a data set, used to verify that data has not been corrupted or mistyped. Check digits are single digits added to identification numbers to catch common errors like typos or transposed digits.

Checksum Algorithms

Luhn Algorithm

The Luhn algorithm (also called the "modulus 10" or "mod 10" algorithm) is the most widely used checksum formula. It's used for:

  • Credit card numbers (Visa, Mastercard, etc.)
  • IMEI numbers (mobile phone identifiers)
  • Canadian Social Insurance Numbers
  • Various national identification numbers

Verhoeff Algorithm

The Verhoeff algorithm was developed to catch more types of errors than Luhn, including all adjacent transposition errors and most twin errors.

Damm Algorithm

The Damm algorithm is similar to Verhoeff but uses a different mathematical basis. It also detects all single-digit errors and adjacent transpositions.

ISBN Checksums

Book ISBNs use specific checksum algorithms:

  • ISBN-10: Weighted mod 11 (can produce X as check digit)
  • ISBN-13: Alternating weights of 1 and 3, mod 10

Checksums in Geocaching

Checksums appear in geocaching puzzles because:

  • Number validation: Verify coordinate digits
  • Hidden data: Check digits may encode information
  • Credit card themes: Puzzles involving card numbers
  • ISBN puzzles: Books and library-themed caches

How to Use

  1. Select the appropriate algorithm
  2. Enter the number (with or without the check digit)
  3. The tool will calculate the check digit and validate
  4. If invalid, the correct complete number is shown