[Smartsign-devel] JC Emulator integrated with PCSC-Lite
Status: Pre-Alpha
Brought to you by:
kefren
|
From: Tommaso C. <cuc...@ss...> - 2003-08-06 17:51:59
|
Tommaso Cucinotta wrote:
> More details follow below.
Sorry, I forgot details. Here they are.
======================================================================
JC-Emulator - Emulator for JavaCard 2.1.x smart cards.
======================================================================
Main developers: Paolo Grimaccia, Matteo Ferrari
Coordinator: Tommaso Cucinotta <cuc...@ss...>
Organization: Scuola Superiore Sant'Anna, Pisa - Italy
----------------------------------------------------------------------
DESCRIPTION
----------------------------------------------------------------------
JC-Emulator is an emulation environment for running, testing and
debugging JavaCard Applets and JavaCard based solutions. Applets can
be run within the emulator, without any need for real smart-cards.
Morover, smart-card aware applications don't see any difference
between an Applet running onto a real smart-card, and the one running
in the emulator. This is achieved by integrating the emulation
environment directly within the PCSC-Lite middleware
layers. Specifically, JC-Emulator is composed of a virtual reader
driver, namely libVirtualSCReader1.so, and the JavaCard emulator
itself, that interacts with and runs user-written JavaCard Applets.
Once installed inside PCSC-Lite, the virtual reader gives to the
system a view of a "fake" smart-card serial reader, that actually
gateways command APDUs to the emulator itself, which in turn passes
them to the user Appplets.
----------------------------------------------------------------------
LICENSE
----------------------------------------------------------------------
This software is released under the GNU GENERAL PUBLIC LICENSE. See
the file 'COPYING' for details.
----------------------------------------------------------------------
REQUIREMENTS
----------------------------------------------------------------------
- A Java CSP with RSA/DES/3DES Crypto capabilities. This needs to be
statically
installed into your Java installation tree.
- IAIK Java CSP (a copy is contained in emulator/lib dir, at the moment).
This does not need static installation, as it is dynamically loaded
by the
emulator.
This software has been developed and tested using the "The Legion of
Bouncy-Castle Java CSP".
----------------------------------------------------------------------
COMPILATION
----------------------------------------------------------------------
Go to ifd-handler. Type make.
Go to main jc-emulator folder. Type make.
----------------------------------------------------------------------
USE
----------------------------------------------------------------------
1. Copy compiled code of your JavaCard Applet into the 'applets' directory
2. Stop your pcscd daemon, if it is running
3. Install the virtual serial reader. Edit /etc/reader.conf, adding a
reference
to the ifd-handler/libVirtualSCReader1.so library. Specify '4000' as
CHANNEL
ID. This is the port number the server listens to. Check out the
'reader.conf' example file.
4. Launch the 'server.sh' script. This will emulate connection of a
virtual serial
reader to your PC. Note: this script will give several log messages
on its
STDOUT.
5. Start your pcscd daemon.
6. Launch the 'installer.sh' script. Just select the classes you want to
install.
7. Use the server GUI interface to virtually insert a card.
8. Use your own smart-card aware application and enjoy.
For further information, check out the 'doc' directory.
----------------------------------------------------------------------
DOCUMENTATION
----------------------------------------------------------------------
This project has been developed as part of a Thesis in Computer
Engineering. The docs folder contains the original thesis in italian
english only, sorry. And, there is this README file.
----------------------------------------------------------------------
NOTES ON SERIALIZATION
----------------------------------------------------------------------
Serialization is still experimental. Don't rely on it.
In order to make it work with a JavaCard Applet, you must modify every
class that is not derived from Applet, adding 'implements
java.io.Serializable'
into the class definition.
Bye,
Tommaso Cucinotta.
--
,------------------------------------------------.
| Dr. Tommaso Cucinotta <t.c...@ss...> |
>------------------------------------------------<
! Scuola Superiore di Studi Universitari !
! e Perfezionamento S.Anna !
! Pisa Italy !
`------------------------------------------------'
|