# OpenSC tools

OpenSC includes a number of command line tools to personalize, explore, debug and test smart cards. The tools are (with links to the online man pages):

## low level tools

- opensc-tool is the basic test tool. With "-l" you can see the readers, with "-n" you can see if opensc identifies the card correctly. Both are necessary for OpenSC to work.
- opensc-explorer is a small tool so you can browse your smart card with commands like ls, get information about files, read and write files and so on. Only works on some cards, as not all cards have the required functionality (for example no "ls"/"dir" command). Use pkcs15-tool (below) instead.

## high level tools

- pkcs15-init can erase your smart card, initialize it, create pins, generate keys, store certificates and keys or complete p12 bundle files on the card.
- pkcs15-tool will show you what is on your card, lets you browse pins, certificates and keys, and lets you unblock and change pins.
- pkcs15-crypt offers access to the crypto functionality, such as signing data or decrypting data.
- pkcs11-tool does all these things too, but uses the OpenSC PKCS#11 module. As such it works like mozilla and thus is nice for testing. It also has a test mode to check most operations. pkcs11-tool uses OpenSC PKCS#11 module by default, but will work well with any other PKCS#11 implementation specified with "--module", too.

## card specific tools

- cardos-info prints some information for Siemens CardOS/M4 cards. will not work at all with other cards.
- cryptoflex-tool can help you with cryptoflex cards, will not work with any other card.
- eidenv lets you access the extra data on belgian eid cards, like card holder, photo, etc.
- netkey-tool can help you with tcos cards in netkey format. will not work with any other card.
- piv-tool used to do primative card administration operations on PIV cards. Some vendor's cards may have additional functions not handled by the piv-tool.

## development tools

- (DEPRECATED) opensc-config was meant to ease developing with opensc, but now we recommend to use pkg-config instead. Only provided for backwards compatibility.