4

I have been using the library pkcs11Interop and I would like to know how could I create a pkcs11 library dll. I've been searching a lot but I didnt understand it, I want to create a pkcs11 library because i would like to specify where are stored my certificates and define how import and export them.

I found the Cryptographic Provider Development Kit but i didnt found a sample of what i want.

What i need to create my own pkcs11 library dll?

Thank you very much in advance

user3789330
  • 41
  • 1
  • 4

2 Answers2

4

What do I need to create my own PKCS#11 library dll?

Good knowledge of PKCS#11 specifications and a basic C/C++ skills.

Take a look at PKCS11-MOCK if you are not sure how to setup your project or where to start. It is a dummy library implementing PKCS#11 API and it currently builds on Windows, Linux, OSX, Android and iOS. We are using it for an automated testing of Pkcs11Interop wrapper and GnuTLS project uses it for custom object attributes testing.

jariq
  • 11,681
  • 3
  • 33
  • 52
2

To create a PKCS#11 library you just need to implement the PKCS#11 interfaces (which are part of the standard) and compile a PKCS#11 DLL. Microsoft had to take a different course and defined their own API, the CSP API. So you won't find PKCS#11 support in the CSP devkit.

Sometimes PKCS#11 libraries are used as implementation for Windows CSP's. The CSP is then used for supporting Windows and the PKCS#11 library for everything else.

Maarten Bodewes
  • 90,524
  • 13
  • 150
  • 263