Questions tagged [javacard]

Java Card refers to a technology that allows Java-dd applications (applets) to be run securely on smart cards and similar small memory footprint devices.

Java Card is the tiniest of Java targeted for embedded devices, typically smart cards. Java Card gives developers the ability to program the device and make them application specific. It is widely used in SIM cards (used in GSM mobile phones) and/or NFC secure elements, ATM cards (containing an EMV chip), and machine readable travel documents.

The first Java Card was introduced in 1996 by Schlumberger's card division which later merged with Gemplus to form Gemalto. Java Card products are based on the Java Card specifications developed by Sun Microsystems (which is now Oracle Corporation). Many Java Card products rely on the GlobalPlatform specifications for the secure management of applications on the card (download, installation, personalization, deletion). GlobalPlatform was created to manage OpenPlatform, which was an initiative of Visa Inc.

The main design goals of Java Card are portability and security. Although the Java classes are initially compiled using the Java SE compiler there are many restrictions on Java Card. For instance, Java Card Classic does not support String and integer support is optional; object instances are created in persistent memory instead of RAM by default. Java Card has some features that are not present in J2SE as well: application isolation through the so-called applet firewall and a transaction mechanism.

991 questions
-1
votes
1 answer

Javacard - Arraycompare issues

I want to compare 2 byte arrays using the Javacard Framework. The first array is predefined: static byte[] PasswortA = { 'a', 'b', 'c', 'd' }; The second array will be input via command line: case (byte) 0x03: ///send D003000004|abcd GetPassword…
-1
votes
1 answer

what is the best solution for javacard data storage?

As I saw in GitHub, MuscleApplet is outdated. I would like to know what is the best way to store data persistently on java smart card? Data are consist of Name, Family, Picture, and Description. All fields have dynamic length, so I don't want to…
Hana Bzh
  • 2,212
  • 3
  • 18
  • 38
-1
votes
1 answer

SIMcard applets development - hardware recommendations

I want to develop JavaCard 2.2.x applet, load to developer SIM card. I also need to connect to the SIM card through PCSC-Lite on Ubuntu (because of SEEK-FOR-ANDROID). However, I don't know what hardware should I buy...I've already bought few…
AGO
  • 133
  • 7
-2
votes
1 answer

Need help Debugging Javacard

just looking to see if i could get some help on this, i'm only about two weeks into working with javacard and lets say its fun! haha, but seriously. heres the bit of code that im calling in my function, its real simple, i have a bit of randomly…
j doe
  • 1
  • 2
-2
votes
1 answer

Cost effective way to start java card development

What’s the most cost effective way to start Java card development? I’ve spoken to several individuals and they have recommended purchasing the following SDK: https://www.taisys.com/p-detail?id=df8bIvFE5tKyOuGwfx4-MUHPKc8kbAnlcMBg-sR-6Q. However it…
methuselah
  • 12,766
  • 47
  • 165
  • 315
-2
votes
2 answers

I'm using Eclipse with JavaCard. How to make a reset and send the APDU to the reader

I'm using Eclipse Oxygen with JavaCard classic kit 3.0 installed. How to make a cold reset (get ATR) from the script and send the GetDate APDU to the card inserted into the reader. I need several examples of Java code (it's not Applet) and how the…
Nick
  • 3
  • 2
-2
votes
1 answer

Are there any tools can be used to manage smart card resources?

Are there any tools can be used to manage smart card resources, can use it to debug command ISO14443 agreement.
lisha
  • 32
  • 4
-2
votes
1 answer

How to reinitialize SIM card from application?

I have a problem writing application for android phone. I need my app to reinitialize all data from SIM card onto a phone - so it would be like a restart without a restart of the phone itself. I know that going to plane mode and back does not help -…
szefuf
  • 500
  • 3
  • 14
-2
votes
2 answers

How to div short - Java

I need to divide by 2 the short word, for example 0x40 (in dec: 64 ) to 0x20 (in dec: 32). I cannot use int (java card) - only short. Someone have any idea?
Thulion
  • 97
  • 1
  • 11
-2
votes
1 answer

Error 0x6f00 in Sign Method in javacard 2.2.1

I wrote this code and I debug it with jcIDE. I have a error 0x6f00 in line signature.sign('''). I sent apdu "00 80 00 00 04 01 02 03 04" for signing operation . My key is RSA -1024 RSAPrivateKey…
Ftm
  • 99
  • 1
  • 11
-2
votes
1 answer

How to write more than 4K byte binary data in card without Extended apdu

my card is gemalto v2.2.1,T=0 and It doesn't support apdu chain. I saw samples that they are using ExtendedLength but my card not supported. I wrote a code but I have problem with it. Can every body tell me Where do I make mistake or please give me…
Ftm
  • 99
  • 1
  • 11
-2
votes
1 answer

Using SAM modules for storing secure keys

As i understand SAM modules are kind of SMART Cards which connect to the MCU via ISO 7816 protocol. Is there any other application for them except storing secure keys? Can I used usual mobile sim-cards instead of SAM module to storing keys? As i…
-2
votes
1 answer

In FluffyPGP Applet, is the putKey() function codes exist a BUG?

I downloaded FluffyPGP Applet from http://javacardos.com/javacardforum/viewtopic.php?f=35&t=26&sid, and I tried the incoming APDU commands of the putKey() function, but it failed. If my incoming APDU satisfies this 'If', but others will be not…
TeddyBear
  • 112
  • 4
-2
votes
1 answer

What does this default applets do?

This is output of gp tool, when I tell it to list installed applets : gp >> gp -l AID: A000000151000000 (|....Q...|) ISD OP_READY: Security Domain, Card lock, Card terminate, Default selected, CVM (PIN) management AID: A0000001515350…
TheGoodUser
  • 1,188
  • 4
  • 26
  • 52
-2
votes
1 answer

Java code to talk to jcwde/cjre

I want a java code which can talk to jcwde similar to what APDUTool does. Jcwde/cjre works on TCP port 9025. Is there a way i can open a TCP connection with cjre and send APDU directly, instead of giving script file to APDUTool. Also after opening…