Embedded Section Index | Page 6
An applet may only change the value of the Global PIN if it was granted the PIN CHANGE privilege : applet privilege is specified at installation time: its sent as a byte in the INSTALL comma...more
No. There is no method equivalent to PIN.isValidated() in the OP API. The applet needs to save the GP status locally. Using transient data to do so is a good idea.
Yes. Data is only transmitted at the end of the process() function, so as long as you call apdu.setOutgoing() before throwing the ISOException, theres no problem. more
No, the only available method is OPSystem.setPin() which changes the value of the Global PIN and unblocks it.
There is no APDU command to change/unblock the Global PIN in the Global Platform specification. However, the Visa Card Implementation Requirements define a command to do so.
You just have to pass the incoming APDU to ProviderSecurityDomain.unwrap(). If the call returns, this means that the APDU has been successfully decrypted/verified. If not, the Card Manager throws ...more
To implement the INITIALIZE UPDATE and EXTERNAL AUTHENTICATE commands, you respectively have to use: ProviderSecurityDomain.openSecureChannel() ProviderSecurityDomain.verifyExternalAuthenticate()...more
A card needs to be inserted in a card reader (also called card acceptance device, or CAD). If the card is a contact less card, it just needs to be close enough from the reader for a fixed period o...more
Not yet. Right now, you have to use ISO7816-style communication. However, a subset of Java RMI is strongly considered for Java Card 2.2.
The status of the Global PIN is local to each applet. However, the Global PIN value and try counter are shared by all applets.
The status word is a 2-byte value, returned to the reader after an application has processed an APDU. Data is optional in a response APDU, but the status word is mandatory. If the process() functi...more
The APDU (Application Protocol Data Unit) is the communication unit between a reader and a card. The structure of an APDU is defined by the ISO 7816 standards. There are two categories of APDUs: c...more
The Global PIN is a PIN that may be checked by all applets on a card, using OPSystem.verifyPin(). Its value is usually set at personalization time.
In standard Java, youd do something like throw new MyException(). The problem is that Java Card doesnt support garbage collection. Hence, its highly undesirable to create many sh...more
How can I use my own class loader to load classes into my J2ME device?