تحقق من الرقم
A رقم الشيك هو شكل من أشكال الاختيار التكرار تستخدم للكشف عن خطأ على أرقام بطاقات الهوية، مثل أرقام الحسابات المصرفية، والتي تستخدم في تطبيق حيث أنها سوف تكون على الأقل في بعض الأحيان إدخال يدويا. إنه مشابه لبت التماثل الثنائي المستخدم للتحقق من وجود أخطاء في البيانات التي يتم إنشاؤها بواسطة الكمبيوتر. يتكون من رقم واحد أو أكثر (أو أحرف) محسوبة بواسطة خوارزمية من الأرقام (أو الأحرف) الأخرى في إدخال التسلسل.
باستخدام رقم تحقق ، يمكن للمرء أن يكتشف أخطاء بسيطة في إدخال سلسلة من الأحرف (عادة أرقام) مثل رقم واحد خاطئ أو بعض التباديل من رقمين متتاليين.
تصميم
تم تصميم خوارزميات التحقق من الأرقام بشكل عام لالتقاط أخطاء النسخ البشرية . وبترتيب التعقيد ، يشمل ذلك ما يلي: [1]
- أخطاء الحروف / الأرقام ، مثل l → 1 أو O → 0
- أخطاء من رقم واحد ، مثل 1 → 2
- أخطاء التحويل ، مثل 12 ← 21
- أخطاء مزدوجة ، مثل 11 → 22
- أخطاء تبديل الانتقال ، مثل 132 → 231
- القفز على أخطاء مزدوجة ، مثل 131 → 232
- الأخطاء الصوتية ، مثل 60 ← 16 (من "ستين" إلى "ستة عشر")
عند اختيار النظام ، يتم مقايضة احتمالية عالية من اكتشاف الأخطاء بصعوبة التنفيذ ؛ يسهل فهم أنظمة أرقام التحقق البسيطة وتنفيذها من قبل البشر ولكنها لا تلتقط العديد من الأخطاء مثل الأخطاء المعقدة ، والتي تتطلب برامج معقدة لتنفيذها.
الميزة المرغوبة هي أن الحشو الأيسر مع الأصفار يجب ألا يغير رقم التحقق. هذا يسمح باستخدام أرقام أطوال متغيرة وتغيير الطول. إذا كان هناك رقم تحقق واحد مضاف إلى الرقم الأصلي ، فلن يلتقط النظام دائمًا أخطاء متعددة ، مثل خطأين في الاستبدال (12 → 34) ، على الرغم من ذلك ، عادةً ، سيتم اكتشاف الأخطاء المزدوجة بنسبة 90 ٪ من الوقت (كلا التغييرين بحاجة إلى تغيير الناتج عن طريق تعويض المبالغ).
تتمثل إحدى طرق أرقام التحقق البسيطة جدًا في أخذ مجموع جميع الأرقام ( المجموع الرقمي ) modulo 10. هذا من شأنه أن يكتشف أي خطأ من رقم واحد ، لأن مثل هذا الخطأ سيؤدي دائمًا إلى تغيير المجموع ، لكنه لا يكتشف أي أخطاء في التحويل (التبديل رقمين) لأن إعادة الترتيب لا يغير المجموع.
الطريقة الأكثر تعقيدًا هي أخذ المجموع المرجح للأرقام ، المقياس 10 ، بأوزان مختلفة لكل موضع رقم.
لتوضيح ذلك ، على سبيل المثال إذا كانت أوزان عدد مكون من أربعة أرقام هي 5 ، 3 ، 2 ، 7 والرقم المراد ترميزه هو 4871 ، فسيأخذ المرء 5 × 4 + 3 × 8 + 2 × 7 + 7 × 1 = 65 ، أي 65 modulo 10 ، ورقم التحقق سيكون 5 ، ويعطي 48715.
يتم استخدام الأنظمة ذات الأوزان 1 أو 3 أو 7 أو 9 ، مع اختلاف الأوزان على الأرقام المجاورة ، على نطاق واسع: على سبيل المثال ، 31 31 أوزانًا في أكواد UPC ، و 13 13 أوزانًا في أرقام EAN (خوارزمية GS1) ، و 371 371 371 أوزان مستخدمة في أرقام عبور توجيه بنك الولايات المتحدة . يكتشف هذا النظام جميع الأخطاء المكونة من رقم واحد وحوالي 90٪ من أخطاء التحويل. يتم استخدام 1 و 3 و 7 و 9 لأنها جريمة مشتركةمع 10 ، لذا فإن تغيير أي رقم يغير رقم التحقق ؛ باستخدام معامل قابل للقسمة على 2 أو 5 قد يفقد المعلومات (لأن 5 × 0 = 5 × 2 = 5 × 4 = 5 × 6 = 5 × 8 = 0 modulo 10) وبالتالي لن يتم اكتشاف بعض الأخطاء المكونة من رقم واحد. استخدام أوزان مختلفة على الأرقام المجاورة يعني أن معظم التبديلات تغير رقم التحقق ؛ ومع ذلك ، نظرًا لاختلاف جميع الأوزان برقم زوجي ، فإن هذا لا يمسك بالمحوالات المكونة من رقمين يختلفان بمقدار 5 (0 و 5 و 1 و 6 و 2 و 7 و 3 و 8 و 4 و 9) ، منذ 2 و 5 اضرب لتحصل على 10.
يستخدم رمز ISBN-10 بدلاً من ذلك modulo 11 ، وهو رقم أولي ، وجميع مواضع الأرقام لها أوزان مختلفة 1 ، 2 ، ... 10. يكتشف هذا النظام بالتالي جميع أخطاء الاستبدال والتبديل المكونة من رقم واحد (بما في ذلك عمليات تبديل الانتقال) ، ولكن في قد تكون تكلفة رقم التحقق 10 ، ممثلة بـ "X". (البديل هو ببساطة تجنب استخدام الأرقام التسلسلية التي ينتج عنها رقم تحقق "X"). يستخدم ISBN-13 بدلاً من ذلك خوارزمية GS1 المستخدمة في أرقام EAN.
تتضمن الخوارزميات الأكثر تعقيدًا خوارزمية Luhn (1954) ، التي تلتقط 98٪ من أخطاء التحويل المكون من رقم واحد (لا تكتشف 90 ↔ 09) وخوارزمية Verhoeff الأكثر تعقيدًا (1969) ، والتي تلتقط جميع أخطاء الاستبدال والتبديل ذات الرقم الفردي ، والعديد من الأخطاء المعقدة (ولكن ليس كلها). مماثلة هي طريقة أخرى تعتمد على الجبر المجرد ، خوارزمية Damm(2004) ، هذا أيضًا يكتشف جميع الأخطاء المكونة من رقم واحد وجميع أخطاء النقل المجاورة. تستخدم هذه الطرق الثلاث رقم تحقق واحد وبالتالي ستفشل في التقاط حوالي 10٪ من الأخطاء الأكثر تعقيدًا. لتقليل معدل الفشل هذا ، من الضروري استخدام أكثر من رقم تحقق واحد (على سبيل المثال ، فحص modulo 97 المشار إليه أدناه ، والذي يستخدم رقمين للتحقق - للخوارزمية ، انظر رقم الحساب المصرفي الدولي ) و / أو استخدام نطاق أكبر من الأحرف في خانة الاختيار ، على سبيل المثال الأحرف والأرقام.
أمثلة
اتحاد الوطنيين الكونغوليين
الرقم الأخير من رمز المنتج العالمي هو رقم تحقق محسوب على النحو التالي: [2]
- اجمع الأرقام في المواضع الفردية من اليمين (الأول والثالث والخامس وما إلى ذلك - باستثناء رقم التحقق) معًا واضرب في ثلاثة.
- أضف الأرقام (حتى ولكن لا تشمل رقم الاختبار) في المواضع ذات الأرقام الزوجية (الثاني والرابع والسادس وما إلى ذلك) إلى النتيجة.
- خذ باقي النتيجة مقسومًا على 10 (أي عملية modulo 10). إذا كان الباقي يساوي 0 ، فاستخدم 0 كرقم تحقق ، وإذا لم يكن 0 اطرح الباقي من 10 لاشتقاق رقم التحقق.
على سبيل المثال ، الرمز الشريطي UPC-A لصندوق المناديل هو "036000241457". الرقم الأخير هو رقم التحقق "7" ، وإذا كانت الأرقام الأخرى صحيحة ، فيجب أن ينتج حساب رقم الاختبار 7.
- اجمع الأرقام الفردية: 0 + 6 + 0 + 2 + 1 + 5 = 14.
- اضرب الناتج في 3: 14 × 3 = 42.
- اجمع الأرقام الزوجية: 3 + 0 + 0 + 4 + 4 = 11.
- اجمع النتيجتين معًا: 42 + 11 = 53.
- لحساب رقم الاختبار ، خذ ما تبقى من (53/10) ، والذي يُعرف أيضًا باسم (53 modulo 10) ، وإذا لم يكن 0 ، اطرح من 10. لذلك ، فإن قيمة خانة التحقق هي 7. أي (53/10) ) = 5 الباقي 3 ؛ 10-3 = 7.
مثال آخر: لحساب رقم التحقق للمادة الغذائية التالية "01010101010 x ".
- أضف الأرقام الفردية: 0 + 0 + 0 + 0 + 0 + 0 = 0.
- اضرب الناتج في 3: 0 x 3 = 0.
- أضف الأرقام الزوجية: 1 + 1 + 1 + 1 + 1 = 5.
- اجمع النتيجتين معًا: 0 + 5 = 5.
- لحساب رقم التحقق ، خذ ما تبقى من (5/10) ، والذي يُعرف أيضًا باسم (5 modulo 10) ، وإذا لم يكن 0 ، اطرح من 10: ie (5/10) = 0 المتبقي 5 ؛ (10-5) = 5. إذن ، قيمة خانة التحقق x هي 5.
رقم ISBN 10
الحرف الأخير من رقم الكتاب القياسي الدولي المكون من عشرة أرقام هو رقم تحقق محسوب بحيث يتم ضرب كل رقم في موضعه في الرقم (العد من اليمين) وأخذ مجموع هذه المنتجات ، modulo 11 ، هو 0. الرقم الأبعد إلى اليمين (الذي يتم ضربه في 1) هو رقم التحقق المختار لجعل المجموع صحيحًا. قد تحتاج إلى الحصول على القيمة 10 ، والتي يتم تمثيلها بالحرف X. على سبيل المثال ، خذ ISBN 0-201-53082-1: مجموع المنتجات 0 × 10 + 2 × 9 + 0 × 8 + 1 × 7 + 5 × 6 + 3 × 5 + 0 × 4 + 8 × 3 + 2 × 2 + 1 × 1 = 99 ≡ 0 ( التعديل 11). لذا فإن رقم ISBN صالح. لاحظ أنه يمكن أيضًا حساب المواضع من اليسار ، وفي هذه الحالة يتم ضرب رقم التحقق في 10 للتحقق من الصلاحية: 0 × 1 + 2 × 2 + 0 × 3 + 1 × 4 + 5 × 5 + 3 × 6 + 0 × 7 + 8 × 8 + 2 × 9 + 1 × 10 = 143 0 (نموذج 11).
رقم ISBN 13
رقم ISBN 13 (قيد الاستخدام في يناير 2007) يساوي رمز EAN-13 الموجود أسفل الرمز الشريطي للكتاب. يتم إنشاء رقم التحقق الخاص به بنفس طريقة UPC فيما عدا أنه يتم ضرب الأرقام الزوجية في 3 بدلاً من الأرقام الفردية. [3]
EAN (أرقام GLN و GTIN و EAN المُدارة بواسطة GS1)
يتم حساب أرقام التحقق من EAN ( رقم المادة الأوروبية ) (المُدارة بواسطة GS1 ) عن طريق جمع كل رقم من أرقام المواضع الفردية مضروبًا في 3 ثم إضافة مجموع أرقام المواضع الزوجية. يتم فحص الأرقام من اليمين إلى اليسار ، لذا فإن الموضع الفردي الأول هو آخر رقم في الكود. يتم طرح الرقم الأخير من النتيجة من 10 لحساب رقم التحقق (أو تركه كما هو إذا كان صفرًا بالفعل). تتوفر آلة حاسبة لرقم التحقق من GS1 والوثائق التفصيلية عبر الإنترنت على موقع GS1 الإلكتروني. [4] تُظهر صفحة حاسبة رسمية أخرى أن آلية GTIN-13 هي نفسها بالنسبة لرقم الموقع العالمي / GLN. [5]
NCDA
تم تصميم خوارزمية NOID للتحقق من الأرقام (NCDA) ، [6] المستخدمة منذ عام 2004 ، للتطبيق في المعرفات الثابتة وتعمل مع سلاسل متغيرة الطول من الأحرف والأرقام ، تسمى الأرقام الموسعة. يتم استخدامه على نطاق واسع مع مخطط معرف ARK ويستخدم إلى حد ما مع المخططات ، مثل نظام المقبض و DOI . يتم تقييد الرقم الممتد على رقم بيتانالأحرف ، وهي أبجدية رقمية مطروحًا منها حروف العلة والحرف "l" (ell). يساعد هذا التقييد عند إنشاء سلاسل غير شفافة من غير المحتمل أن تشكل كلمات عن طريق الصدفة ولن تحتوي على كل من O و 0 ، أو l و 1. بوجود أصل أساسي من R = 29 ، تسمح ذخيرة betanumeric للخوارزمية بضمان الكشف عن مفردات أخطاء في الأحرف والتبديل [7] للسلاسل التي يقل طولها عن R = 29 حرفًا (والتي توفر بعدها تحققًا أضعف قليلاً). تُعمم الخوارزمية على أي ذخيرة شخصية ذات أصل أساسي R وسلاسل أقل من حرف R في الطول.
أمثلة أخرى لأرقام التحقق
دولي
- رقم SEDOL الدولي.
- الرقم الأخير من رمز ISSN أو رقم IMO .
- و الدولي للأوراق المالية تحديد عدد (ISIN).
- الرقم النهائي القياسي لمجموعة إدارة الكائنات FIGI . [8]
- الرقم النهائي لرقم سجل CAS الدولي .
- Modulo 10 أرقام تحقق في أرقام حسابات بطاقة الائتمان ، محسوبة بواسطة خوارزمية Luhn .
- تُستخدم أيضًا في أرقام KID النرويجية (رقم تعريف العميل) المستخدمة في البنك giros (تحويل الائتمان) ،
- المستخدمة في IMEI للهواتف المحمولة.
- آخر رقم تحقق في تسلسل EAN / UPC لرقم تعريف التجارة العالمي ( GTIN ). تسري على GTIN-8 و GTIN-12 و GTIN-13 و GTIN-14.
- الرقم الأخير من رقم DUNS (على الرغم من أنه تمت جدولته للتغيير ، مثل أن يتم اختيار الرقم الأخير بحرية في عمليات التخصيص الجديدة ، بدلاً من أن يكون رقم تحقق).
- الرقمان الثالث والرابع في رقم حساب مصرفي دولي (فحص Modulo 97).
- الرقم الأخير في رمز نص قياسي دولي .
- الحرف الأخير المشفر في بطاقة الشريط المغناطيسي هو فحص التكرار الطولي المحسوب .
في الولايات المتحدة
- الرقم العاشر من معرّف المزود الوطني لصناعة الرعاية الصحية في الولايات المتحدة.
- الرقم الأخير من كود POSTNET .
- رقم CUSIP في أمريكا الشمالية .
- الرقم الأخير (التاسع) من رقم عبور توجيه ABA ، وهو رمز بنكي مستخدم في الولايات المتحدة.
- الرقم التاسع من رقم تعريف السيارة (VIN).
- تشتمل أرقام تعريف المريض في Mayo Clinic المستخدمة في ولايتي أريزونا وفلوريدا على رقم تحقق لاحق [ بحاجة لمصدر ] .
- الرقم الحادي عشر من رقم إدخال الجمارك وحماية الحدود .
في أمريكا الوسطى
- الرقم الضريبي الغواتيمالي (NIT - Número de Identificación Tributaria) بناءً على النموذج 11.
في أوراسيا
- يستخدم رقم UK NHS خوارزمية modulo 11.
- رقم التعريف المالي الأسباني (número de identificación Financial ، NIF) ، (استنادًا إلى المعيار 23).
- يستخدم Burgerservicenummer الهولندي (BSN) (المعرف الوطني) خوارزمية modulo 11.
- الرقم التاسع من رقم تيودت زيهوت الإسرائيلي .
- الرقم 13th من الصربي و اليوغسلافي السابق فريد ماستر المواطن الرقم (JMBG) . (ولكن ليس كلهم بسبب أخطاء أو عدم الإقامة)
- آخر رقمين من رقم التعريف التركي المكون من 11 رقمًا ( بالتركية : TC Kimlik Numarası ).
- الحرف التاسع في رقم جواز سفر الماشية في الاتحاد الأوروبي المكون من 14 حرفًا (الدورات من 1 إلى 7: انظر خدمة حركة الماشية البريطانية ).
- الرقم التاسع في مدرسة Kennitala الأيسلندية (رقم الهوية الوطنية).
- مودولو 97 رقما الاختيار في بلجيكا و صربيا أرقام الحسابات المصرفية. تستخدم صربيا أحيانًا أيضًا modulo 11 للرقم المرجعي.
- الرقم التاسع في رقم TAJ المجري (رقم التأمين الاجتماعي).
- بالنسبة للمقيمين في الهند ، فإن رقم الهوية الفريد المسمى Aadhaar يحتوي على رقم ثانوي 12 يتم حسابه باستخدام خوارزمية Verhoeff . [9]
- في مكتب الملكية الفكرية في سنغافورة (IPOS) أكدت وجود شكل جديد لأرقام تطبيق للتسجيل الملكية الفكرية (IP، على سبيل المثال، العلامات التجارية ، براءات الاختراع ، التصاميم المسجلة ). سيتضمن رمز التحقق المحسوب باستخدام خوارزمية Damm . [10]
- يتم حساب الرقم الأخير من رقم معرف المواطن الصيني (الجيل الثاني) بواسطة modulo 11-2 كما هو محدد في GuoBiao الصيني (المعروف أيضًا باسم المعيار الوطني) GB11643-1999 الذي يعتمد ISO 7064: 1983. يتم استخدام "X" إذا كان رقم التحقق المحسوب هو 10.
- الرقم الحادي عشر من Isikukood الإستونية (رمز التعريف الشخصي).
في أوقيانوسيا
- رقم الملف الضريبي الأسترالي (بناءً على modulo 11).
- الحرف السابع من رقم NHI النيوزيلندي .
- الرقم الأخير في رقم نظام مراقبة حركة القاطرات النيوزيلندية (TMS).
الخوارزميات
تشمل الخوارزميات البارزة ما يلي:
- خوارزمية لوهن (1954)
- خوارزمية Verhoeff (1969)
- خوارزمية دام (2004)
انظر أيضا
المراجع
- ^ جوزيف كيرتلاند (2001). أرقام التعريف والتحقق من مخططات الأرقام . مواد موارد الفصل الدراسي. الرابطة الرياضية الأمريكية. ص 4 - 6. رقم ISBN 978-0-88385-720-5.
- ^ "GS1 Check Digit Calculator" . GS1 الولايات المتحدة. 2006. مؤرشفة من الأصلي في 2008-05-09 . تم الاسترجاع 2008-05-21 .
- ^ "دليل مستخدمي ISBN" . وكالة ISBN الدولية. 2005 . تم الاسترجاع 2008-05-21 .
- ^ "تحقق من الرقم الحاسبة" . GS1. 2005 . تم الاسترجاع 2008-05-21 .
- ^ "Check Digit Calculator ، في GS1 US official site" . GS1 الولايات المتحدة . تم الاسترجاع 2012-08-09 .
- ^ https://metacpan.org/pod/distribution/Noid/noid#NOID-CHECK-DIGIT-ALGORITHM
- ^ ديفيد بريسود ، ستان واجون ، "نظرية العدد الحسابي" ، 2000 ، Key College Publishing
- ^ http://openfigi.com
- ^ "بطاقة تعريف فريدة" . جيك جازيت . IEEE Student Branch ( خريف 2011 ): 16. مؤرشفة من الأصلي في 2012-10-24.
- ^ د.تشونج يي خو (20 يناير 2014). "تنسيق جديد لأرقام تطبيقات سنغافورة IP في IPOS" . مدونة سنغافورة براءات الاختراع . Cantab IP . تم الاسترجاع 6 يوليو 2014 .
روابط خارجية
- أرقام التعريف ومخططات أرقام التحقق (شرح رياضي لمخططات أرقام التحقق المختلفة)
- UPC و EAN و SCC-14 آلة حاسبة للتحقق من الأرقام
- GS1 خانة الاختيار حاسبة