News
Applet development process
AID is also assigned to each Java package. During the process of uploading a package to the card, their identifiers are used to link with other packages on the card.The ISO 7816 standard specifies that AID should be used in smart card systems as unique identifiers of applications and files of certain types. AID is a byte array consisting of two independentparts. The first part is 5 bytes long and is called RID (resource identifier). The second part has a variable length and is called PIX (internal identifier extension). The length of the PIX...
read moreJava Card programming interfaces
Java Card programming interfaces include a set of specialized classes that are designed to program smart card applications in accordance with the model defined in the ISO 7816 standard. These APIs include three basic packages and one extension package. Basic packages – java.lang, javacard.framework and javacard.security. The extension package is called javacardx.crypto. Developers who are familiar with the Java platform may notice that many classes of this platform are not supported by Java Card programming interfaces. For example, Java...
read moreJava Card Execution Environment
The Java Card interpreter does not load CAP files on its own. It only executes the code that is contained in the CAP file. In Java Card technology, the mechanisms for downloading and installing CAP files are implemented in a program called an installer. The Java Card installer is located on the card. It is paired with an external installation program. This program transmits executable binary codes to the installer, which are located in the CAP file, through a card reader. The installer writes binary codes to the memory of the smart card,...
read moreOverview of Java Card technology
Java Card technology allows you to execute programs written in the Java programming language on smart cards and other computing devices with limited resources. This chapter provides an overview of the Java Card technology – the architecture of the system and its components. Smart cards are one of the most compact computing systems currently available. Smart cards usually contain 1 KB of RAM, 16 KB of programmable memory (EEPROM) and 24 KB of permanent memory (ROM). One of the most difficult tasks during the development of Java Card technology...
read moreSmart Card Standards and Specifications
ISO 7816 standards The ISO 7816 document “Identification cards – contact cards with an integrated microprocessor” is published by the International Organization for Standardization (ISO). It contains the main standards defining the characteristics of microprocessor cards with electrical contacts [6]. The ISO 7816 standard regulates various parameters of smart cards:· Section 1 – Physical characteristics· Section 2 – Card sizes and location of contacts· Section 3 – Electronic signals and transmission protocols· Section 4 –...
read moreEMV model of interaction with smart cards
APDU Protocol The APDU protocol is defined in the ISO 7816-4 standard. (Later in this book we will refer to the sections of the standard as follows: ISO 7816-X – specification X of the ISO 7816 standard.) This is an application-level protocol for data exchange between a smart card and a host application. According to the ISO 7816-4 specification, APDU messages come in two formats: the first format is used by the host application on the CAD side to transmit commands to the card, the second format is used by the card to send response messages...
read moreSmart Card Hardware
The hardware of the smart card includes contacts located on the surface of the plastic base, an integrated central processor and various types of memory. Some smart cards also have a coprocessor for mathematical calculations. Smart Card Contacts There are eight contacts on the surface of the smart card. Their functional purpose is shown in Figure 2.2. The dimensions and location of the contacts are regulated in section 2 of the ISO 7816 standard. The voltage on this contact can be 3 V or 5 V. The maximum deviation is 10%. The supply voltage...
read moreTypes of smart cards for the EMV program
This chapter is a brief introduction to the world of smart cards. We will try to familiarize the reader with the basics of smart card technology to help him understand the main idea of this book. If the reader wants to get a deeper knowledge of smart card technology, we will refer him to two books. The first book is Rankl and Effing [1], and the second is Guthery and Jurgensen [2]. These works contain comprehensive information on this topic. Readers who are familiar with smart card technology may skip this chapter. Smart cards are often...
read moreProblems of smart card application development
Problems of smart card application development The development of smart card applications has always been a long and time-consuming process. The cards have the same size and appearance, they use a standardized communication protocol. Despite this, smart cards of different manufacturers have different internal “stuffing”. Most of the development tools are issued by smart card manufacturers. They usually include general assembly language programming tools and specialized hardware emulators that can be purchased from chip vendors....
read moreA brief history of smart cards
A brief history of smart cards The rapid growth of the Internet and the development of wireless digital communications would cause a significant change in the way people communicate. With the progress of the means of communication in the world, business models have also evolved. If earlier it was necessary to go to the store and personally meet with the seller, now it is enough to have an Internet connection. No need to leave your home or office. A few mouse clicks are enough to purchase goods or services. The rapid growth in the popularity...
read more