Pkcs11Interop

Managed .NET wrapper for unmanaged PKCS#11 libraries

Quick facts

Pkcs11Interop library:

Overview

PKCS#11 is cryptography standard maintained by the OASIS PKCS 11 Technical Committee (originally published by RSA Laboratories) that defines ANSI C API to access smart cards and other types of cryptographic hardware.

Pkcs11Interop is managed library written in C# that brings full power of PKCS#11 API to the .NET environment. It loads unmanaged PKCS#11 library provided by the cryptographic device vendor and makes its functions accessible to .NET application.

Above figure presents the typical usage of Pkcs11Interop library in .NET application.

Supported hardware

Pkcs11Interop has been confirmed to be working with the following devices:

Documentation

It is highly recommended that before you start using Pkcs11Interop you get familiar at least with "Chapter 2 - Scope", "Chapter 6 - General overview" and "Chapter 10 - Objects" of PKCS#11 v2.20 specification (or equivalent chapters of any previous or subsequent specification version).

Pkcs11Interop API is fully documented with the inline XML documentation that is displayed by the most of the modern IDEs during the application development. Detailed Pkcs11Interop API documentation is also available online.

Following topics are covered by the standalone documents:

Download

Current stable version of Pkcs11Interop is 5.1.2:

All official items are signed with GnuPG key or code-signing certificate of Jaroslav Imrich and announced via public mailing list.

License

Pkcs11Interop is available under the terms of the Apache License, Version 2.0.
Human friendly license summary is available at tldrlegal.com but the full license text always prevails.

Support

Pick one of the options that best suits your needs:

Related projects

Following interesting projects are worth checking out:

About

Pkcs11Interop has been written by Jaroslav Imrich.