Essentials for Java Card implementation

i am new at java CArd.
I would like to find out what is a good starting point for me if i want to begin using this technology. I know that I need the SDK. what else would I need? what book(s) would you reccommend? where can I find some examples and tutorials?

Have you google ? searched this forum ? Did you bother clicking the vertical menu on the left where it says "Java Card" ?
Do some homework before asking a question like that and you'll find that it's been answered over and over.

Similar Messages

  • NFC for Java Card

    Hi guys
    I'm a new one with NFC, especially for the field that I'm investigating right now, Java Cards. Hence, would you mind to help me with the initialization? I mean what am I supposed to begin with (name of documents, materials,...)?
    Any of your help would be appreciated.
    Thanks in advance
    Jason

    Jason,
    I'm not sure what you mean by NFC integrated Java Card. Could you give me the name of the document you downloaded from Global Platform?
    Java Card knows about the transport type between itself and the reader: contact (T=0, T=1 : ISO/IEC 7816) or contactless (T=CL : ISO/IEC 14443). But that is all; a Java Card applet should not know or care about the lower transport layers.
    As for the relationship between GSM, UICC and NFC, have a look at the document "NFC Stepping Stones" from SIMAlliance: http://www.simalliance.org/en?t=/documentManager/sfdoc.file.supply&fileID=1308660607647
    EDIT:
    For more on STK applets (GSM), read the Gemalto introduction to the SIM Toolkit: http://developer.gemalto.com/home/technology/sim-toolkit.html
    The best standard for you to start with is probably 3GPP 43.019.
    As reference, here is a partial list of (I hope) relevant standards. If you find more, please post them here!
    ISO/IEC:
    ISO/IEC 7816-1
    ISO/IEC 7816-2
    ISO/IEC 7816-3 (T=0)
    ISO/IEC 7816-4 (Limited to command set required for GSM compliance.)
    Java Card:
    Runtime Environment Specification Java Card Platform, Version 2.2.1 V2.2.1
    Virtual Machine Specification Java Card Platform, Version 2.2.1 V2.2.1
    Application Programming Interface Java Card Platform, Version 2.2.1 V2.2.1
    Global Platform:
    Global Platform Card Specification 2.1.1 V2.1.1
    GSM:
    GSM 11.11 version 8.3.0
    GSM 11.12 version 4.3.1
    GSM 11.14 version 8.3.0
    GSM 11.17 version 7.0.2
    GSM 11.18 version 7.0.1
    GSM Comp128-1, 2, 3
    SIM:
    TS 23.040 V.6 Technical realization of the Short Message Service (SMS)
    TS 43.019 V.6 Subscriber Identity Module Application Programming Interface (SIM API) for Java Card; Stage 2
    TS 51.011 V.5 Specification of the Subscriber Identity Module - Mobile Equipment (SIM-ME) interface
    TS 51.014 V.4 Specification of the SIM Application Toolkit for the Subscriber Identity Module - Mobile Equipment (SIM - ME) interface
    USIM:
    TS 31.102 V.6 Characteristics of the Universal Subscriber Identity Module (USIM) application
    TS 31.111 V.6 Universal Subscriber Identity Module (USIM) Application Toolkit (USAT)
    TS 31.115 V.6 Secured packet structure for (Universal) Subscriber Identity Module (U)SIM Toolkit applications
    TS 31.116 V.6 Remote APDU Structure for (Universal) Subscriber Identity Module (U)SIM Toolkit applications
    TS 31.124 V.6 Mobile Equipment (ME) conformance test specification; Universal Subscriber Identity Module Application Toolkit (USAT) conformance test specification
    TS 31.900 V.6 SIM/USIM internal and external interworking aspects
    TR 31.919 V.6 2G/3G Java Card™ Application Programming Interface (API) based applet interworking
    ETSI TS 135.208 Technical Specification Universal Mobile Telecommunications System (UMTS); 3G Security; Specification of the MILENAGE algorithm set
    UICC:
    TS 31.101 V.6 UICC-terminal interface; Physical and logical characteristics
    TS 31.121 V.6 UICC-terminal interface; Universal Subscriber Identity Module (USIM) application test specification
    ETSI TS 102.220 ETSI numbering system for telecommunication application providers
    ETSI TS 102.221 Smart cards; UICC-Terminal interface; Physical and logical characteristics
    ETSI TS 102.222 IC Cards Admin Commands for Telecom
    ETSI TS 102.223 Card Application Toolkit
    ETSI TS 102 241 "Technical Specification Smart Cards; UICC Application Programming Interface (UICC API) for Java Card"
    OTA:
    ETSI TS 102.224 Security mechanisms for UICC based Applications -Functional requirements
    ETSI TS 102.225 Secured packet structure for UICC based applications
    ETSI TS 102.226 Remote APDU structure for UICC based applications
    TS 23.040 V.6 Technical realization of the Short Message Service (SMS) Point-to-Point (PP)
    TS 23.041 V.6 Technical realization of Cell Broadcast Service (CBS)
    (U)SAT:
    TS 23.048 V.5 Security Mechanisms for the (U)SIM application toolkit
    TS 31.111 V.6 Specification of the USIM Application Toolkit
    TS 31.112 V.6 Universal Subscriber Identity Module Application Toolkit (USAT) interpreter architecture description
    TS 31.113 V.6 Universal Subscriber Identity Module Application Toolkit (USAT) interpreter byte codes
    TS 31.114 V.6 Universal Subscriber Identity Module Application Toolkit (USAT) interpreter protocol and administration
    TS 51.014 V.4 Specification of the SIM Application Toolkit for the Subscriber Identity Module - Mobile Equipment (SIM-ME) interface
    ETSI TS 102 223 Card Application Toolkit (CAT)
    SIM Alliance:
    S@T 01.00 Specification 2009 SIMalliance S@T Byte Code
    S@T 01.10 Specification 2009 SIMalliance S@T Markup Language
    S@T 01.20 Specification 2009 SIMalliance S@T Session Protocol
    S@T 01.21 Specification 2009 SIMalliance S@T Administrative Commands
    S@T 01.22 Specification 2009 SIMalliance S@T Operational Commands
    S@T 01.23 Specification 2009 SIMalliance S@T Push Commands
    S@T 01.30 Specification 2007 SIMalliance S@T Validation Test Plan System Functional Tests
    S@T 01.50 Specification 2009 SIMalliance S@T Browser Behaviour Guidelines
    S@T 01.60 Gateway Implement 2009 SIMalliance S@T Gateway Implement
    Security & Algorithm
    TS 33.102 V.6 3G security; Security architecture
    TS 33.105 V.6 Cryptographic algorithm requirements
    TS 35.205 V.6 3G Security; Specification of the MILENAGE algorithm set: An example algorithm set for the 3GPP authentication and key generation functions f1, f1*, f2, f3, f4, f5 and f5*; Document 1: General
    TS 35.206 V.6 3G Security; Specification of the MILENAGE algorithm set: An example algorithm set for the 3GPP authentication and key generation functions f1, f1*, f2, f3, f4, f5 and f5*; Document 2: Algorithm specification
    TS 55.205 V.6 Specification of the GSM-MILENAGE algorithms: An example algorithm set for the GSM Authentication and Key Generation Functions A3 and A8
    Test specification
    TS 31.048 V.5 Security mechanisms for the (U)SIM application toolkit; Test specification
    TS 31.120 V.6 UICC-terminal interface; Physical, electrical and logical test specification
    TS 31.121 V.6 UICC-terminal interface; Universal Subscriber Identity Module (USIM) application test specification
    TS 31.122 V.6 Universal Subscriber Identity Module (USIM) conformance test specification
    TS 31.130 V.6 (U)SIM Application Programming Interface (API); (U)SIM API for Java Card
    TS 31.213 V.6 Test specification for subscriber (U)SIM; Application Programming Interface (API) for Java Card™
    TS 35.203 V.6 Specification of the 3GPP confidentiality and integrity algorithms; Document 3: Implementors' test data
    TS 35.207 V.6 3G Security; Specification of the MILENAGE algorithm set: An example algorithm set for the 3GPP authentication and key generation functions f1, f1*, f2, f3, f4, f5 and f5*; Document 3: Implementors’ test data
    TS 35.208 V.6 3G Security; Specification of the MILENAGE algorithm set: An example algorithm set for the 3GPP authentication and key generation functions f1, f1*, f2, f3, f4, f5 and f5*; Document 4: Design conformance test data
    TR 35.909 V.6 3G Security; Specification of the MILENAGE algorithm set: an example algorithm set for the 3GPP authentication and key generation functions f1, f1*, f2, f3, f4, f5 and f5*; Document 5: Summary and results of design and evaluation
    TS 51.013 V.5 Test specification for Subscriber Identity Module (SIM) Application Programming Interface (API) for Java Card
    TS 51.017 V.4 Subscriber Identity Module (SIM) test specification
    Adriaan
    Edited by: Adriaan on Feb 14, 2012 1:34 AM

  • Java card implementation

    I am a beginner of java card.
    I want to implement JCRE on a smart card.But I don't know what I must do,what components can I get from SUN?

    I am not just wanting to write a applet,I am planning to implement a JCRE on a card.
    I(not only one) have used Infineon's smart card chip to develop COS(Chip Operating System).Now,I am planning to implement a JCRE on a Infineon card,but I don not know whether I can do like this.In my opinion implementation of Java card is a software system for programmers.if the smart card chip have enough resource,programmers can implement JCRE,manufacturer of chip(for example Infineon company) will mask your code into ROM just like code of COS.Could you tell me how to apply for a license from SUN or oher things about java card implementation?
    Thanks a bunch,durangova.

  • Step by step installation for java card kit 2.2.2

    can anyone help me with a complete step by step installation information for java card kit 2.2.2, i already tried to follow the instruction given in the software i download n still stuck in setting the java path. any recommendation
    thanks for the help

    The javacard API is for developing applets on card. Java 6 is for developing clients off-card.
    yes u can use any java IDEs like netbeans or jcreator. But you will have to select the libraries within the downloaded java card kit folder for ur IDE in order to compile successfully.
    try reading up the documentation and run the samples in the java card kit. thats a good place to start.

  • Why do we need IDE or tools for java card programming?

    Hi,
    I am a newbie to java card, using java card kit tools themself, we can test and burn the code into card right?
    then why do we need IDE for java card, please correct me , if i am wrong,
    Thanks in advance,
    Sri.

    Dear Sri,
    We have compiler, linker etc for every language starting of from C or C++ or Java. JDK has all the tools necessary to develop and run a Java program. Similarly Java Card Development Kit has all the tools for developing and deploying a Java Card applet. But what an IDE does is too integrate all these tools and make it easier for the JavaCard programmer to develop his applets. Just like Eclipse is used for Java applet development.And not everytime the code is burned to the card. Its only during masking code is burned to the card, i.e if u can call it burning. Masking makes an applet permanent on the card.

  • Good Book For Java Card

    Hi Friends..
    I want to know what is good book for Java Card for Beginner until Advance..
    and i want to know what book that you read for developing Java Card application
    Give me any suggestion, please.
    Thanks in advance..

    Hi,
    OnurTaco wrote:
    Zhiqun Chen 's [Java Card Technology for Smart Cards|http://www.amazon.com/Java-Card-Technology-Smart-Cards/dp/0201703297/ref=sr_1_1?ie=UTF8&s=books&qid=1270063749&sr=8-1] has been very useful and informative for me.
    Just remember that this book is for JC 2.1 not 2.2.1. I have still found this book good for explaining the fundamentals of Java Card development. It just doesn't cover all of the JC 2.2.x API's.
    Cheers,
    Shane

  • Is there any Eclipse Pulsar and JCDE Plugin for Java Card 2.2.1?

    Hi Friends..
    I want to know is there any Eclipse Pulsar and JCDE Plugin that still supports for Java Card 2.2.1?
    Actually, currently i use Eclipse Pulsar and JCDE Plugin but it support only for Java Card 2.2.2..
    I tried to set the Java Card Preference into JCDK 2.2.1, but it couldn't be set because converter.jar isn't compatible..
    Please help me regarding this..
    Thanks in advance..

    There is, but it's very limited.
    1. Put the Library on a disk formatted Mac OS Extended (Journaled)
    2. Point both machines at it.
    3. That's it.
    But remember:
    A strong warning: If you're trying to edit the Library (that is, make albums, move photos around, keyword, make books or slideshows etc.) or edit individual photos in it via Wireless be very careful. Dropouts are a common fact of wireless networking, and should one occur while the app is writing to the database then your Library will be damaged. Simply, I would not do this with my Libraries. 
    Also
    Only one user can open a library at a time.
    Regards
    TD

  • What Java compiler for Java Card development ?

    What Java compiler and options should be used for Java Card development with the goal of generating correct, and (secondarily) small or/and fast code after conversion to Java Card bytecode using converter ?
    In particular
    - Is use of JDK 7 approved by Oracle for Java Card development? That would solve security problems associated with (the web components of the JRE of) some earlier JDK, including the latest JDK6. The JCDK 3.0.4 release notes states "+the commercial version of Java Development Kit (JDK software) version 6 Update 10 (JDK 6 Update 10) or later is required+, but that does not answer that question.
    - Anyone had _bad_ experience (like incorrect or disastrous code) with the Java compiler bundled with Eclipse ? I have seen at least one case where org.eclipse.jdt.core_3.7.3.v20120119-1537.jar produced slightly more compact code than javac.
    - Anyone had _bad_ experience with javac in jdk1.3 ? In an applet involving a "finally" clause, I've seen it generating more compact code than later javac (which in my test triplicated the code for the finally clause).

    What Java compiler and options should be used for Java Card development with the goal of generating correct, and (secondarily) small or/and fast code after conversion to Java Card bytecode using converter ?-target -source may be required to generate compatible byte code. Depending on the CAP file converter being used debug information may also help. Remember that Java Card is a subset of the Java language (also there are short opcodes that Java doesn't have etc) so a lot of the work for optimisation is done by the converter or the JCRE. You can look at the JCA code generated to determine what works best for your applets. There are also some ways of stripping out dead code etc from JCA files (return statements after a throw etc) to reduce your code size. Most of the speed optimisations come from your code (avoiding context switches and unnecessary security/access checks).
    The compactness of your Java Card binary may not be directly related to the size of your compiled Java code. It can depend on the converter you use and any optimisaitons the JCRE might try to do when the code is loaded.
    - Is use of JDK 7 approved by Oracle for Java Card development? That would solve security problems associated with (the web components of the JRE of) some earlier JDK, including the latest JDK6. Java Card does not use any of the libraries from the JDK/JRE. All of the libraries are provided by the JCRE on the smartcard.
    The JCDK 3.0.4 release notes states "+the commercial version of Java Development Kit (JDK software) version 6 Update 10 (JDK 6 Update 10) or later is required+, but that does not answer that question.Anything above JDK6u10 is supported. If you use Java 7 you may need to add a -source and -target flag when compiling.
    - Anyone had _bad_ experience (like incorrect or disastrous code) with the Java compiler bundled with Eclipse ? I have seen at least one case where org.eclipse.jdt.core_3.7.3.v20120119-1537.jar produced slightly more compact code than javac.We generally use the Eclipse compiler as we find that we get more deterministic builds. When CAP files are sent for security review it is helpful to have the reviewer able to generate a CAP file that matches the one you sent to confirm the binary is what you say it is.
    - Anyone had _bad_ experience with javac in jdk1.3 ? In an applet involving a "finally" clause, I've seen it generating more compact code than later javac (which in my test triplicated the code for the finally clause).We do not use anything less than Java 6 for compilation.
    - Shane

  • Please tell me Card that support for Java Card 2.2.2

    Hi Friends..
    Please tell me Card that support for Java Card 2.2.2..
    Thanks in advance..

    Hi Sebastien_Lorquet..
    Firstly, i'm so sorry if i'm mistaken and wrong.. i'm not mean to make you angry.. :(
    sorry about this..
    Yes, i've searched on google... and i think i'll buy it at NXP..
    Thanks in advance Sir.. :)

  • Java code coverage tool for Java Card?

    Hello,
    I am looking for "Java code coverage tool" that can be used for testing Java Card Applets.
    Has anyone tried EMMA<http://emma.sourceforge.net/> with JCWDE, or other tools?
    Any information appreciated.
    ichara

    JCOP Tools 3.0 for Eclipse 2.1 support code coverage with the JCOP simulations for Java Card 2.1. The newest JCOP41 simulation for Java Card 2.2.1 does not yet have this feature.
    Code coverage information is shown in the Profiling view, when it is enabled in the Launch Configuration. The editor also shows colored bars next to source lines to quickly identify dead code.

  • Need help for equipments for java card with RFID technology .

    I 'm doin a project using java card with RFID technology.Can ne one give me exact equipments for java card reader & writer for RFID technology?
    I need to buy these things from UK.Can ne one provide me some product list & as well as the exact pricelist?
    plz reply me asap.

    I 'm doin a project using java card with RFID
    technology.Can ne one give me exact equipments for
    r java card reader & writer for RFID technology?I guess with "RFID" you are referring to "contact-less javacards"?
    If yes, one keyword for you is "Mifare", a industry standard for smartcards with dual interface (contact-based and contactless).
    Jan

  • Vendor list for java card 3.0

    Please tell me the vendor list for java card 3.0

    Cardlogix. But the card is not available yet though.
    http://www.cardlogix.com/docs/guides/CardLogix_7100002_PSG_SmartCard.pdf

  • Simulator for java card

    hi
    i am new to java card technology...i am writing the applets in netbeans using java card plugin....the problem is i m not able to simulate the applet..it is showing build successfully, but wen i run the app it is showing nothing.....so can anyone suggest me a suitable simulator for the same....

    Hi,
    I assume you are after details on how to use the simulators? There are examples and documentation with the JC specifications and developer kit. Both of these are available from the Sun website [http://java.sun.com/javacard/].
    If you are after details on how to develop your own, the JC specifications outline the requirements for the JCRE and JCVM that you can use to implement a simulator.
    Cheers,
    Shane

  • Perspective for Java technologies : implementing interface on late.

    In Java, to implements the adapter pattern's; we have to create a new class that have a link with the adaptee class and implements the adapter interface.
    class MyAdapter implements IAdapter
          public MyAdapter( Adaptee a );
    }or, if we need protected methods :
    class MyAdapter extends implements IAdapter
         public MyAdapter( Adaptee a );
    }then, to call the method void foo( IAdapter i ); ;
    we have to do xxx.foo( new MyAdapter( adaptee ) );it could be simpler if java allowed to implement interfaces after defining the java class.
    public class Adaptee
    }and then, in another file, something like,
    implementation of  IAdapter for class Adaptee
    }would be equivalent to
    public class Adaptee implements IAdapter
    }The advantage of the first method is that you can adapt very easy external classes from external jar file.
    thank's for coments.

    An interface is a contract which tells the compiler
    that a class that implements it implements a set of
    method signature which perform certain actions.That's right, but my idea is not to change the interface, but to change the external class, making it implements the existing interface.
    If you overlay an interface on someone else's class,
    the signature match (if there is one) could happen by
    coincidence. There's no guarantee that a method with
    a signature that matches one in your interface
    actually has the same function.I didn't say that an external class should be viewed as an interface without a specific implementation of this interface for the external class. But, instead of making a new class extending the first and implementing the interface, just define a specific implementation of the interface for this class, as if it was make at class declaration.

  • Book For Java Card

    Hello,
    I need to learn Java Card technology and need a book to buy, can you suggest me any good book about it? What i saw at amazon they have really old books. Which of them would you suggest me?

    I was lucky enough to meet Zhiqun Chen and speak to her. Her book was the starting point I had for learning Java Card. It is still quite relevant today as well even though it targets JC 2.1.1. You can use this to get a solid understanding of Java Card and then look at the JCDK documentation for newer versions to see what API's there are etc.
    Shane

Maybe you are looking for

  • Open Orders

    Hello All, I am Preparing LSMW for Open Purchase Orders. Open Contracts for Uploading from Legacy to SAP for GO LIVE. I am having bellow doubts. Through LSMW i am not able to maintain multiple line items (one Purchase Order Number).Please advises me

  • I'm looking for a text/music notation app

    I am a drummer in a cover band who would like to use my iPad for my shorthand version of drum charts.  What I currently have is a paper notebook, in which I have dedicated a page for each set.  On each page, I have the song title, then the main drum

  • How can I change selection texts of standard report (S_P99_41000192)?

    Hi: I want to change selection texts of  tcode s_P99_41000192. ( Our SAP verison is SAP 4.7 version, non unicode) Because we can see only Deutch. It looks standard sap query so we can not add it into package. How can we change it? Please help me.

  • Problem on the company name field at ACH file

    Dear Experts, We have a problem at our ACH file. There is no company name information (third column) at batch header record (Record type code = 5). Do you know where this company information comes from? FYI, we are using SAPFPAYM program. Thanks. BR,

  • Command + Click on link to open in new tab suddenly not working

    I am an enthusiastic user of command + click to open a link in a new tab, but it suddenly stopped working earlier today and I cannot figure out how to re-enable this feature. I'm on the beta release cycle at version 7.0, with several addons installed