Files
vsmartcard/virtualsmartcard
oepen e500aa3382 Refactoring and Bugfixing:
- CryptoUtils:
    - removing hard coded keylength from append_padding in CryptoUtils
    - rewrote append_padding, slightly modified strip_padding in CryptoUtils
    - added get_cipher_keylen and get_cipher_blocklen to CryptoUtils
    - Updated UnitTest in CryptoUtils. Note: PBKDF2.self_test() fails!!!
    - added new function protect_string to encrypt and authenticate a string
    - Removed hard coded padding pattern
- VirtualICC:
    - Added and integrated functions to load and save VirtualICC objects
    - Added exception handling for opening of the socket
- SmartcardSAM:
    - Removed all object persistance functionaliy from SmartcardSAM
    - Changed the constructors of the *SAM classes

- Moved all the functionality to create cards (especially the pre-initialized filesystems for each card type) to the new file GenerateCards.py
- Added minimal command line based interface to GenerateCards.py to generate customized cards and store them in a file
- Removed default sam and mf files (testconfig.mf and testconfig.sam)


git-svn-id: https://vsmartcard.svn.sourceforge.net/svnroot/vsmartcard@35 96b47cad-a561-4643-ad3b-153ac7d7599c
2010-01-30 18:51:00 +00:00
..
2010-01-30 18:51:00 +00:00
2009-08-22 08:01:54 +00:00
2009-08-22 08:01:54 +00:00
2009-08-22 08:01:54 +00:00

Title            : virtualsmartcard
Authors          : Frank Morgner, Dominik Oepen
Version          : 1.0.0 27 Jul 2009
License          : See file COPYING
Tested Platforms : Linux 2.6 (Debian, Ubuntu, Om 2008)

Welcome to virtualsmartcard. The purpose of virtualsmartcard is to emulate a
smartcard and make it accessible through PCSC. Currently the virtual smartcard
supports almost all commands of ISO-7816 including secure messaging. Besides a
plain ISO-7816 smartcard it is also possible to emulate a German ePass (only
basic access control) and a rudimentary Cryptoflex smartcard.

The virtual smartcard communicates with the virtual smartcard driver through a
socket on port 35963. The file utils.py was taken from Henryk Plötz's
cyberflex-shell.


INSTALLATION
------------

See file INSTALL.


RUNNING virtualsmartcard
------------------------

First you need to make sure that pcscd loads the virtual smartcard driver. You
might run "update-reader.conf" to update pcscd's configuration file. Then
"pcscd -f -d" should say something like
readerfactory.c:1024:RFInitializeReader() Attempting startup of Virtual PCD 00 00 using /usr/lib/pcsc/drivers/serial/libvpcd.so

Now you can run "virtualsmartcard" which connects to the virtual reader. The
command "virtualsmartcard --help" gives an overview about the command line
options.

You should now be able to access the virtual smartcard through the system's
PC/SC API. You can use the opensc-explorer or pcsc_scan to test that.


QUESTIONS
---------

For questions, please email us at:
Frank Morgner <morgner@informatik.hu-berlin.de>
Dominik Oepen <oepen@informatik.hu-berlin.de>