我有一个 SSH 密钥,我使用 monkeysphere 的 pem2openpgp 将其作为身份验证密钥毫无问题地导入到我的 GPG 密钥环中。 导入的密钥可以正常工作。我从 ~/.ssh 中删除了它的 SSH 版本,并从 ssh-agent 切换到支持 SSH 的 gnupg-agent。问题出现在我购买 Yubikey 4 并尝试将签名、加密和身份验证密钥移入其中时。所有密钥都是 4k RSA。在 gpg 内部创建的签名和加密密钥可以毫无问题地移动,而导入的身份验证密钥则被拒绝。我总是收到“无效值”错误消息。如果我创建一个新的身份验证密钥 - 4k RSA 作为导入的密钥,则可以毫无问题地移动它。我还尝试从 gpg 密钥环导出和重新导入我的身份验证密钥,但没有结果。Yubikey 支持不久前驳回了这个案子,因为非导入密钥有效。替换我当前的密钥将是一项艰巨的工作,因为我管理许多服务器。我宁愿避免它。
这是来自 scdaemon 的调试日志。
2020-03-03 22:39:26 scdaemon[4493] writing new key
2020-03-03 22:39:26 scdaemon[4493] RSA modulus size is 4096 bits
2020-03-03 22:39:26 scdaemon[4493] DBG: send apdu: c=00 i=DB p1=3F p2=FF lc=539 le=-1 em=-254
2020-03-03 22:39:26 scdaemon[4493] DBG: PCSC_data: ...
2020-03-03 22:39:26 scdaemon[4493] DBG: PCSC_data: ...
2020-03-03 22:39:26 scdaemon[4493] DBG: response: sw=6A80 datalen=0
2020-03-03 22:39:26 scdaemon[4493] failed to store the key: Invalid value
2020-03-03 22:39:26 scdaemon[4493] operation writekey result: Invalid value
2020-03-03 22:39:26 scdaemon[4493] DBG: chan_7 -> ERR 100663351 Invalid value <SCD>
任何提示都将不胜感激。提前致谢。