A short introduction
PC/SC is the de-facto standard to interface Personal Computers with Smart Cards (and smartcard readers/writers of course), and is available on most operating systems, including Windows and Linux.
There are plenty of documents and tutorials regarding the PC/SC API are available on the web, including the reference documentation on MSDN. Anyway, if you're still unfamiliar with the API, we've written a short manual that is your recommended starting point :
SpringCard's Simplified documentation of the PC/SC API
As PC/SC has been designed for smartcards -and at a period where smartcards were only contact cards-, there's nothing immediate when it goes to contactless cards not to mention contactless memory cards (such as Mifare for instance).
Fortunately, SpringCard CSB6 family makes it easy to work with those cards, thanks to an embedded APDU interpreter, that translates "classical smartcard commands" into efficient sequences to read and write contactless memory cards and RFID tags.
The relevant documentation is to be found in this manual :
CSB6 Family : PC/SC vendor specific attributes and commands
(This manual also provides information on accessing reader's serial number, driving the LED/buzzer and the RF field, and more).
Software
SpringCard PC/SC Quickstart
SpringCard PC/SC Quickstart is a set of sample applications, you may download for free.
You may use the applications free of charge, but you must observe the terms of our license.
The source code of those applications is also available for registered customers, within the free PC/SC SDK.
- SpringCard PC/SC Quickstart (Windows 2000/XP/Vista installer)
- SpringCard PC/SC SDK (ZIP archive)
SpringCard PC/SC Quickstart includes :
PC/SC DiagPC/SC Diag is a quick'n'dirty software to exchange APDU with smartcards or contactless cards, and also control commands with SpringCard PC/SC readers. Source code is available in the PC/SC SDK (Win32 native, written in C++ with MFC). |
|
C# ScriptorC# Scriptor is a basic PC/SC scripting tool, to send APDU commands to a smartcard using a batch file or manual entries. Source code is available in the PC/SC SDK (requires the .NET framework, written in C#). |
|
SCardToolkitSCardToolkit is an advanced software to explore any smartcard on the APDU level. SCardToolkit is highly expandable, yet comes this an impressive list of the APDU supported by current contactless cards. Source code is available in the PC/SC SDK (requires the .NET framework, written in C#). |
|
Card ToolCard Tool allows you to read/write several types of card in a "Hexadecimal editor" interface. Cards currently implemented : Source code is available in the PC/SC SDK (requires the .NET framework, written in C#). |
|
Open-source PC/SC software
gScriptor for WindowsgScriptor is a basic PC/SC scripting tool, to send commands to a smart card using a batch file or manual entries. gScriptor is open-source software released under GPL ; authors are Lionel Victor and Ludovic Rousseau (official project homepage). gScriptor is written in Perl+GTK. Our setup program for Windows includes the Perl+GTK runtime. |
|
- gScriptor setup (Windows 2000/XP/Vista installer)
Other resources
CodeProject
www.codeproject.com is a web board full of really interesting tutorials and resources for developers.
Don't miss the two interesting articles (with comprehensive and reusable source code) written by Olivier Rouit :
- A smartcard framework for .NET provides high-level methods to invoke PC/SC functions from C#, VB, or other .NET language,
- An XML framework for .NET to program smartcard applications is an interesting approach to separate the low-level smartcard APDU commands from the actual application logic.
The tutorial How to access smartcards simply and effectively contains Visual C++ source code that is a little more object-oriented than the ones in our SDK.
SCardSoft
SCardSoft is a small company based in Ukraine. They offer Smart Card ToolSet PRO, a useful application to work with smartcards at low level, and also SCard X Easy, an ActiveX control that makes it easy to work with smartcards from virtually any application or language supporting the ActiveX technology.
- Visit SCardSoft at www.scardsoft.com

