Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我在研究如何从 PIV 卡生成非对称密钥时陷入了死胡同。我查看了 NIST sp800-73-3 标准,但我无法做到这一点。该文档的第 3 部分概述了它显示他们使用 INS 47 来执行此操作,但我收到 6D00 错误。在获得此命令之前是否需要发送另一个命令?
另外,如果我错了,请纠正我,但根据我的理解,当生成密钥时,私钥会存储在卡上,而公钥会被返回。为了使用私钥加密数据,必须将数据发送到卡并返回加密信息。这是准确的吗?一张卡一次可以存放多少把钥匙?
标准是一件好事,但对于智能卡来说大多是不够的。您需要特定卡的手册,描述它支持的标准的哪些部分。对于密钥生成,最好查看 ISO 7816 第 8 部分(除了卡片手册)。有一些命令变体返回公钥,而另一些则将其默默地留在卡中以供以后检索。对于您的错误:您的卡可能处于生命周期阶段,密钥生成不再可用,但偶数指令代码 46 值得一试。
加密命令是 执行安全操作,也在 7816-8 中描述。请注意,对于大量明文来说,使用非对称密钥进行加密是不寻常的。通常,出于性能原因,使用对称密码对文本进行加密,并且仅使用非对称加密传输对称密钥。