Skip to content

h2lab/smartleia-target-applet

 
 

GitHub license Build status

smartleia-target-applet

Smartleia target applet for testing APDUs and cryptography.

This (Javacard) applet must be pushed to a Javacard compatible smart card, i.e. a smart card with a Javacard VM based Operating System. You can check if your card is a Javacard using the commands java -jar gp.jar -i for general information and java -jar gp.jar -l to list the content of the card. An exception/error on these commands will probably mean that your smart card is not a Javacard.

Purpose of the applet

The purpose of the applet is to provide:

  • Tests for APDU cases 1, 2, 3 and 4 (for short and extended APDUs), as well as time extensions. Please refer to the ISO7816-3 standard for more information on this.
  • Tests for AES computations using the Javacard API.

The details of the APDU commands and expected responses are provided in the cmd.txt file, where the opensc tool is used as a command line way of cimmunicating with the smart card.

Compilation

In order to compile the project, you will need java with JDK of version 8 or 11, this is a strong requirement from ant-javacard as reminded here. You can fetch OpenJDK versions from AdoptOpenJDK.

The 3.0.3 Javacard SDK (jc303_kit) (Javacard API 3.0.1) is also needed, and must be downloaded and put in the sdk folder. You can find Javacard SDKs for example here. Just drop the jc303_kit folder in it as explained in sdks/README.txt.

When this is done, you can compile the applet using a simple:

$ make

Pushing the applet

Pushing the applet uses the gp.jar tool, and can be done using:

$ make push

Notes

ant-javacard.jar is a courtesy of the ant-javacard open source project.

gp.jar is a courtesy of the GlobalPlatformPro open source project.

Releases

No releases published

Packages

No packages published

Languages

  • Java 99.2%
  • Makefile 0.8%