Vad är ett Java Card ™?
Java Card ™ -programmeringsgränssnittet är en plattform designad för att skapa applikationer för smartkort och smartkortenheter. Förutom smartkortsrelaterad programmering är Java Card ™ väl lämpad för att skapa applikationer på ett brett spektrum av enheter med små fotavtryck, lågminne, som vissa typer av mobiltelefoner. Dessa små applikationer körs mycket på samma sätt som större Java®-program; en virtuell maskin skapar en basmiljö och sedan körs Java®-koden inom den. Den enda verkliga skillnaden mellan standard Java® och ett Java Card ™ -system är storleken och en handfull funktioner som ännu inte har implementerats.
Java Card ™ kom ursprungligen på marknaden 1996. Vid denna tidpunkt var den enda användningen för tekniken i smartkortbaserade system. När tiden gick ökade antalet små datorplattformar. Nu används detta system på ett brett utbud av enheter som fungerar med plattformsbegränsningar som liknar ett smartkortsystem.
Språket passar för en miljö som har mycket begränsat minne och processorkraft. Majoriteten av smartkortsystemen använder en fast miljö; utanför specialutrustning är det mycket svårt att få ett program på eller utanför kortet. Dessa miljöer är ofta extremt begränsade när det gäller tillgängliga resurser, vilket gör språket perfekt.
Den vanligaste sekundära platsen för Java Card ™ är på mobiltelefoner. De flesta moderna smartphones har faktiskt tillräckligt med minne och kraft för att använda mer avancerade Java®-plattformar, så kortsystemen är ofta begränsade till äldre smartphones eller hantelefoner. Ett litet urval av andra enheter använder Java Card ™ -teknologi, oftast sådana som använder tilläggskort eller minneskort för ytterligare programmering.
De flesta Java®-system fungerar på samma sätt, oavsett planerad plattform eller total storlek. En virtuell maskin skapar en emulerad miljö på målenheten. Java®-programmet körs inom den miljön med liten hänsyn till systemets faktiska hårdvara. Den virtuella maskininstallationen är annorlunda på varje plattform, men de inre funktionerna är det inte. Som ett resultat är det möjligt att köra samma applikation på ett brett utbud av datorer eller enheter utan konvertering.
Java Card ™ -språkets huvudmål är kompatibilitet och säkerhet. Detta språk är utformat för att vara kompatibelt med nästan alla enheter som vill använda det. Detta görs vanligtvis via individuellt kodade virtuella maskiner. När den virtuella maskinen för hårdvaran är i drift är applikationer relativt enkla att överföra.
Det andra huvudfokuset är att skapa ett säkert program och en plattform. Eftersom smarta system ofta innehåller känslig information har språket ett brett spektrum av metoder för att skydda den informationen medan den används. Dessa metoder sträcker sig från inre applikationsbrandväggar till flera krypteringsformer.