Yubikey:如何通过 PIN 和密码保护 OpenPGP 密钥?

信息安全 密码学 pgp gnupg 智能卡 优比键
2021-08-23 07:40:47

使用 Yubikey 4 作为 OpenPGP 智能卡和 GnuPG:如何保护用户 PIN 和用户密码?


万一拥有 Yubikey 4 物理访问权限的老练攻击者设法在显微镜下物理提取私钥而不知道用户 PIN 和用户密码:

  • 在这个“最后的手段”中使用了什么加密(密码、模式、散列等)来保护私钥?

  • 这最后一个密码屏障是由 GnuPG 代码制成的,还是 Yubikey 制造商编写了自己的版本?

    • 由于 Yubikey 4 声明其兼容 OpenPGP 智能卡 - 这是否意味着它具有与 G10 智能卡相同的 PIN/密码保护?
1个回答

鉴于有一个错误允许您在未验证 PIN(密码)的情况下使用私钥,我得出该卡实际上并未加密私钥(就像使用带有密码保护的“普通”密钥时所做的那样)与 GnuPG ):

源代码包含与用户 PIN(又名 PW1)验证相关的逻辑缺陷,允许具有本地主机权限和/或物理接近 (NFC) 的攻击者在不知道用户 PIN 码的情况下执行安全操作。

我不知道这发生了变化,但只有验证在当前版本中得到修复。换句话说,YubiKey 上的密钥是未加密存储的,能够读取密钥存储的复杂攻击者能够提取未加密的私钥。