1.1
Single-Chip
Versus Multiple-Chip Smart Card Microcomputers
There are advantages and disadvantages
to both the muliple-chip and the single-chip
smart card. A multiple-chip smart
card may be less expensive to produce, since it can
incorporate several
easily-attainable, low-cost IC chips. A single-chip smart card, on the
other hand, requires a more complex,
specialized chip, carefully designed to accomodate
all the required circuitry for the
microprocessor, memory and I/O. [MCIV 85, p. 155]
In addition, a multiple-chip smart
card may be able to perform more functions and store more information than a single-chip
smart card. However, including more than one chip in a smart card presents some
difficult problems.
During the course of its use, a plastic
credit-card-sized device is subject to a great deal
of bending and twisting. To be reliable,
a smart card IC chip must be placed in one of the few areas of a card where the
effects of such stress are minimal. If several chips are to be contained in a smart
card, some of them may have to be placed in the higher-stress areas of the card,
where they may be more likely to break and cease to function. The connecting "wires"
which are needed to link several chips together may be similarly susceptible to
damage.
In addition to the increased chances
of breakage, a multiple-chip smart card may
present a risk in terms of the security
of the information to be stored within the card. It may be possible for an adversary
to "eavesdrop" on the chip-to-chip connections and extract secret data
from a multiple-chip smart card. Since it contains no chip-to-chip connections,the
single-chip smart card is generally considered more reliable and more secure than
the multiple-chip card. For these reasons, the single-chip smart card is currently
preferred for many applications.
Although it has some limitations,
a single-chip smart card can perform all the functions
of a microcomputer. The following
sections describe the components of a microcomputer microprocessor, memory, and
input/output—as they may be implemented in a single smart card IC chip.
1.2
The
Smart Card Microprocessor
The microprocessor is the component
which makes a smart card "smart" and distinguishes it from cards
designed to simply store data. The microprocessor and its associated operating system
enables the smart card to "make its own decisions" concerning where it
will store data in its memories and under what circumstances it will transfer information
through its input/output interface. The microprocessor itself consists of three
major components: the arithmetic logic unit (ALU), the control unit, and the bus.
- The ALU provides the basic logic
and arithmetic functions for the microcomputer. It
also contains small storage spaces,
called registers, which are needed for performing
computations, such as addition or
multiplication. The ALU interacts with the memory
and the input/output in order to coordinate
the operations of the microcomputer.
- The control unit assures that the
timing of events in the various parts of the microcomputer
are coordinated.
- The bus provides a link between
different parts of the smart card microcomputer.
There are many possible
configurations for the bus, which may be comprised of several segments. For example,
one segment of the bus may link two registers in the ALU together, another may link
the input/output interface to the microprocessor, and
still another may link the microprocessor
to the main memory of the smart card.
In general, smart cards are designed
such that the bus does not directly connect
the input/output to the main
memory. The microprocessor may be linked between
the input/output and the main memory
in order to "stand guard" over information
entering and leaving the memory.,
1.3
Smart
Card Memories
A smart card may contain several kinds
of memory for storing data and programs.
Virtually all memories currently used
in smart card microcomputers are manufactured from semiconductor materials. Semiconductor
memories consist of matrices of cells formed by transistors to store information.
By varying the composition and cell configurations of semiconductor materials, memories
with differing characteristics can be produced. Four types of semiconductor memory
used in smart cards are discussed below.
Random Access Memory (RAM) - Smart
card RAM is generally manufactured from
metal-oxide-semiconductor silicon.
Any information stored in RAM can be accessed
in a fixed amount of time regardless
of the information's position within the memory.
Access time to information in RAM
is in the range of tens to hundreds of nanoseconds
(billionths of a second). Smart card
RAM is usually volatile in nature (that is, it will
lose its stored information immediately
if power to the memory is removed). RAM,
the fastest type of memory, is often
used as a "scratch pad," buffer, or other type of
temporary storage.
Read Only Memory (ROM) - Smart card
ROM is a semiconductor memory which is
nonvolatile (i.e., its stored information
is retained indefinitely without a continuous
power supply to the memory).
Smart card ROM is typically made from a section
of semiconductor material in which
a series of memory cells have been permanently
burned or fused, in a particular pattern
which forms the underlying structure for a program.In this programming process,
which is completed at the ROM manufacturer's
plant, the ROM is often masked in
such a way that it cannot be read or altered by
the user. Semiconductor ROM is typically
used for storing the smart card's general
operating system programs |MCIV 85,
p. 154] (such as the program needed to start
the smart card when its power is turned
on).
Erasable Programmable Read Only Memory
(EPROM) - Smart card EPROM is a
nonvolatile semiconductor memory which
can be initially programmed at the user's
facility rather than at the ROM manufacturer's
plant. Data and programs can be
loaded into the smart card EPROM via
a smart card reader/writer device; the transfer
of information is controlled by the
smart card's microprocessor. When it is used
in other types of computers, EPROM
can be erased (by exposure to ultraviolet light)
and reprogrammed. However, EPROM that
is used in smart cards is typically manufactured in such a way that it is permanently
shielded and cannot be erased or altered. This shielding is intended to increase
the security of the smart card, by preventing unauthorized modification of data
stored in the EPROM.* EPROM may be used in a smart card to permanently store an
audit trail, a complete history of the operation of the card. EPROM provides much
greater storage density than other memories such as EEPROM (see below). However,
because data can only be appended to and not erased from smart card EPROM, it may
eventually become full, and thus the smart card will "expire."
Electrically Erasable Programmable
Read Only Memory (EEPROM) - Smart card
EEPROM is a nonvolatile semiconductor
memory which can be electrically erased
and reprogrammed via a
reader/writer device at the user's facility. EEPROM can
be used for storing programs and data
which may need to be modified periodically.
Since EEPROM can be erased, a smart
card containing EEPROM will not "expire"
because its memory is filled up.
Currently, however, EEPROM memories have less
storage capacity, require larger circuitry,
and cost more than other types of memory.
In addition, EEPROM may not be appropriate
for storing an audit trail.
A smart card microcomputer chip
usually contains both RAM and ROM, for the
card's temporary working memory and
for the operating system programs, and either
EPROM or EEPROM as a large storage
memory area. Using current techniques. EPROM and EEPROM cannot be placed
together on the same IC chip. Thus, for single-chip smart cards, either EPROM or
EEPROM must be chosen, depending on the intended application for the smart card.
(Currently, few single-chip smart cards contain EEPROM.) In order to utilize both
EPROM and EEPROM memories, some maYiufacturers place separate EEPROM chips in the
smart card together with a microcomputer chip containing EPROM. It remains to be
seen whether this endeavor is as reliable, secure, and costeffective as the single-chip
approach.