OpenSC (Open Smart Card) is a set of software tools and libraries to work with smart cards, most commonly Java Card, with the focus on smart cards with cryptographic capabilities. OpenSC facilitate the use of smart cards in security applications such as authentication, encryption and digital signatures. OpenSC implements the PKCS#15 standard and the middleware PKCS#11/MiniDriver/Tokend API.
It also provides some support for Common Data Security Architecture (CDSA) on Mac OS X and Microsoft CryptoAPI on Windows, but it is still work in progress.
The OpenSC project allows the use of PKCS #15 compatible SmartCards and other cryptographic tokens (e.g. the Aladdin eToken) in UNIX compatible operating systems. OpenSC can use PC/SC Lite or CT-API as its reader backend.
Native Windows applications often use the Crypto API interface. OpenSC does not implement the matching interface – CSP – but with the help of an additional software it does. The advantage of Crypto API/CSP is that applications do not need special code to use smart cards, all applications gain that feature automatically.
Native Mac OS X applications also have a special interface called CDSA or CSP. At this moment OpenSC does not support that interface and also there is no bridge to do so. But you can still use applications on Mac OS X that implement the PKCS#11 interface like Mozilla, Firefox or Thunderbird.
OpenSC is written by an international team of volunteers and is licensed as Open Source software under the LGPL license version 2.1 of the License, or (at your option) any later version. For a list of all authors and contributors as well as detailed license information see OpenSC-Credits.
For more information on OpenSC, visit the project on GitHub here.