Ce este un Java Card™?

Interfața de programare a aplicației Java Card™ este o platformă concepută pentru a crea aplicații pentru carduri inteligente și dispozitive cu carduri inteligente. Pe lângă programarea legată de carduri inteligente, Java Card™ este potrivit pentru crearea de aplicații pe o gamă largă de dispozitive cu amprentă mică, cu memorie redusă, cum ar fi unele tipuri de telefoane mobile. Aceste aplicații mici rulează foarte asemănător cu programele Java® mai mari; o mașină virtuală stabilește un mediu de bază, iar apoi codul Java® rulează în el. Singura diferență reală dintre Java® standard și un sistem Java Card™ este dimensiunea și câteva funcții care nu au fost încă implementate.

Java Card™ a apărut inițial pe piață în 1996. În acest moment, singura utilizare a tehnologiei era în sistemele bazate pe carduri inteligente. Odată cu trecerea timpului, numărul platformelor de calcul mici a crescut. Acum, acest sistem este utilizat pe o gamă largă de dispozitive care funcționează cu restricții de platformă similare cu un sistem de carduri inteligente.

Limbajul este potrivit pentru un mediu care are memorie și putere de procesare foarte limitate. Majoritatea sistemelor de carduri inteligente folosesc un mediu fix; în afara echipamentelor speciale, este foarte dificil să introduceți sau să dezactivați un program de pe card. Aceste medii sunt adesea extrem de limitate în ceea ce privește resursele disponibile, ceea ce face ca limbajul să se potrivească perfect.

Cea mai comună locație secundară pentru Java Card™ este pe telefoanele mobile. Cele mai multe smartphone-uri moderne au, de fapt, suficientă memorie și putere pentru a utiliza platforme Java® mai avansate, astfel încât sistemele de carduri sunt adesea limitate la smartphone-uri mai vechi sau telefoane mobile. O mică selecție de alte dispozitive utilizează tehnologia Java Card™, mai ales cele care folosesc carduri suplimentare sau carduri de memorie pentru programare suplimentară.

Majoritatea sistemelor Java® funcționează în același mod, indiferent de platforma vizată sau de dimensiunea totală. O mașină virtuală creează un mediu emulat pe dispozitivul țintă. Programul Java® rulează în acel mediu cu puțină atenție pentru hardware-ul real al sistemului. Instalarea mașinii virtuale este diferită pe fiecare platformă, dar funcționarea interioară nu este diferită. Ca rezultat, este posibil să rulați aceeași aplicație pe o gamă largă de computere sau dispozitive fără conversie.

Principalele obiective ale limbajului Java Card™ sunt compatibilitatea și securitatea. Acest limbaj este conceput pentru a fi compatibil cu aproape orice dispozitiv care dorește să-l folosească. Acest lucru se face în general prin mașini virtuale codificate individual. Odată ce mașina virtuală pentru hardware este operațională, aplicațiile sunt relativ ușor de portat.
Al doilea obiectiv principal este crearea unui program și platformă sigure. Deoarece sistemele inteligente conțin adesea informații sensibile, limbajul are o gamă largă de metode pentru a proteja acele informații în timp ce sunt utilizate. Aceste metode variază de la firewall-uri interne pentru aplicații la forme multiple de criptare.