====== Reading Smartcards with Gentoo Linux ======
This page describes the steps necessary to read smartcards using Gentoo Linux.
===== Card Readers =====
There are USB and serial card readers. The discussed steps here are for serial card readers, the one used is Towitoko's CHIPDRIVE micro 100, which is fully supported. Also tested was the CHIPDRIVE micro 120.
===== Installation =====
The steps needed to get the card reader software installed are:
emerge -av sys-apps/pcsc-lite
emerge -av app-misc/towitoko
===== Configuration =====
The configuration file is /etc/reader.conf.d/reader.conf. Add the following:
FRIENDLYNAME "Towitoko CHIPDRIVE micro 100 V4.30"
DEVICENAME /dev/ttyS0
LIBPATH /usr/lib/libtowitoko.so.2.0.0
CHANNELID 0x0103F8
Make sure the devicename and the channel ID match your system. Use the following for reference:
^COM port^CHANNELID^DEVICENAME^
|COM1|0x0103F8|/dev/ttyS0|
|COM2|0x0102F8|/dev/ttyS1|
|COM3|0x0103E8|/dev/ttyS2|
|COM4|0x0102E8|/dev/ttyS3|
===== Test the setup =====
Plug the card reader in, then use the provided testing application in /usr/bin/tester.
tester
Press "in", then select the COM port where the card has been plugged in. If all is well, you see
...
COM1
Status: Processor smartcard present
...
Next, start the pcscd daemon in debug mode. Note the the configuration file has to be provided with option -c, otherwise the daemon fails to read it. This is considered a bug by the author which'll probably be reported later.
pcscd -d --info -c /etc/reader.conf.d/reader.conf
View the output of /var/log/messages, if pscsd is properly configured, the reader is shown there:
Sep 22 20:30:01 hostname pcscd: Card ATR: 3A 84 00 12 02 01 00 95
To stop the daemon, kill the process:
killall pcscd
===== Additional notes =====
If you have more than one reader, you can add the configuration to /etc/reader.conf.d/reader.conf, creating an additional descriptive block.
====== Accessing SIM cards ======
Reading and editing the phone numbers on a SIM card with the above setup is possible with the use of an SIM card adapter and the right application. The one presented here is [[http://www.integrazioneweb.com/monosim/|monosim]]. **Note that with the described system, Gentoo Linux, pcsc-lite and libchipcard, card readers micro 100 and micro 120 it has only been possible to read a German D1 card, not D2 (Vodafone).**
===== monosim =====
This application uses the mono framework, which makes installation rather hefty just for this little application (still it might be useful for you.)
The needed steps are:
emerge -av mono
emerge -av gtk-sharp
emerge -av glade-sharp
Download the monosim application, unpack in a new folder, don't start it yet.
mkdir monosim
cd monosim/
tar xzvf ../monoSIM_v1.3.0.Linux.tar.gz
As root, start the pcscd daemon:
pcscd -c /etc/reader.conf.d/reader.conf
Now start the monosim application:
mono monoSIM.exe
That's it! You should now be able to read, export and edit the phone numbers stored on the card.
====== Reading a German medical card ======
Unfortunately I did not get any application to work which uses PC/SC libray as described above. Here's a quick rundown of an alternative procedure, using libchipdrive, following a howto on [[http://forums.gentoo.org/viewtopic-t-546189-highlight-libchipcard.html|forums.gentoo.org]]:
emerge -av libchipcard
vi /etc/chipcard3/server/chipcardd3.conf
vi /etc/chipcard3/client/chipcardc3.conf
chipcardd3 -C /etc/chipcard3/server/chipcardd3.conf addreader --dtype tow_ctapi --rtype tow_cdm --rname towitoko2 --rport COM1
chipcardd3 -C /etc/chipcard3/server/chipcardd3.conf --pidfile /var/run/chipcardd3.pid -f --loglevel notice --logtype console
chipcardd3 -C /etc/chipcard3/server/chipcardd3.conf --pidfile /var/run/chipcardd3.pid
chipcard3-tool list
chipcard3-tool check
/usr/bin/kvkcard3 read
====== Links ======
* Towitoko driver page: http://www.geocities.com/cprados/
* Monosim: http://www.integrazioneweb.com/monosim/
* PC/SC lite mini-howto: http://www.srcf.ucam.org/~rjw57/sc/pcsc_lite/index.html
* Powerful library and tools, alternative to pcscd: libchipcard - http://www.libchipcard.de/
* Configure libchipcard howto: http://forums.gentoo.org/viewtopic-t-546189-highlight-libchipcard.html
* Reading medical smart cards: http://www.linuxnetmag.com/de/issue7/m7chipdrive1.html
* Gnumed includig medical smart card reading: http://www.gnumed.org/
* Too good not to be mentioned: Free (as in beer) Windows app - http://www.chipcardmaster.de/
~~DISCUSSION:off|Comments~~