Intel® Stratix® 10器件安全用户指南

ID 683642
日期 12/15/2021
Public
文档目录

2.1.2. 在SoftHS中创建认证秘钥对

本章中的SoftHSM示例是自相一致的。某些参数取决于SoftHSM安装和SoftHSM中的令牌初始化(token initialization)。

quartus_sign工具取决于HSM的PKCS #11 API library。

本节中的示例假定SoftHSM library安装到以下其中一个位置:
  • Linux上的/usr/local/lib/softhsm2.so on
  • 32-bit Windows上的C:\SoftHSM2\lib\softhsm2.dll
  • 64-bit Windows上的C:\SoftHSM2\lib\softhsm2-x64.dll
使用softhsm2-util工具在SoftHSM中初始化一个令牌(token):
softhsm2-util --init-token --label s10-token --pin s10-token-pin \
--so-pin s10-so-pin --free

选项参数,特别是token label和token pin是本章中使用的示例。Intel建议您按照HSM供应商的说明创建和管理令牌和密钥。

您可以使用pkcs11-tool实用程序创建认证秘钥对,与SoftHSM中的令牌进行交互。您无需在文件系统示例中明确引用私钥和公钥.pem文件,而是通过其标签引用密钥对,并且该工具会自动选择相应密钥。

运行以下命令来创建在后面的示例中用作根密钥的密钥对以及在签名链中用作设计签名密钥的密钥对:
pkcs11-tool --module=/usr/local/lib/softhsm/libsofthsm2.so \
--token-label s10-token --login --pin s10-token-pin --keypairgen \
--mechanism ECDSA-KEY-PAIR-GEN --key-type EC:secp384r1 --usage-sign \
--label root --id 0
pkcs11-tool --module=/usr/local/lib/softhsm/libsofthsm2.so \
--token-label s10-token --login --pin s10-token-pin --keypairgen \
--mechanism ECDSA-KEY-PAIR-GEN --key-type EC:secp384r1 --usage-sign \
--label design0_sign --id 1
注: 此步骤中的ID选项对于每个密钥必须是唯一的,但只被HSM使用。此ID选项与签名链中分配的密钥取消ID无关。