Professional Edition Only

How to Configure a PKCS#11 Smartcard

This is an advanced feature.

Generally, we recommend that you stick with the smartcard manufactures that are natively supported by SafeHouse. However, if you know what you're doing, and you happen to have a device which you know supports the PKCS#11 industry standard for smartcard interfaces, and that device in fact supports the minimum PKCS#11 feature set required by SafeHouse, then there's a pretty good chance you might be able to use it with SafeHouse.

If you think you have such a device, there's no harm in seeing if SafeHouse can use it. Follow the instructions below and be sure to run the library verification test found on the second dialog (below). If the tests pass, then you're in luck.

NOTE:  PKCS#11 smartcards are supported only in SafeHouse Professional Edition.

How to Determine if you have a PKCS#11-Compatible Smartcard

The only way to tell if your smartcard hardware/software supports the PKCS#11 standard is if it includes some kind of documentation which specifically states such.

The best sure-fire way to make sure you have a smartcard which is compatible with SafeHouse is to purchase a device from one of the manufacturers which have native support built into SafeHouse (the ones listed by name in the drop list).

Step 1. Enabled PKCS#11 Smartcard Support

The first step is to let SafeHouse know you would like to use a generic smartcard by selecting this item in the smartcard configuration drop list.

How to display this dialog:
  1. Right click on the SafeHouse system tray padlock icon.

  2. Choose the Tools & Options menu item.

  3. Click the Options tab.

Step 2. Specify the Library File

The PKCS#11 specification dictates that manufacturers who choose to support it include a special DLL which file along with the rest of their installed software and drivers. This DLL, often referred to as a library file, acts as a bridge between the PKCS#11 industry-standard programming interfaces and the native drivers developed by the manufacturer.

SafeHouse needs to know where this library file is located so that it can call into this file each time it wants to access your smartcard.

Please consult the documentation or reference material that accompanied your smartcard to find out the name and location of your PKCS#11-compatible library fie.

How to display this dialog:
  1. Click the Options button on the above dialog after you've selected the Generic PKCS#11 Compatible Smartcard item.

  2. Click the Library tab.

Select File

Enter the full filepath to the driver file. This file is nearly always a DLL, and it's frequently located in your System32 folder.

You'll need to check the documentation which accompanied your smartcard to find out the exact name and location of its respective driver file.


Browse your files and folders for the DLL library file which supports the PKCS#11 command  set.


Run a simple test to see if SafeHouse is compatible with the above-referenced file.

Please understand that the PKCS#11 specification leaves a lot of flexibility for manufacturers to leave out support for programming features they choose not to include. This verification test will make sure that the selected driver supports the minimum features required by SafeHouse.

Compare to SafeBoot  file encryption xp  encryption security  folder protect