القائمة

طول رقم الهوية الوطنية: لماذا تختلف التنسيقات بين البلدان

طول رقم الهوية الوطنية يمتد من بضعة أرقام إلى أكثر من عشرة محارف. تعرف هنا على سبب استحالة طول واحد لكل البلدان وعلى التحقق دون ترميز ثابت.

تاريخ النشر

  • بيانات اختبار
  • هوية
  • دولي

طول رقم الهوية الوطنية هو أول ما ينكسر حين يوسع فريق ما نموذجه ليخدم بلدانا متعددة. فالعمود الذي قدر حجمه لرقم بلد واحد سيبتر بصمت الرقم الذي يصدره بلد آخر، ولا يظهر الفشل عادة إلا بعد أشهر في صورة تذكرة دعم عن عميل لا يستطيع التسجيل.

تتناول هذه المقالة الطرق التي تختلف بها أرقام الهوية بين البلدان، ولماذا يمكن أن يغير البلد نفسه تنسيقه مع الزمن، وكيف تبني مسار تحقق يصمد أمام المشكلتين معا.

لماذا لا يوجد طول عالمي موحد؟

صممت أرقام الهوية على أيدي إدارات وطنية ولأغراض وطنية، قبل أن يتخيل أحد حقلا في نموذج يحتاج إلى استيعابها كلها في وقت واحد. ويعكس كل تصميم نظرية مختلفة عن الغرض من الرقم، وتظهر تلك النظرية في شكله.

بعض الأرقام أرقام صرفة، حدد حجمها كي لا يستنفد السكان المساحة المتاحة أبدا. وبعضها يخلط الحروف بالأرقام لكسب مساحة إضافية دون إطالة. وبعضها يحجز المحارف الأولى لرمز فئة أو مكتب إصدار أو منطقة. وبعضها يضم تاريخ ميلاد صاحبه. وبعضها يضيف محرفا أو محرفين للتحقق محسوبين حسابيا من بقية الأرقام.

ولأن التصاميم مختلفة فإن الأطوال مختلفة. تمتد الأرقام من بضعة محارف في أصغر الأنظمة إلى أكثر من عشرة بكثير في أكبرها، والمدى واسع بما يكفي ليكون أي حكم بعرض ثابت خاطئا في مكان ما.

عائلات أرقام الهوية

تجميع الأرقام بحسب التصميم لا بحسب البلد هو النموذج الذهني الأنفع، لأن نتائج التحقق تتبع التصميم لا الخريطة.

رقمية صرفة. أرقام فقط، وكثيرا ما يكون فيها صفر بادئ. يجب تخزينها كنص، ولا تحول إلى عدد صحيح أبدا.

أبجدية رقمية. حروف وأرقام مخلوطة في مواضع محددة. تفحص موضعا موضعا لا بعدد أرقام واحد.

حاملة تاريخ. تاريخ الميلاد منسوج في المحارف الأولى. والتاريخ يجب أن يكون تاريخا تقويميا حقيقيا، وهو ما تنساه معظم القواعد.

حاملة رقم تحقق. محارف تحقق حسابية في النهاية. ويمكن التحقق من المحارف الأخيرة، لكن وفق القاعدة المعلنة فقط.

حرة الشكل. لا بنية يستطيع أحد الاعتماد عليها. حدود الطول والمحارف هي الفحوص الصادقة الوحيدة.

وحين يحمل الرقم محارف تحقق، يكون الحساب عادة مجموعا مرجحا يطبق عليه باقي القسمة—وهي الفكرة العريضة نفسها التي تستخدمها مخططات ترقيم كثيرة، ولذلك يمكن لشرح مفهومي واحد أن يخدم عدة بلدان وإن اختلفت ثوابتها. وما يثبته نجاح رقم التحقق ضيق وينبغي نصه بوضوح حيث يوثق: أن الرقم متسق داخليا، لا أنه صدر لأحد.

هل يجب أن يكون طول الحقل ثابتا؟

لا، وهذا أخطر افتراض في المجال كله. فالطول الثابت إما يبتر التنسيقات الأطول وإما يحشو الأقصر بحشو، وكلاهما يفسد القيمة. والحشو أسوأ من البتر من وجه واحد: الرقم المحشو يبدو معقولا، فيمر بهدوء إلى الأنظمة اللاحقة قبل أن يلاحظه أحد.

خزن أرقام الهوية كنص متغير الطول وفرض سقفا أعلى سخيا. والسقف موجود لمنع حادث لصق يملأ العمود بمقالة، لا للتأكيد على أن كل بلد يستخدم هذا العدد من المحارف. وإن احتاج التطبيق قاعدة خاصة ببلد، فطبقها شرطيا بعد معرفة البلد.

وهناك سبب ثان لإبقاء العمود سخيا. فالبلدان تغير تنسيقاتها، وحين يحدث ذلك يجب أن تبقى السجلات القديمة عاملة بينما تتبع الجديدة القاعدة الجديدة. والعمود الذي كان بطول القديم بالضبط لا يملك متسعا للانتقال.

ما الذي يحدث عندما يغير بلد تنسيقه؟

التنسيقات تتغير فعلا، وليس بطرق صغيرة فقط. قد يطيل بلد رقمه حين يتجاوز عدد السكان المساحة المتاحة، أو يضيف محرف تحقق لتقليل أخطاء إدخال البيانات، أو يعيد تنظيم الكتل الداخلية، أو يستبدل مخططا بمخطط مختلف تماما ويمنح الحاملين فترة انتقال يكون فيها المخططان صالحين.

والدرس لمن يكتب التحقق أن للقاعدة تاريخ سريان. فالمدقق الذي يقبل الشكل الحالي فقط سيرفض كل سجل صدر وفق الشكل السابق، وتلك السجلات تبقى صالحة ما دام البلد يقول إنها كذلك. والمدقق الذي يقبل الشكل القديم فقط أسوأ حالا.

وعمليا يعني هذا أمرين: أبق قواعد التحقق مؤرخة لا خالدة، واجعل رسالة الرفض تصف ما الخطأ في القيمة بدلا من إعلان أن رقم الشخص غير موجود. فالنموذج الذي يتهم حاملا مشروعا بأن رقمه مزيف نموذج يولد ضغطا على الدعم.

أين تفيد أرقام التحقق فعلا؟

يستحق تنفيذ محارف التحقق حين تكون القاعدة معلنة، لأنها تلتقط أشيع خطأين في إدخال البيانات: محرف مكتوب خطأ، ومحرفان متجاوران كتبا بترتيب معاكس. وكلاهما يغير الحساب، وكلاهما قابل للكشف لذلك.

وتتوقف الفائدة عند هذا الحد. فمحرف التحقق لا يخبرك إن كان الرقم يخص أحدا، ولا يؤكد أن من يستشهد به هو صاحبه، ولا يجعل الرقم وثيقة اعتماد. وأي إجراء يعتبر نجاح محرف التحقق تحققا من الهوية يعتمد على الحساب في مهمة لا يستطيع الحساب أداءها.

وللاختبار، يحدد هذا التمييز موضع منطق محارف التحقق. فهو قاعدة لجودة البيانات—مفيدة عند نقطة الإدخال لالتقاط الأخطاء المطبعية، ومفيدة في مجموعة الاختبارات للتأكد من أن أداة الإنشاء تنتج قيما متسقة داخليا. وهو ليس قاعدة مصادقة، وملف التجهيز الذي يعتبره كذلك سيرمز افتراضا أمنيا غير صحيح. والقيم التي تنتجها أداة الهوية وبيانات الاختبار سجلات وهمية صحيحة التنسيق، وهي مخصصة لتشغيل قواعد كهذه، وليست أرقاما حقيقية ولا يجوز استخدامها للتنكر بهوية أحد.

كيف تتعامل مع بلد لم تنمذجه؟

أبق مسارا احتياطيا صادقا. فحين يكون البلد مجهولا، أو معروفا لكنه غير منمذج، اقبل مدى واسعا من المحارف والأطوال، وسجل البلد إلى جانب القيمة، ووسم السجل بأنه غير متحقق منه بدلا من معاملته بصمت على أنه سليم.

وتفصيلان تصميميان يجعلان المسار الاحتياطي صالحا للاستعمال. الأول أن تجعل السجلات غير المتحقق منها ظاهرة في المراقبة، كي تكون فجوة التغطية كمية معلومة لا مفاجأة. والثاني ألا تدع المسار الاحتياطي هو الذي يعمل في الإنتاج لبلد نمذجته فعلا—فالقاعدة المتسامحة شبكة أمان، وشبكة الأمان التي تلتقط كل شيء تمنع القاعدة الصارمة من العمل أبدا.

ويستحق بناء مقارنة عملية مرة واحدة. خذ السجل نفسه على شكل شخص، واعرضه وفق قواعد عدة بلدان، وتأكد من أن الحقل يستوعبها كلها دون حشو. والحقول التي تنجح في هذه المقارنة هي عادة تلك التي كتبت كنص منذ البداية.

للمطورين: تصميم حقل المعرف

أربعة قرارات تحمل معظم الثقل عند تعريف الحقل: نوع العمود، والطول الأقصى، ومجموعة المحارف، وموضع التحقق. اضبط الثلاثة الأولى فيصبح الرابع بسيطا.

  • النوع: نص متغير الطول دائما، مع قصر التطبيع على إزالة الفواصل.
  • الطول: سقف سخي لا حجم دقيق، يختار بحيث يقع أطول تنسيق وطني معروف مع متسع إضافي.
  • مجموعة المحارف: كل ما يستخدمه اتحاد البلدان المنمذجة، وهو عمليا حروف وأرقام بعد تسوية علامات التشكيل الأبجدية.
  • التحقق: فرع واحد لكل بلد منمذج، يوجه بقيمة البلد، مع مسار احتياطي موثق لا يتجاوز أبدا قاعدة منمذجة.

واضبط الجانب العابر للحقول أيضا. فالمعرف لا يكون ذا معنى إلا مع البلد الذي أصدره، ومع تاريخ الميلاد في بعض البلدان، لذلك ينبغي أن تنتقل هذه الحقول الثلاثة كمجموعة في ملفات التجهيز. وأبق ملاحظة ملف التجهيز صريحة: هذه معرفات وهمية أنشئت للاختبار البرمجي، وليست أرقاما حقيقية، ولا يجوز عرض أي شيء منها كدليل على هوية أحد.

الخطوات التالية

دقق في طول عمود المعرف في مخططك وقارنه بأطول تنسيق تدعي دعمه؛ فإن كانا الرقم نفسه فالعمود صغير جدا. ثم أنشئ تشكيلة من السجلات في أداة الهوية من عدة بلدان وتأكد من أن كل سجل يجتاز قواعدك، ومنها سجل من بلد لم تنمذجه لإثبات أن المسار الاحتياطي يعمل. ولو أردت أن ترى كيف تصل هذه القيم إلى ملفات التجهيز بدقة، فإن دليل اتساق حقول الهوية يشرح العلاقات التي يجب أن تحفظها السجلات بينها.

تابع القراءة

أدلة أداة إنشاء الهويات وبيانات الاختبار