|
|
|
|
PROGRAMMABLE
PROCESSOR CARD APPLICATION
IN HEALTH CARE INFORMATION SYSTEM
Rumiana
Krasteva, Ani Boneva,
Ditchko Batchvarov, Veselin Geortchev, Konstantin Stanishev
Central
Laboratory of Mechatronics and Instrumentation - BAS
Acad. G. Bontchev Str. Bl.2, 1113 Sofia, BULGARIA
Phone: 72 13 61; Fax: 72 35 71
E-mail: rumikristeva@hotmail.com
SUMMARY: The paper presents a solution for health care system by using programmable smart cards. The card’s type is BasicCard, produced from ZeitControl GmbH and reading device - Cyber Mouse - from same production. There are presented how BasicCard working and hardware and software architecture description of the health care information system.
Keywords:
Programmable processor card, Card reader, Cyber Mouse, P-Code, T=1 protocol
1. Programmable processor card – BasicCard – An Overview
There exist two types of so called chip cards. While one type of cards (memory
cards) are just a bunch of EEPROM storage, second type of cards like BasicCard
is more like a small computer. It includes a microcontroller with RAM for operation,
ROM for holding the BasicCard OS and EEPROM for holding your data and
your program. It communicates with the outer world through its chip contacts
by use of a bi-directional serial interface. This interface and most other SmartCard
related facts are standardized by the International Organization for Standardization
(ISO) in ISO 7816 standard [3].
Having a microcontroller inside a Smart card is an advantage
of this technology. This is because only the microcontroller is in control of
all other parts (communication, RAM, ROM and EEPROM). This means only the program
executed by the microcontroller has access to data stored in EEPROM and so your
program decides which data is exchanged with the outer world and which conditions
are required before this data can be exchanged.
The heart of the programmable processor card is its P- Code
interpreter. The program for the card can be writes in Java or Basic. This is
compiled into co-called P-Code, which is machine independent language that looks
like machine code. The P-Code is downloaded to the card, where executed by interpreter.
If the code doesn’t work in the first time, it is possible to download a new
version into the same card.
Communication with a processor card is by means of command
– response protocol. When the card is inserted in the reader, a command – response
session is initiated: (Fig.1) [1].
Fig.1. Communication with a processor card
The products described in this chapter are the Compact BasicCard and The Enhanced BasicCard. Both BasicCards contain 256 bytes of RAM and user- programmable EEPROM: 1K in the Compact BasicCard, and up to 8K in the Enhanced BasicCard (depending of the version). The EEPROM contains the users Basic code, compiled into a virtual machine P – code. The user’s permanent data is also stored in EEPROM – in the Compact BasicCard, permanent data takes the form of Basic Variables, but the Enhanced BasicCard contains a directory – based file system as well. The RAM contains run- time data and the P-code stack [3].
Fig.2 BasicCard Versions
Fig. 2 shows BasicCard versions.
The operation system has a full implementation on the T=1
communication protocol defined in ISO/IEC 7816-3: Electronic signals and transmission
protocols.
The Enhanced BasicCard uses the well – known DES standard.
Plug – in libraries a provided for: 161 – bit Elliptic Curve Cryptography; the
IDEA International Data Encryption Algorithm; and the SHA – 1 Secure Hash Algorithm.
The Compact BasicCard uses the Shrinking Generator Algorithm [4].
BasicCard programs are written in the ZC- Basic language,
which is a modern – oriented Basic, with special features for the processor
card environment.
A program consists of initialization code followed
by procedure definitions. Programs for the Enhanced BasicCard can also
contain optional file definition sections.
The operating system in BasicCard contains the following
features:
Fig.3.
Connecting Cyber Mouse to the PC
2. System Description
The processor cards allow storing some important data – blood group and Rh.
factor, allergy, address, personal data and etc. This is a very necessary in
Bulgaria, where all data are writing on hand by now.
The paper offers a new idea for storing and manipulating
with all the important data for patients and medical services and using it in
each moment in each place. This is possibility to changing existing health cards
with electronic, which is more suitable and secure.
Healthcare administration requires immediate information
access and total flexibility. Smart card technology is the optimal portable
solution for information access, management and improved communication among
the various professionals involved in the administration of healthcare, while
providing the strongest security measures on the market today.
By allowing all participants in the healthcare system to
access only the data that they need, smart card solutions enable streamlined
inter-organization communication without compromising personal privacy. The
simplification of processes and improved communication resulting from the use
of smart card solutions leads to the achievement of the healthcare industry's
eternal objective: reduced administrative costs and improved quality of care.
Minimal system requirements for each GP's (General Practicing)
cabinet are (fig.4):
Fig.4. Minimal system configuration
Each of the patients has got a personal processor card and access PIN code. Each GP can reading and writing data from/to his patients cards and has got a PIN code for writing and changing data. Data stored on the card are divided in 5 groups:
This chapter describes system software realization. It has a modular structure and consist several program modules. Fig.5 shows software architecture of the described system.
Fig.5. Software modules
Minimal software requirements for each GP's computer are:
This is a program for storing and operation with relevant GP patient's data. This module allows automation GP's work and safes the time. It has several options:
3.2. Terminal program
The terminal program consist of the main procedure and procedure definition. Basic card commands are declared in command declaration, after which they can be called just like functions. Before calling a BasicCard command, it must be declared, so the ZC - Basic compiler knows the two ID bytes of the command and the types of the command parameters. There are ten command declarations:
3.3. Processor card program
This module consists of several procedures, which is declared in terminal program.
The procedures are downloaded to the card in P-code and executed at run - time.
Each command is assigned a unique two - byte ID. The two bytes ID must be supplied
between the command keyword and the name of the command. The BasicCard operation
system fills in the return value that gets passed back to the terminal program.
A BasicCard program consists of initialisation code
followed by procedure definition. The card program has got ten procedure
definitions - same as described in terminal program. When the BasicCard receives
a command from terminal program, the operating system in the card automatically
executes corresponding procedure from the card.
The permanent data that retains its value is stored in EEPROM.
The module is designed, compiled and loaded in the BasicCard
on WZCBASIC.
CONCLUSION
The paper gives a main perspective for building a health care system. The offered
system is a first step for building health care system by using Internet and
access to the main server data in Health Care Information Center. The modular
software solution gives possibility for future system upgrade.
REFERENCES
1. Guilfoyle T., The ZeitControl Compact and Enhanced BasicCards,
Doc. V.3.21, Zeit Control cardsystems CmbH, Germany, (March, 2001).
2. Ditchko Butchvarov, Rumiana Krasteva, Ani Boneva,
Konstantin Stanishev, Application on smart cards in medical systems (in
Bulgarian), Conference "ROBOTICS and MECHATRONICS’2001", Drjanovo, Bulgaria,
(10-12 October, 2001), Proceedings "Scientific reports", Section IV: Automation,
ISSN 1310-3946, pp. 3.76 - 3.81, (2001).
3. ZeitControl cardsystems GmbH, The compact and
enhanced BasicCards, Users Guide, VCT Inc., (2000).
4. Coppersmith D., H. Krawczyk and Y. Mansour, The
Shrinking Generator, Advances in Cryptology-CRYPTO’93 Proceedings, Springer
- Verlag, (1994).
Technical
College - Bourgas,
All rights reserved, © March, 2000