Skip to content

Software compatibility

Viktor Tarasov edited this page Dec 11, 2012 · 1 revision

Software compatibility

In general all smart cards are incompatible. That is the sad truth.

First, every card has different commands. Some of them conform to the standard ISO 7816 Part 4 and higher, but
most cards have at least some commands, that are special, or the commands require a special data structure.

Second, even if the same card is used, two different software companies tend to use the card in incompatible
ways. However there is hope for this problem: PKCS#15 is a standard designed to solve that issue.

OpenSC implements PKCS#15, so cards initialized with OpenSC should work with other software implementing
it and vice versa. Note however, that usualy a card can only be modified with the software that was used
for initializing it in the first place. In that case you can only read the data with the compatible software,
use the keys, and most likely change pin and puk numbers.

Sometimes it is possible to live side by side. Think of a cd or a disk drive, with a picture and a text
file on it. Your text application can only open and change the text, and your graphics application can
only open and change the graphic, but if the medium can hold both files, you can store both on it.

That happends for example with the “Aladdin eToken PRO” (a usb crypto token) and OpenSC and the Aladdin
Software. OpenSC creates the file “2f00” and the directory “5015” as per PKCS#15 standard, and fills
both with data/keys/certificates. Aladdin does the same in the directory “6666”. Still no software knows
how to deal with the other ones data/keys/certificates.

Compatible Software

But at least some software is compatible:

Giesecke & Devrient ship the Starcos
smart card and usb tokens based on that card. The software bundled with both is called StarSign. That software implements
the PKCS#15 standard, too, so it should be fully compatible with OpenSC and vise versa. If there is any issue, please
let us know (the last test was quite a while in the past).

If you know other software implementing PKCS#15, please add a paragraph.

National ID cards

National ID cards often are a standard of their own. OpenSC has PKCS#15 emulations for these cards, so you can use
them anway. See NationalIdCards for a list of supported cards.

Clone this wiki locally