หลักตรวจสอบเป็นส่วนหนึ่งของวิธีการตรวจสอบข้อผิดพลาด มันสามารถอ้างถึงหนึ่งในสองสิ่ง - ตัวเลขจริงที่เกี่ยวข้องกับตัวเลขหลายหลักที่แสดงว่าตัวเลขหลายหลักนั้นถูกต้องหรือไม่ อีกวิธีหนึ่งคือตรวจสอบตัวเลขหมายถึงการวัดที่ใช้ในการทดสอบความถูกต้องของการรวบรวมหรือบล็อกของข้อมูลเมื่อเทียบกับตัวเลขเดียว ไม่ว่าจะด้วยวิธีใดกระบวนการของการตรวจสอบความซ้ำซ้อนประเภทนี้อาจเรียกว่าการ คำนวณหลักตรวจสอบ หรือ อัลกอริทึมหลักตรวจสอบ วิธีการตรวจสอบตัวเลขสามารถใช้วิธีการที่แตกต่างกันและใช้ในระดับสากลเพื่อวัตถุประสงค์ที่แตกต่างกัน ระบบการกำหนดหมายเลขหรือการเข้ารหัสทั่วไปที่ใช้ตัวเลขตรวจสอบรวมถึงรหัสผลิตภัณฑ์สากล (UPC) และหมายเลขมาตรฐานสากลหนังสือ (ISBN) ในหมู่คนอื่น ๆ
ตัวเลขเช็คถูกออกแบบมาเพื่อดักจับข้อผิดพลาดบางประเภทที่พบบ่อยในการป้อนข้อมูลไม่ว่าข้อมูลนั้นจะถูกอ่านและป้อนโดยบุคคลเดียวกันบนแป้นพิมพ์หรือแป้นพิมพ์โทรศัพท์หรือว่าข้อมูลนั้นถูกอ่านโดยบุคคลหนึ่งและป้อนโดยบุคคลอื่น ข้อผิดพลาดในการป้อนข้อมูลที่พบบ่อยที่สุดในส่วนนี้คือการป้อนเพียงหลักเดียวไม่ถูกต้อง บัญชีนี้อยู่ระหว่าง 60 ถึง 95 เปอร์เซ็นต์ของข้อผิดพลาดข้อมูลทั้งหมด การโยงเป็นวินาทีจะละเว้นหรือเพิ่มตัวเลขหนึ่งหลักในอีกด้านหนึ่งและการแปลงตัวเลขที่อยู่ติดกันในอีกทางหนึ่ง ข้อผิดพลาดอื่น ๆ ที่เป็นไปได้ แต่เกิดขึ้นกับความถี่ที่น้อยกว่ามากรวมถึงการกลับรายการของตัวเลขสามหลักเพื่อให้ 123 ป้อนเป็น 321 ตัวอย่างเช่น และการออกเสียงผิดพลาดทำให้สับสน 16 และ 60
อาจตรวจสอบตัวเลขจริงเพิ่มเข้าไปในหมายเลขที่พวกเขาตั้งใจจะตรวจสอบ ในหมายเลขประจำตัวยานพาหนะ (VIN) ซึ่งมี 17 ตัวอักษรตัวเลขเช็คอยู่ในตำแหน่งที่เก้า ในทางกลับกันหมายเลข ISBN 13 หลักในทางกลับกันหมายเลขเช็คจะปรากฏขึ้นที่ท้ายหมายเลข 13
มีอัลกอริทึมที่แตกต่างกันหลายอย่างที่ใช้กันทั่วไปในการคำนวณตัวเลขเช็คและอัลกอริทึมเดียวกันนั้นไม่ได้ใช้เพื่อจุดประสงค์เดียวกันในระดับสากล ตัวอย่างเช่นอัลกอริทึมที่พัฒนาโดยและตั้งชื่อตามนักวิทยาศาสตร์ Hans Peter Luhn หรือที่เรียกว่า Mod 10 เป็นสูตรที่ใช้ในสหรัฐอเมริกาสำหรับหมายเลขบัตรเครดิตและบัตรเดบิตและในแคนาดาสำหรับการรับรองความถูกต้องหมายเลขประกันสังคม (SIN) อัลกอริทึม Luhn ยังใช้สำหรับบาร์โค้ดหมายเลขยุโรประหว่างประเทศ (EAN13) ในขณะที่ใช้สูตรที่แตกต่างกันคือ Mod11 สำหรับบาร์โค้ดในเยอรมนีและสำหรับการยื่นภาษี (TFNs) ในประเทศออสเตรเลีย
สูตร Luhn จะทำการตรวจสอบตัวเลขในตอนท้ายของหมายเลขที่ตรวจสอบ จากขวาไปซ้ายรวมถึงตรวจสอบตัวเลขแต่ละหลักที่สองคือสองเท่า หากตัวเลขใด ๆ ที่ถูกเพิ่มเป็นสองเท่ากลายเป็นตัวเลขหลายหลักตัวเลขแต่ละตัวของตัวเลขหลายหลักเหล่านั้นจะถูกรวมเข้าด้วยกัน จำนวนที่เหลือจะถูกเพิ่มเข้ามา หากผลรวมหารด้วย 10 จะแสดงว่าตัวเลขหลายหลักนั้นถูกต้องตามสูตรของ Luhn หากผลรวมไม่หารด้วย 10 จะมีการเพิ่มตัวเลขเช็คที่จะทำให้ผลรวมหารด้วย 10 ดังนั้นหากหมายเลขที่จะตรวจสอบความถูกต้องคือ 1234 มันจะไม่ถูกต้องหากไม่มีเลขเช็คที่ 6 ติดอยู่ที่ท้าย นั่นเป็นเพราะ (1 + 1) + 2 + (3 + 3) + 4 = 14 ซึ่งไม่สามารถหารได้ด้วย 10 การเพิ่มตัวเลขตรวจสอบที่ 6 จะทำให้ผลรวมหารด้วย 10 ดังนั้นจึงใช้ได้กับสูตร Luhn .
ในประเทศออสเตรเลียมีความพยายามที่จะใช้ตัวเลขตรวจสอบเพื่อจุดประสงค์ที่สอง - เพื่อจำกัดความสามารถของผู้คนในการปลอมหมายเลขที่ถูกต้องเพื่อวัตถุประสงค์ด้านภาษี แม้รัฐบาลจะพยายามรักษาความลับของอัลกอริทึมการตรวจสอบตัวเลข แต่ผู้คนก็สามารถคิดออกมาได้และทำการปลอมหมายเลขที่เกี่ยวข้องกับภาษีต่อไป


