ما هي بطاقة Java Card ™؟

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

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

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

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

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

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