# Hardware Key Licensing

In the LicenseSpring platform, users can generate and customize licenses to require a hardware key. LicenseSpring supports using [**YubiKey**](https://www.yubico.com/) hardware keys.

{% hint style="warning" %}
Hardware Key Licensing is an add-on functionality in Licensespring. Contact sales to enable it on your account.
{% endhint %}

These licenses can only be activated and used only when a hardware key is plugged in. To start using hardware key licensing you need to:

{% stepper %}
{% step %}

### Create hardware key required licenses

* Issue licenses from LicenseSpring with the desired entitlements (max concurrent users, features, validity period, etc.)
* Ensure `Require Hardware Key` is ticked
  {% endstep %}

{% step %}

### Provision hardware keys so that they can be used with LicenseSpring service

{% endstep %}
{% endstepper %}

### Create hardware key required licenses

#### Issue License from LicenseSpring

* Configure license entitlements (max concurrent users, features, validity period etc.)
* Ensure `Require Hardware Key` is Ticked

![Configure license entitlements](/files/53cd50b6eb5e8a5488f44349dbb85ec36ed03502)

Click Next and Create Order.

![Create order](/files/4252c6c4f9f3ccd9490557abc595715bf01a95cb)

### Provision hardware keys

#### Desktop application installer

Download and install the **LicenseSpring Provisioning Application for Desktop** from [**here**](https://ls-provisioner.s3.eu-west-1.amazonaws.com/index.html).

{% hint style="warning" %}
We currently support x64 Windows, but we will expand the support for the rest of the OS environments.
{% endhint %}

This application will handle all the provisioning logic. It will create certificate and private and public keys for Yubikey dongle. Private key will be saved in the Yubikey, and public key will be kept in LicenseSpring and used for signature verification.

Install the [**MSVC redistributable**](https://aka.ms/vs/17/release/vc_redist.x64.exe) if it is not available already.

#### Key certificate provisioning

Visit the `Hardware Keys` page in LicenseSpring vendor platform ( Licenses -> Hardware Keys ). Here you can see the list of all provisioned hardware keys for your account and informations like expiration date of the certificate, is the certificate revoked or active and if it is already used to activate a license. If it is, button `View license` will be displayed in table row.

![Hardware Keys](/files/b5515f0bd56b55eaee0c3ff1e171306020444ea5)

To provision a new key certificate, click on `Provision the key certificate` button and confirm the action inside the popup. This will redirect you to the desktop application which you installed in previous step. This application will start the provisioning process in the background.

If the process is successful, you should get a message window stating `Succeeded writing cert` and new certificate will be saved in PIV slot 9a. Otherwise, you will get a message window with some kind of error and writing the certificate will fail.

{% hint style="warning" %}
Provisioning will overwrite the RSA2048 keypair in PIV slot 9a.
{% endhint %}

Once this is done, you can safely activate the license using the hardware key. The hardware key must remain plugged in at all times while the software is running, otherwise the license will not function.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.licensespring.com/license-entitlements/license-activation-types/hardware-key-licensing.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
