| Library | Description |
|---|---|
| pkcs11-provider | An OpenSSL 3.x cryptographic provider that enables access to cryptographic tokens—such as smart cards and Hardware Security Modules (HSMs)—through the standard PKCS#11 API. It acts as a bridge between OpenSSL’s provider-based architecture and any PKCS#11-compliant module. |
Install pkcs11-provider
Instructions for installing pkcs11-provider depend on the Linux version being used. Perform the following instructions to install pkcs11-provider on the supported operating systems:Ubuntu or Debian
Perform the following steps to install pkcs11-provider on Ubuntu 24.04 or Debian 13:Build and change directories into a
/src directory (recommended to keep source builds organized)Shell
Red Hat or CentOS
In a terminal, run the following sequence of commands to install pkcs11-provider on Red Hat or CentOS:Edit the OpenSSL configuration file
Perform the following steps to edit the OpenSSL configuration file for Ubuntu or Debian-based Linux distributions and Red Hat or CentOS-based distributions:Run the following command to determine the location of the global OpenSSL configuration file for the logged-in user:
Shell
If editing the global OpenSSL configuration file is preferred, skip to the next step.Copy the
openssl.cnf file and move it to a preferred directory.Shell
Open the
openssl.cnf file in a text editor.If editing the global OpenSSL configuration file, open
openssl.cnf in a text editor with root privileges.Add the following line at the top of the file, before any sections, if it is not already present:
None
Add the following text, based on your operating system, at the bottom of the file after modifying the
module and pkcs11-module-path:None
If you need automatic logging to the token, specify the PIN by adding the following line:
pkcs11-module-token-pin = file:/path/to/filewithpin.txtThe file referenced should contain just the PIN.
