如何测试网络管理器 PKCS11 使用情况?

如何测试网络管理器 PKCS11 使用情况?

我正在尝试访问受 802.1x 证书保护的 wifi 网络,并且私钥存储在 TPM2 中。

当我尝试使用网络管理器连接到网络时,收到错误消息

Sep 19 11:23:40 mylaptop wpa_supplicant[1419]: ENGINE: cannot load private key with id 'pkcs11:model=SLB9670%00%00%00%00%00%00%00%00%00;manufacturer=Infineon;serial=0000000000000000;token=mytoken_tpm2_pkcs11;id=%37%37%38%39%30%30%63%35%66%33%39%61%61%62%33%31;type=private;pin-value=userpin' [error:42000065:pkcs11 engine::object not found]

我读到此错误消息是因为网络管理器(或者实际上是 wpa_supplicant)无法检索私钥。

我相当确定数据在那里:

# pkcs11-tool --module /usr/lib/x86_64-linux-gnu/pkcs11/libtpm2_pkcs11.so -L
Available slots:
Slot 0 (0x1): mytoken_tpm2_pkcs11
  token label        : mytoken_tpm2_pkcs11
  token manufacturer : Infineon
  token model        : SLB9670
  token flags        : login required, rng, token initialized, PIN initialized
  hardware version   : 1.38
  firmware version   : 7.85
  serial num         : 0000000000000000
  pin min/max        : 0/128
Slot 1 (0x2): 
  token state:   uninitialized


# pkcs11-tool --module /usr/lib/x86_64-linux-gnu/pkcs11/libtpm2_pkcs11.so -O
Using slot 0 with a present token (0x1)
Public Key Object; RSA 2048 bits
  label:      
  ID:         37373839303063356633396161623331
  Usage:      encrypt, verify
  Access:     local

我想验证网络管理器中使用的配置字符串。如何测试网络管理器的令牌访问?我如何确保'pkcs11:model=SLB9670%00%00%00%00%00%00%00%00%00;manufacturer=Infineon;serial=0000000000000000;token=mytoken_tpm2_pkcs11;id=%37%37%38%39%30%30%63%35%66%33%39%61%61%62%33%31;type=private;pin-value=userpin'设置正确?

相关内容