Java Card e-payment application help

dear all,
I want to develop a java card e-payment application , and I am a beginner user to java card apis . if someone can support me on finding good matertials and tools to aid me in developing this application I wil be pleased
thanks for every body
Message was edited by:
M.ElSobky

dear all,
I want to develop a java card e-payment application , and I am a beginner user to java card apis . if someone can support me on finding good matertials and tools to aid me in developing this application I wil be pleased
thanks for every body
Message was edited by:
M.ElSobky

Similar Messages

  • Java Card for healthcare applications

    I am quite new to Java Card and I am currently developing a healthcare applications using Java Card. What is best:
    Storing the patients medical history on the card itself
    OR
    storing it on a database and use the Java Card as a access token?
    Thanks.

    Besides the fact that the storage capacity of todays JavaCards is very limited. This question is IMHO more a plitical question (and a question of privacy) than a technical question.
    Jan

  • Sim tool kit  with java card help

    Hi all,
    i want to develop an applet which sends a sms to the network using sim tool kit and java card. can anyone can help me on this?
    if u can give me any document or links or sampale codes i realy appriciate it.
    Nuwan Nanayakkara

    * Send message by SMS
    * @param message byte[] : message to send
    * @param number byte : number of the sms
    public void envoiSMS(byte[] message, byte number) {
    // sending of message with all needed parameters
    ProactiveHandler hdlerPro = ProactiveHandler.getTheHandler();
    short tpduSubmitLength = (short) (SERVER_ADDRESS.length + 6 +
    message.length);
    byte[] tpduSubmit = new byte[tpduSubmitLength];
    // TP-SRR + TP-UHDI + TP-RP + TP-VPF + TP-RD + TP-MTI
    //reply path(b) | user header indicator (b) | report request (b) | periode validity(2b) | rejet m�me numero MR(b) | message type (2b)
    byte FIRST_BYTE_local = (byte) 0x01; //juste type de message SUBMIT
    //tpduSubmit[0] = FIRST_BYTE; // TP-MTI + TP-RD + TP-VPF + TP-RP + TP-UDHI + TP-SRR
    tpduSubmit[0] = FIRST_BYTE_local;
    //tpduSubmit[1] = number;
    tpduSubmit[1] = 5;
    for (short i = 0; i < SERVER_ADDRESS.length; i++) {
    tpduSubmit[ (short) (i + 2)] = SERVER_ADDRESS;
    tpduSubmit[ (short) (SERVER_ADDRESS.length + 2)] = TP_PID;
    tpduSubmit[ (short) (SERVER_ADDRESS.length + 3)] = TP_DCS;
    tpduSubmit[ (short) (SERVER_ADDRESS.length + 4)] = (byte) message.length; //UDL
    for (short i = 0; i < message.length; i++) {
    tpduSubmit[ (short) (SERVER_ADDRESS.length + 5 + i)] = message[i]; //UD
    //envoi d'un SMS
    hdlerPro.init(PRO_CMD_SEND_SHORT_MESSAGE, (byte) 0, DEV_ID_NETWORK);
    hdlerPro.appendTLV(TAG_SMS_TPDU, tpduSubmit, (short) 0,
    (short) tpduSubmitLength);
    hdlerPro.send();
    I can't do all comments in english; another comments is in french.

  • How does the Java Card simulator work? (Using NetBeans)

    Hi,
    I'm using NetBeans and am trying to simulate:
    Someone powering up the card, saving a value, and powering down... And then they power it up again, get the value, and power down.
    When I edit my APDU script to do the second part, the value I entered the first time is never stored, which probably means that when I 'run' my code, my application is loaded and everything is initialized again.
    How do I edit NetBeans to not install the application every time I hit 'run'? And not to initialize the values, so that when i power it up again, I can get a value stored in a previous running of a script?
    When I use powerup, powerdown and then powerup again, NetBeans doesn't powerup the simulator the second time. So understanding the Java Card Simulator would also help... where it is, how it runs, what options it runs with, etc.

    Hi Shane,
    I have not read anywhere else that the JC3 cards are not available, thank you so much for that tip! I am not doing it for research, but I am working on this alone and will have to deploy a card later on. I will be getting all the right versions now.
    I'll ask the question then, using just the JCDK:
    If I want to save a value on the card, and then need it at a later time, how do I go about it. Do I do the following?
    (1) Install the application on the card. (I know how to do this)
    (2) Run the simulator using -o "eeprom data filename"
    (3) Save the value using the APDU calls and Java code on the card + close connection.
    Code:
    public class MyApp extends Applet {
        private static byte[] data = {0x00, 0x00, 0x00};
        // Install method, method to register, process method that can call saveData or recallData, etc
        public static void saveData()
           // code to change data
           data = {0x01, 0x01, 0x01};
        public static byte[] recallData()
           // code to return data
           return data;
    }(4) Run the simulator using -i "eeprom data filename". get the value using recallData().
    Will selecting the app not make data initialize to {0x00, 0x00, 0x00} again?
    If I know this is the correct way of going about it, then I can work towards it getting done.
    From other examples I can see that this is probably the way it should work, but my data array always returns as {0x00, 0x00, 0x00}.

  • X.509 Certificates on Java Card

    Hi,
    I'm a newbie on this and am looking for any help I can get.
    I am wanting to store or generate an X.509 certificate securely on a Java Card for an application which either requsests the certificate or gets details from the certificate to the application.
    I am currently using keytool to generate certs to get an idea of things. I have no hardware (card/reader) and am currently reliant on SUN's jcwde .
    I have looked for proprietary javacard api's on X.509 and found nothing on this. So I guess I will have to write my own code to do the job using the standards involved.
    What I guess I'm looking for is anyone out there to tell me wether it is feasable to do what I wish and any pointers on how to go about it.
    Thanks in advance ...

    You can't generate a cert on the card because of the technology of certs. Of course, you can store them on the card. It's up to your design how to store it. For example, you might want to store it in PKCS#15 format, or just raw data format, or actually importing the private key using the JC API. Keep in mind you can generate keys on card using the JC API.
    What you are describing is very common with PKI solutions that need a secure token. The smart card is that token.

  • Java Card Jobs in India

    Hi All Members,
    Since we people are working in Java card technology, But I am more focused about the career in Java card Technology. In INDIA specially we do not have scope to work on Java Card technology, I have been searching for good Job from 2 years but I could not able to find out. Could anybody from INDIA give me references for getting job into Java Card , It would be helpful for me.
    Kindly reply.

    Hi lexdabear,
    Thank you for your reply. Natives OS mostly required development in C, But what about Java Card technology where we can get the opportunities to work on Java card I mean some other countries. Do you have any idea then please share.....
    Regards,
    Shueb

  • J2me and java card, need help to communicate

    we are trying to put together a reader to read smartcards using j2me and we figure that it would be easiest if we could develop it to work with java cards rather than standard smart cards, the problem is we get garbage when we communicate to it, the chip sends us crap, any suggestions what might be wrong, any calls we might be missing, has anyone worked with j2me and java cards or smart cards, any help would be appreciated.
    einar

    .... reader app and the ME behind it .... smells like mobile ....
    First of all - if you want to have one mobile application running on this just make sure that whatever is written in ME can use drivers from the reader chip ....
    Workin on the PC is something completely different. There was one good example how to develop one host application in Java provided with the JCOP tools long ago ... I don't know if this is now in the new Eclipse tools.
    But - there was a small API provided that can give you good hints what to do - and - once you have it on the reader side - you can easily integrate ME methods with this ...

  • Java Card Please Help!

    Please I am doing my final year project on secure mobile application using Java Card Technology.
    I need to write and an application that can send SMS on a SIM card to another SIM card with the same application. The application will have a server side which manage the storage of messages and at the same time communicate information to the client on the SIM remotely. I am suppose to use wi-fi (TCP/IP) for transmission.
    Can anybody please give me ideas and possible working codes and simulators.
    I mean step by step procedure of how to start.
    THANK YOU.

    Hi,
    I found the following resources helpful when starting out in JavaCard.
    JavaCard documentation:
    Java Card Technology for Smart Cards: Architecture and Programmer's Guide (Book)
    http://java.sun.com/docs/books/javacard/index.html
    JavaCard specifications:
    http://java.sun.com/products/javacard/specs.html
    Global Platform specifications:
    http://www.globalplatform.org/specificationview.asp?id=card
    Communication between SmartCards and terminals is based on ISO 7816 part 3 and 4 so if you�re completely new to the SmartCard environment it may be helpful getting an overview regarding these specifications. Unfortunately these specifications are not free, they�re available from.
    http://www.iso.org/iso/en/ISOOnline.frontpage
    Software:
    The basis for all development is the JavaCard and Java Development kits.
    Java Development Kit
    http://java.sun.com/j2se/1.4.2/download.html
    JavaCard Development Kit
    http://java.sun.com/products/javacard/dev_kit.html
    Full installation instructions can be found in JCDevKit_User_Guide.pdf which is contained in the JavaCard Development Kit distribution.
    Several companies provide IDE�s that will aid you in developing and deploying applets to JavaCard.
    For example:
    Aspects Developer
    http://www.aspectssoftware.com/devtools/index.html
    There are others out there as well. You may need to also buy physical sample cards; however, the IDE�s usually have simulators built in.
    Hardware:
    To interact with physical cards you�ll require a PCSC compatible card reader.
    Omnikey
    http://www.omnikey.com/
    GemPlus
    http://support.gemplus.com/gemdownload/readers/index.aspx
    Hope this helps.
    Cheers,
    Alasdair

  • A question about design of Java Application on java card.

    Hi every one,
    I have a question about design of Java applet on java card,
    There is an application on my card that it is not java card, it include a DF and some EF under DF, I would like to know if I want to have this application on java card ,how can I design DF and EF on java card ,I mean is there any relation between DF,EF with applet and file? for example can I say DF is same as applet and EF is same as file?
    I'll appreciate for any help .
    yours sincerely,
    orchid

    hi
    you can write a java class for DF.
    an instance of DF class have some EF objects.
    for example,
    samples/com/sun/javacard/samples/JavaPurse/CyclicFile.java
    implements ISO 7816 CyclicFile ( EF )
    see also:
    http://forum.java.sun.com/thread.jspa?threadID=673745&messageID=3936272
    best regards,
    siavash

  • Seeking Help for Guidance in developing a product using JAVA CARD

    Hi All,
    I am using windows environment with netbeans 6.8 as developer tool and MySql Server connectivity for back end process.My requirement is to develop applets and installing them to my Smart card and reader.my question is
    1. how i am supposed to create applets to get the student id of particular student whose id is already registered in the database?
    2. how to install them into the smart card?
    3.what are the commands i am supposed to follow if other than APDU commands?
    4.i found there is APDU commands but what do that each CLA,INS,p1,p2,Lc,le..commands used for?how can i use them in my creation of applets.i found the command varies for certain requirements.
    5.if possible please help me with a small example so that i will start developing it.
    can anyone help me in developing this application.i will be so helpful if anyone helps me in guiding me to develop the java card product.
    Edited by: Sijukj on Mar 4, 2010 7:04 AM

    Hi,
    Welcome to the wonderful world of embedded Java development!
    Sijukj wrote:
    1. how i am supposed to create applets to get the student id of particular student whose id is already registered in the database?The first step is to download the Java Card Development Kit (JCDK) from the Sun website (along with the related documentation/specifications). If you plan on using your code on a real card, I would recommend JC version 2.2.1 or 2.2.2. If it is sufficient to run your applet on a simulator (as a proof of concept or for assignments) with no intention on running on real hardware you could go for JC 3.0.2 and use the supplied simulator. This version of JC does not have commercially available cards as of yet.
    Once you have the applet coded and installed on your card, you would personalise the card for the card holder. This means loading card holder specific data into your application. This may also involve registering the smart card ID with the student in your database.
    2. how to install them into the smart card?The procedure for loading and installing applets is outlined in the Java Card documentation (available with the JC development kits from Sun) and the GlobalPlatform card specifications (available from [http://www.globalplatform.org]). You can look into some open source tools for doing this (GPShell and the Java Card Development Kit).
    3.what are the commands i am supposed to follow if other than APDU commands?This depends on what you are trying to achieve with your applet. If you want interoperability you could implement a standard like ISO7816 or IOS24727. This is a lot of work so you may just want to implement the proprietary you require for each operation you need (e.g. set student ID, get student ID etc).
    4.i found there is APDU commands but what do that each CLA,INS,p1,p2,Lc,le..commands used for?how can i use them in my creation of applets.i found the command varies for certain requirements.These are defined in ISO7816 part 4.
    The CLA byte gives information on the command you are sending such as secure messaging, command chaining, ISO or proprietary command
    The INS is the instruction or command you are trying to perform
    P1 and P2 are parameters to the command. These may not be required for each command but are able to be used to convey further information to the applet.
    Lc is the length of the data field you are sending (e.g. for a PUT DATA command this would be the amount of data you are sending)
    Le is the length of the data you expect to receive back from the card. If this is absent you do not expect the card to return any data, 0x00 means send all the data you have left (up to the limit of the response APDU)
    5.if possible please help me with a small example so that i will start developing it.You can find example code in the Java Card Development Kit. There are a wide range of examples there that can help you get started.
    Cheers,
    Shane

  • Is it possible to simulate whole java card application on simulator?

    Hello all,
    currently i dont have any real java card yet,not either reader . I already made a simple applet and check its working by CJCRE (net beans simulator), it is working fine,
    now i want to move to host application which will communicate with java card via card reader. Is this possible to simulate complete application ( host application + java card applets)?
    I want to check it out that:- which line of java program would be helpful to know that:-
    1-"how real host application will talk to reader"
    2- how it connect and disconnect the reader
    3- how it send apdu to java card by reader
    and much more.
    I am using netbeans 7.1 and it is using CJCRE as a simulator....

    you mean to say this
    http://askra.de/software/jcdocs/app-notes-2.2.2/apduio.html
    I am quite confused now, i read this but still can not imagine the concept ,
    an applet code is :-
    public class GetName extends Applet
         final static byte CLASS     = (byte) 0x80;  // Class of the APDU commands
         final static byte INS_READ  = (byte) 0x02;  // instruction for the READ APDU command
         final static byte INS_WRITE = (byte) 0x03;  // instruction for the READ APDU command
         final static byte INS_DY_CO = (byte) 0x04;  // instruction for the READ APDU command
         final static byte[] text    = {(byte) 'A', (byte) 'M', (byte) 'I', (byte) 'T'};
         public static byte[] holder;
         public static void install(byte[] bArray, short bOffset, byte bLength)
            new GetName();
        protected GetName()
            holder = new byte[5];// allocation of memory in runtime
            register();
        public void process(APDU apdu)
              if(selectingApplet())
                   return;
            byte[] cmd_apdu = apdu.getBuffer();         
             if (cmd_apdu[ISO7816.OFFSET_CLA] == CLASS)
                   switch(cmd_apdu[ISO7816.OFFSET_INS])
                        case INS_READ:  
                        if ((cmd_apdu[ISO7816.OFFSET_P1] != 0) || (cmd_apdu[ISO7816.OFFSET_P2] != 0))
                        ISOException.throwIt(ISO7816.SW_WRONG_P1P2);
                        short le = (short)(cmd_apdu[ISO7816.OFFSET_LC] & 0x00FF); 
                        short len_text = (short)text.length;                      
                        if (le != len_text)
                        ISOException.throwIt((short)(ISO7816.SW_CORRECT_LENGTH_00 + len_text)); 
                        apdu.setOutgoing();                      
                        apdu.setOutgoingLength((short)len_text);
                        apdu.sendBytesLong(text, (short)0, (short)len_text);
                        break;
                    // here we save data from apdu and will keep inside the data byte                   
                        case INS_WRITE:
                    short lc = (short)(cmd_apdu[ISO7816.OFFSET_LC] & 0x00FF); 
                    Util.arrayCopy(cmd_apdu, (short) ((ISO7816.OFFSET_CDATA) & 0xff), holder, (short) 0, lc);
                        short len_holder_inside_write= (short) holder.length;
                       apdu.setOutgoing();
                    apdu.setOutgoingLength((short)len_holder_inside_write);
                    apdu.sendBytesLong(holder, (short) 0, (short) len_holder_inside_write);
                    break;
                    case INS_DY_CO:
                        short len_holder= (short) holder.length;
                    apdu.setOutgoing();
                    apdu.setOutgoingLength((short)len_holder);
                    apdu.sendBytesLong(holder, (short) 0, (short) len_holder);
                    break;
                        default : 
                        ISOException.throwIt(ISO7816.SW_INS_NOT_SUPPORTED);
             else
                    ISOException.throwIt(ISO7816.SW_CLA_NOT_SUPPORTED);
    }now i think i need to make a another java file which would contain a main class, Is this both file would be inside a single java card project. and how these both would be connect to each other.
    for manually run a applet- there were two steps 1-
    C:\java_card_kit-2_2\samples\src\demo>jcwde jcwde-getname.app
    Java Card 2.2 Workstation Development Environment (version 0.18).
    Copyright 2002 Sun Microsystems, Inc. All rights reserved.
    jcwde is listening for T=0 Apdu's on TCP/IP port 9,025.
    and in second terminal we wrote-
    C:\java_card_kit-2_2\samples\src\demo>apdutool -nobanner -noatr getname.scr > ge
    tname.scr.jcwde.out
    Here it is clear that, if i will use javacardio then no need to pass the apdu from a file .....but i am confuse about how it possible, ie. is both file lie in same project , because i m using simulator so i need to run these both file simoltaneously........give me some roughly steps to implement this.

  • Java Card Help!!!!!!1

    hi all!
    please excuse me all along that i can make you lose, my name is Victor Romero I am student of 3 semester of systems engeniering at the University of Antioquia (Medellin-Colombia), here in my country the truth is that the new technologies are very little as much to study as to develop them, but I have conformed a training group to investigate about Java Card technology from Sun Microsystems. we have obtained two readers towitoko chipdrive and we are so happy by this step, but the truth until I have not been able to put work the environtmen correctly, i need to know if you can lend me some type of help. i know that you are a occupied persons and if I must pay some money by its collaboration please lets know me. At the moment I am working under windowsME what I must do? Thanks a lot

    The best you can do when you start with Java Card development downlaod the Sun tools from java.sun.com/products/javacard. Set up your environment as described in the documentations that comes with the tools. This allows you to get familar with Java Card. Later you can purchase a tool to do development for a real card product. You can use OCF to integrate your stuff into Java application that run on the desktop. There is also a good book about Java Card http://java.sun.com/docs/books/javacard/

  • Help:java card and rfid

    I searched a lot about java card and rfid, but don't have a clear idea about the relationship between the two. Please help me....

    They have NO common grounds.
    A java card needs a real "smart" processor because it contains a Java Virtual Machine, can do crypto and other stuff. The cost to produce one is in the multi dollar range. Some java cards can communicate contactless by "radio".
    RFID is the term to describe a very primitive device, all it can do is report a unique identification (ID) and it does this contactless (RF). the cost to produce one is in the cent range. You can use it to track products or containers or other stuff.
    Since RFID is also a very popular buzzword these days, the exact meaning of RFID varies.
    Of course, you could use a java card to play RFID tag, but that would be
    very expensive. Java cards are usually used for bank cards and similar applications.

  • Develop Mutiple application java card?

    how does the multiple application java card works?I mean do we have to write different applets for different applications? and if yes then how does the card reader will recognize for which application the card should be used? Can anyone help me???

    Hi,
    how does the multiple application java card works?Multiple applets can exist on a single card because each applet instance is identified by a unique AID (application identifier). The card knows which applet is currently active and manages this for you. The active applet is the last applet that has been selected in the current session or the default applet for the card. If there is no default applet the card manager will be active.
    do we have to write different applets for different applications? If the different application requires different functionality you may want to use a separate applet but you can have multiple instances of the same applet as long as each instance has a unique instance AID. The instance AID is different to the applet/module AID (but it can be the same value). Each instance will have the same applet AID. You need to be careful with static variables when you have multiple instances of an applet as in any Java application, as there is still only on copy of the class in the JVM.
    how does the card reader will recognize for which application the card should be used?The card reader does not care which applet is being used. It only cares about the physical card. The card manager handles the currently active applet.
    I hope I have explained this clearly enough. One thing to remember is there are 3 AID's. The package AID, the module AID (for the applet class in the package) and the instance AID (for the instance of the applet created in the JVM with an install for install command).
    Cheers,
    Shane

  • How to run Java Card 2.2.1 demo application?

    Hi Friends..
    i want to know how to run Java Card 2.2.1 demo application in Windows environment..
    Sorry, perhaps this question looks like a little bit stupid.. :(
    In Windows, I've set the environment variables for :
    JAVA_HOME : C:\Program Files\Java\jdk1.6.0_03
    JC_HOME : C:\java_card_kit-2_2_1
    and then how to run demo1.scr, etc?.
    Please help me regarding this,
    Thanks in advance..

    Is there any suggestion for my question?.. :(
    Thanks in advance..

Maybe you are looking for

  • HRMS - Payslip / Is it not possible to print the 'Currency' on the payslip

    Hi, using HRMS within eBiz Suite, is it not possible to show/display/print the 'currency' field on the payslip ? I am asking because in a particular location, several currencies may be used. Thanks in advance.

  • Cursor Coordinate​s & Rectangle Coordinate​s not matching

    hello! I am actually drawing a drawing a rectangle over xy graph using mouse clicking events and I need coordinates exactly the way it is extracted by cursor.The indicator ''coord2'' & ''cursor 0'' should give me same results.I need output of coord 2

  • No Print Option In PSCS3

    i have tried a number of options and files buy cannot get the print options to become availiable. i need help because i cant print tiff files any other way. time is of the essance. windows xp Thank you.      Kris

  • OC4J and FOP

    Has anyone got FOP working on OC4J? I have compiled the FopServlet that comes with the download. It does not render a PDF just a blank webpage. Maybe someone else has seen this error? Thanks, Tom Henricksen

  • TS1398 wifi connection isn't what it should be :(

    after doing all the above things to get the wifi to work on the iPad its still dims to no bars as soon as i step away from the router. this is becoming extremely frustrating as all other devices in the house are working perfectly fine