دليل أوامر البطاقات الذكية ISO 7816-4

August 18, 2024 1071 التعليقات

تنزيل  معيار ISO 7816-4



توضح هذه الصورة دليل أوامر البطاقات الذكية ISO 7816-4 ضمن تطبيقات المعايير والبروتوكولات.



ما الذي يحدده معيار ISO 7816-4؟

يعد ISO 7816-4 من أكثر أجزاء عائلة ISO/IEC 7816 أهمية من الناحية العملية، لأنه يوضح كيفية تبادل الأوامر والاستجابات على مستوى التطبيق بين جهاز الواجهة والبطاقة ذات الدارة المتكاملة. وبينما يركز ISO 7816-3 على الإشارات الكهربائية وبروتوكولات النقل، يعمل ISO 7816-4 في طبقة أعلى، حيث يوفر لغة أوامر مشتركة لتطبيقات البطاقات، تشمل اختيار الملفات، والوصول إلى البيانات الثنائية، ومعالجة السجلات، ودعم المصادقة، والرسائل الآمنة، والإبلاغ عن حالة الاستجابة.

يكتسب هذا المعيار أهمية خاصة في البطاقات الذكية التلامسية المستخدمة في التعريف، والخدمات المصرفية، والتحكم في الوصول، والنقل، والرعاية الصحية، وبرامج الولاء، ومشروعات بيانات الاعتماد الآمنة. وبالنسبة إلى المصنّعين والمكاملين ومطوري البرمجيات، فإنه يقلل الالتباس بين البطاقة والقارئ والتطبيق. قد تحتوي البطاقة على منطق خاص، لكن ISO 7816-4 يوفر إطارًا مشتركًا يساعد على بناء الأوامر وتفسيرها واختبارها بطريقة قابلة للتوقع.

بنية رسائل APDU

وحدة الاتصال الأساسية في ISO 7816-4 هي APDU، أي وحدة بيانات بروتوكول التطبيق. تحتوي APDU الخاصة بالأمر عادةً على ترويسة من أربعة بايتات تتكون من CLA وINS وP1 وP2. يوضح CLA فئة الأمر، وقد يحمل معلومات حول القنوات المنطقية أو الرسائل الآمنة. ويحدد INS التعليمة، بينما يوفر P1 وP2 المعلمات. وبحسب حالة الأمر، قد يتضمن جسم الرسالة أيضًا Lc وحقل بيانات وLe.

يوضح Lc عدد البايتات الموجودة في حقل بيانات الأمر، بينما يحدد Le الحد الأقصى لعدد البايتات المتوقعة في الاستجابة. ويصف ISO 7816-4 حالات الأوامر بدءًا من الأوامر التي لا تتضمن تبادل بيانات، وصولًا إلى الأوامر التي ترسل بيانات وتطلب بيانات في المقابل. أما APDU الخاصة بالاستجابة فتحتوي على حقل بيانات اختياري يليه بايتا حالة إلزاميان، هما SW1 وSW2، ويبيّنان للطرفية ما إذا كانت المعالجة قد نجحت أو فشلت أو تحتاج إلى إجراء إضافي.

تنظيم الملفات المنطقي

يحدد ISO 7816-4 نموذج ملفات منطقيًا يمكن الوصول إليه من واجهة البطاقة. يبدأ الهيكل من الملف الرئيسي Master ملف أو MF. وتحته يمكن أن توجد ملفات مخصصة Dedicated Files أو DFs لتجميع التطبيقات أو بيئات البيانات. أما الملفات الأولية Elementary Files أو EFs فتُستخدم لتخزين البيانات الفعلية. بعض ملفات EF تكون شفافة ويتم الوصول إليها عبر الإزاحات، بينما يتم الوصول إلى ملفات EF القائمة على السجلات بواسطة أرقام السجلات أو معرّفاتها.

هذا التنظيم مهم لأن كثيرًا من تطبيقات البطاقات الذكية لا تكون مجرد كتل ذاكرة بسيطة. فقد تحتوي على عدة تطبيقات، أو كائنات بيانات شخصية، أو كائنات أمان، أو سجلات استخدام، أو مناطق يتحكم فيها المُصدر. يتيح أمر SELECT FILE لتطبيق القارئ اختيار ملف عبر معرّف الملف أو المسار أو اسم DF. وبعد الاختيار، يمكن لأوامر مثل READ BINARY وREAD RECORD وUPDATE BINARY وUPDATE RECORD تنفيذ عمليات على البيانات وفق قواعد الوصول الخاصة بالبطاقة.

كائنات البيانات وترميز TLV ومعلومات FCI

يوضح ISO 7816-4 أيضًا كيفية تمثيل البيانات عند واجهة البطاقة. ويعني TLV الوسم والطول والقيمة علامة, Length, Value. يحدد الوسم نوع الكائن، ويبيّن الطول عدد البايتات التالية، بينما تحتوي القيمة على البيانات نفسها. ويشير المعيار إلى هياكل BER-TLV وCOMPACT-TLV وSIMPLE-TLV حسب السياق. تساعد هذه الطريقة البطاقة على إرجاع بيانات منظمة دون إلزام كل تطبيق بتفسير البايتات الخام وفق تخطيط ثابت واحد.

توفر معلومات التحكم في الملف، والمعروفة غالبًا باسم FCI، بيانات للطرفية حول الملف المحدد. وقد تشمل واصفات الملفات، ومعرّفات الملفات، ومعلومات حجم الملف، وأسماء DF، والبيانات الخاصة، وسمات الأمان. في المشروعات العملية، يساعد فهم FCI المهندسين على التأكد من اختيار التطبيق أو الملف الصحيح قبل إصدار أوامر القراءة أو الكتابة أو المصادقة.

بنية الأمان والرسائل الآمنة

لا يحدد ISO 7816-4 خوارزمية تشفير عالمية واحدة لكل البطاقات. بل يوضح كيفية تمثيل واستخدام حالة الأمان، وسمات الأمان، والأوامر المرتبطة بالمصادقة، والرسائل الآمنة. وقد تطلب البطاقة كلمة مرور أو PIN أو مصادقة قائمة على المفاتيح أو رسائل آمنة قبل السماح بالوصول إلى ملف أو تنفيذ أمر معين. لذلك قد يتم رفض أمر مصاغ بشكل صحيح إذا لم يتم الوصول إلى حالة الأمان المطلوبة.

تدعم أوامر مثل VERIFY وGET CHALLENGE وINTERNAL AUTHENTICATE وEXTERNAL AUTHENTICATE مسارات العمل الأمنية الشائعة. ويمكن للرسائل الآمنة حماية بيانات الأوامر والاستجابات عبر آليات السلامة والمصادقة والسرية، بحسب طريقة التنفيذ. وفي تخصيص البطاقات، والتحكم في الوصول، وإصدار بيانات الاعتماد، تساعد هذه القواعد على فصل عمليات البيانات العامة عن العمليات المحمية.

لماذا يهم ISO 7816-4 في مشروعات البطاقات والقارئات؟

بالنسبة إلى مصنع البطاقات، لا يعد ISO 7816-4 مرجعًا بروتوكوليًا فقط. فهو يؤثر في طريقة تخصيص التطبيقات، وكتابة نصوص الاختبار، والتحقق من توافق القارئات، وكيفية اتصال أنظمة العملاء بالبطاقات الصادرة. عند إنتاج بطاقات IC تلامسية، يحتاج المهندسون غالبًا إلى تأكيد بنية الملفات، وسلوك APDU، وربط كلمات الحالة، وشروط الوصول قبل الإنتاج الكمي.

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

ينبغي أن تراجع دراسة ISO 7816-4 العملية جانبي النظام معًا. فمن جهة البطاقة، يجب توثيق هيكل الملفات، والتعليمات المدعومة، ومتطلبات الأمان، وكلمات الحالة المتوقعة. ومن جهة القارئ، يجب أن يبني التطبيق رسائل APDU صحيحة، ويتعامل مع الأطوال المدعومة، ويفسر بيانات TLV بدقة، ويستجيب بطريقة مناسبة لكلمات الحالة مثل النجاح، أو الطول غير الصحيح، أو عدم تحقق حالة الأمان، أو عدم العثور على الملف.

أوامر ISO 7816-4 الشائعة

تظهر عدة أوامر بشكل متكرر في العمل الفعلي مع البطاقات الذكية. يختار SELECT FILE التطبيق أو الملف المطلوب العمل عليه. وتُستخدم READ BINARY وUPDATE BINARY مع الملفات الشفافة. أما READ RECORD وAPPEND RECORD وUPDATE RECORD فتُستخدم مع الملفات القائمة على السجلات. ويتعامل GET DATA وPUT DATA مع كائنات البيانات. ويرتبط VERIFY عادةً بالتحقق من PIN أو كلمة المرور. كما يدعم GET CHALLENGE وأوامر المصادقة الإجراءات التشفيرية. ويُستخدم MANAGE CHANNEL عندما تتيح القنوات المنطقية الحفاظ على عدة جلسات في الوقت نفسه.

الأسئلة الشائعة

ما استخدام ISO 7816-4؟

يُستخدم ISO 7816-4 لتحديد كيفية تبادل الأوامر والاستجابات بين البطاقة الذكية والطرفية على مستوى التطبيقات المشتركة بين القطاعات. وهو يغطي بنية APDU، وتنظيم الملفات، والوصول إلى البيانات، وبايتات الحالة، ومفاهيم الرسائل الآمنة، والخدمات المستقلة عن التطبيق. ويُعد أساسًا لكثير من أنظمة البطاقات الذكية التلامسية التي تتطلب اتصالًا موثوقًا بين شرائح البطاقات وبرمجيات القارئات.

هل يقتصر ISO 7816-4 على البطاقات الذكية التلامسية؟

ترتبط عائلة ISO 7816 أساسًا ببطاقات الدارات المتكاملة ذات نقاط التلامس، وينتمي ISO 7816-4 إلى هذه العائلة. ومع ذلك، فإن أسلوب الاتصال القائم على APDU مألوف أيضًا في كثير من بيئات البطاقات الذكية والعناصر الآمنة الأوسع نطاقًا. ومع ذلك، يجب على المهندسين التحقق من الواجهة الفيزيائية وطبقة النقل بشكل منفصل، لأن ISO 7816-4 يركز على تنظيم الأوامر والاستجابات، وليس على تفاصيل الهوائي أو الراديو أو الكهرباء.

ما معنى APDU في ISO 7816-4؟

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

ماذا يعني SW1 وSW2؟

SW1 وSW2 هما بايتا الحالة الموجودان في نهاية APDU الخاصة بالاستجابة. وهما يصفان نتيجة معالجة الأمر. على سبيل المثال، قد يشيران إلى تنفيذ ناجح، أو طول غير صحيح، أو ملف مفقود، أو تعليمة غير مدعومة، أو عدم تحقق حالة الأمان. ويُعد التعامل الصحيح مع هذين البايتين أمرًا ضروريًا لبناء برمجيات قارئات قوية ولاختبارات الإنتاج.

كيف يتعامل ISO 7816-4 مع الملفات داخل البطاقة؟

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

هل يحدد ISO 7816-4 خوارزميات التشفير؟

لا. يحدد ISO 7816-4 هياكل الأوامر، ومفاهيم حالة الأمان، وتنسيقات الرسائل الآمنة، ودعم الأوامر المتعلقة بالمصادقة، لكنه لا يفرض خوارزمية تشفير محددة واحدة على جميع البطاقات. عادةً ما تُحدد الخوارزمية الفعلية، وطريقة إدارة المفاتيح، وسياسة التطبيق من خلال نظام تشغيل البطاقة أو مواصفة المُصدر أو ملف أمان المشروع.

لماذا يهم ISO 7816-4 في تصنيع البطاقات؟

يساعد هذا المعيار المصنّعين والمكاملين على التحقق من أن منتج البطاقة يتصرف بطريقة قابلة للتوقع أثناء التخصيص، واختبار القارئات، ونشر النظام. فإذا لم تكن عملية اختيار الملفات، ومعالجة أطوال APDU، وكلمات الحالة، وشروط الأمان متسقة، فقد تفشل بطاقة صحيحة من الناحية الفيزيائية داخل طرفية العميل. يوفر ISO 7816-4 مرجعًا تقنيًا مشتركًا لاستكشاف الأخطاء واختبارات القبول.

رمز التحقق