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