JCMint is a JavaCard implementation of BDHKE and dBDHKE protocols on secp256k1 curve.
To build the applet, clone this repository with submodules, set your card type in the main applet file on line 10, and run:
./gradlew buildJavaCard
The resulting cap file can be found in applet/build/javacard/jcmint.cap
.
Tests and performance measurement can be run using the following command. If you followed the instructions in the Building the Applet section, installed the applet on a card, and have it connected, you may change the line 17 in file AppletTest.java and line 17 in file PerformanceTest.java to run the tests on the smartcard; otherwise, the tests will run in a simulator.
./gradlew test
If you have multiple readers, you may have to select a different index in the BaseText.java file.