Java-kortti

Kokeneet kirjoittajat eivät ole vielä tarkistaneet sivun nykyistä versiota, ja se voi poiketa merkittävästi 17. huhtikuuta 2016 tarkistetusta versiosta . tarkastukset vaativat 9 muokkausta .

Java Card  on Java - alustan versio laitteille, joiden laskentaresurssit ovat erittäin rajalliset. Verrattuna muihin Java -versioihin tavukoodia, suoritusalustaa koskevia vaatimuksia ja standardikirjastojen koostumusta on muutettu.

Tuotteen päätarkoitus on nimensä mukaisesti käyttö älykorteissa . Tässä suhteessa pääpaino asetettiin standardien salausalgoritmien tukemiseen.

Java-kortin avulla voit turvallisesti asentaa ja käyttää pieniä Java - sovelluksia ( sovelmia ) älykorteissa ja muissa laitteissa, joissa on hyvin rajallinen määrä muistia . Tämän alustan avulla toimittaja voi ohjelmoida laitteita ja muokata niitä tiettyä sovellusta varten. Java-korttia käytetään laajalti SIM-korteissa ja pankkiautomaateissa . Schlumbergerin kehittämä [1] , julkaisi yleisölle 29. lokakuuta 1996 [2] useiden yritysten toimesta, mukaan lukien Schlumbergerin silloinen älykorttiosasto (nykyisin Gemalto ). Java Card -ohjelmistoalustaa kuvataan Sun Microsystemsin kehittämissä määrityksissä [3] . Lisäksi GlobalPlatform (standardiorganisaatio) kehittää standardeja Java-korttisovelmien turvalliseen asentamiseen laitteisiin .

Siirrettävyys

Java Card kuvaa älykorttien vakioajonaikaista ympäristöä, jonka avulla sama sovellus voi toimia eri laitteissa, aivan kuten Java SE / Java EE -sovelmat toimivat eri laitteisto- ja ohjelmistotietokoneissa ja Java ME MIDlet -sovellukset  eri laitteissa. Kuten kehittyneemmillä Java-alustoilla, tämä saavutetaan virtuaalikoneen (Java Card Virtual Machine, JCVM ) ja standardoidun luokkakirjaston yhdistelmällä, mikä mahdollistaa sovelman irtautumisen merkittävästi tietyistä älykorttimalleista . Tämä ei kuitenkaan vielä täysin takaa sovelluksen siirrettävyyttä millekään älykortille, koska on olemassa tekijöitä, kuten muistin koko, suorituskyky tai erityisten liitäntöjen (esimerkiksi viestintäprotokollat ​​tai kryptografiset algoritmit) saatavuus.

Java Card OpenPlatform ( JCOP )

JCOP on joukko toimenpiteitä, joilla kehitetään yksi käyttöjärjestelmästandardi Java Card -virtuaalikoneella vahvoja identiteettijärjestelmiä ja maksujärjestelmiä varten. IBM : n kehittämä laajasti integroituna GlobalPlatformin ja ICAO -organisaatioiden kanssa . Nykyään se on käytännössä synonyymi JCVM :lle .

Turvallisuus

Älykorttien tietoturva oli yksi Java Cardin kehittämisen tärkeimmistä tavoitteista . Sen tarjoavat erilaiset alustan ominaisuudet:

Java-kortin ja Javan erot

Kieli

Kielitasolla Java Card  on osajoukko täydellisempiä Java -alustoja : kaikki Java Card -kielirakenteet ovat Javassa ja toimivat täsmälleen samalla tavalla. Lisäksi tavallinen käännösjärjestys käyttää normaalia Java - kääntäjää (javac) ilman erityisiä valintoja, ja vasta sitten tulos käsitellään Java-korttikohtaisella ohjelmalla, jotta saadaan tiedosto, joka voidaan asentaa älykortille. Java-kortit eivät kuitenkaan tue monia Java-kielen ominaisuuksia, kuten char- , double- , float- ja long -tyypit, ohimenevät avainsanat , luetellut tyypit ( enum ), moniulotteiset taulukot, viimeistelylaitteet , objektien kloonaus, virrat .

Bytecode

Java Card -virtuaalikoneen suorittama tavukoodi on toiminnallisesti Java-tavukoodin osajoukko , mutta se on koodattu eri tavalla sovelluksen koon minimoimiseksi. Siten Java Card -sovelma vie tyypillisesti vähemmän tilaa kuin hypoteettinen Java SE -sovelma , joka on saatu kääntämällä samaa lähdekoodia. Tällä älykortin muistin säästämisellä on myös haittapuoli: joidenkin kieliominaisuuksien tuen puute (kuten yllä on kuvattu) ja sovelman koon rajoitus. Kokorajoituksen kiertämiseen on monia tapoja: esimerkiksi jakamalla sovelluskoodi enintään 64 kt:n pakkauksiin.

Kehitys

Tyypillisessä Java Card -sovelluksessa käytetyt ohjelmointitekniikat eroavat merkittävästi Java SE:ssä käytetyistä. Se, että Java Card on Java-kielen tiukka osajoukko, nopeuttaa kuitenkin suuresti tekniikan oppimiskäyrää ja mahdollistaa myös Java SE -ympäristön käytön sovellusten kehittämiseen ja virheenkorjaukseen. Lisäksi voit yhdessä ajaa ja virheenkorjata samassa ympäristössä sekä Java Card -sovelluksen että sen palvelinosan, jonka oletetaan ajettavan PC:llä.

Sinun tulee kuitenkin säännöllisesti tarkistaa, että sovellus noudattaa Java-kortin rajoituksia kääntämällä se sopivaan tavukoodiin, sekä testata sitä todellisella älykortilla saadaksesi käsityksen todellisen laitteen suorituskyvystä.

Linkit

Katso myös

Muistiinpanot

  1. Yhdysvaltain väliaikainen hakemus sarjanumero. 60/029.057 jätetty lokakuuta 25, 1996, ei-väliaikainen hakemus nro. 957512 jätetty 24.10.1997, myönnetty patenttina
  2. Sun Microsystems julkisti Java Card API :n , Business Wire, lokakuu 29, 1996
  3. Yleiskatsaus Java Card Platformista Sunin verkkosivuilla . Haettu 2. elokuuta 2008. Arkistoitu alkuperäisestä 20. heinäkuuta 2008.
  4. Java-korttiteknologian usein kysytyt kysymykset . Haettu 8. elokuuta 2008. Arkistoitu alkuperäisestä 29. toukokuuta 2008.