首页/安全/加密与证书速查/硬件令牌与 PIV 私钥

硬件令牌与 PIV 私钥

硬件令牌(YubiKey、智能卡等)在设备内保存私钥并提供触控确认,常用于 SSH 登录、代码签名与双因素认证;密钥不可导出,丢失后需依赖备用令牌与恢复流程。

加密与证书速查安全更新于 2026-10-13

硬件令牌怎么用

硬件令牌(YubiKey、智能卡等)把私钥保存在设备内部,签名在设备里完成,私钥永远不出芯片,使用时还可以要求物理触控确认。这让它同时具备两件事:凭据无法被复制到别的机器,签名动作需要人在场。常见用途是 SSH 登录、代码签名与双因素认证。需要提前规划的是运维面:设备丢失或损坏意味着凭据不可用,所以必须准备备用令牌与恢复流程,并明确每把令牌绑定哪套身份。

基本信息

常见设备YubiKey、智能卡、其他支持 PIV 或 FIDO2 的令牌
接口划分PIV、OpenPGP、FIDO2 等应用相互独立,各自管理各自的密钥
SSH 集成通过 PKCS#11 提供公钥与签名能力
安全特性私钥不可导出,可选触控确认
运维要求准备备用令牌与恢复流程,避免单点丢失
管理要点记录每把令牌绑定的身份与用途

典型使用场景

  • 运维登录:用令牌完成 SSH 认证,替代磁盘上的私钥文件。
  • 代码与制品签名:签名动作需要设备在场,抑制自动化滥用。
  • 高权限操作:关键系统的管理入口要求硬件因素。
  • 多人共用环境:凭据绑定到人,不随机器流动。
  • 合规场景:要求硬件级密钥保护时按令牌方案落地。

通过 PKCS#11 使用令牌登录

通过 PKCS#11 使用令牌登录
# 列出令牌中的公钥
ssh-keygen -D /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so
# 用令牌完成 SSH 认证(私钥留在设备内)
ssh -I /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so user@host
# 把公钥放到目标主机的 authorized_keys 后即可免密登录
# 注意:路径随发行版与安装方式不同,先用 ls 确认 .so 文件位置

接口与应用对照

接口典型用途注意
PIV智能卡式证书与 SSH 登录需要配置 PKCS#11 模块路径
OpenPGP签名与加密邮件与 PIV 密钥相互独立
FIDO2网页与服务双因素认证不直接提供 SSH 证书能力
触控策略签名前要求物理确认可能影响无人值守的自动化
令牌触控确认能降低远程滥用风险,但也意味着自动化场景需要单独的凭据设计:不要让流水线依赖需要人工触碰的设备。

易错点

  • 只配一个硬件令牌且无备用:丢失或损坏后无法登录关键系统。
  • 把令牌当作万能凭据:不同接口与应用相互独立,混用会导致意料之外的授权范围。
  • 让自动化流程依赖需要触控确认的令牌:任务在无人值守时必然失败。
  • 不登记令牌与身份的对应关系:人员变动后无法判断哪些令牌需要回收。

数据来源与参考

  • OpenSSH 手册(ssh -I / ssh-keygen -D)
  • NIST SP 800-73(PIV 接口)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌