我已经用 Java 生成了一个 ECDSA 签名,我想从中获取 R 和 S 值。据我了解,我生成的签名是 DER 编码的。有人可以向我提供一些 Java 代码(可能使用 Bouncy Castle)来将 R 和 S 值检索为 BigIntegers 吗?
注意:如果有帮助,我通过 JCE 的 Signature 类使用内置提供程序生成了签名,我的 P_256 EC 密钥对的签名长度通常在 70 到 72 字节之间徘徊。
是否可以通过ncipher JCE API"重新定位"密钥到pkcs11?我知道您可以通过generatekey命令重新定位,但我不知道如何对现有的JCE密钥执行此操作.第一个提示是"源应用程序",选项似乎不包括JCE.它是否支持除此处列出的选项之外的其他选项,还是应该以不同的方式重新定位?
这里的最终目标是导出通过nCipher的JCE API生成的一对密钥(非对称和对称)(是的,我知道HSM的工作是保护密钥和导出通常不是一个好主意,但这是一个要求).我们能够导出通过PKCS11接口生成的密钥,但不能导出通过JCE生成的密钥,因此我们的想法是,如果我们可以将它从JCE重新定位到PKCS11,我们也可以导出这些密钥.如果还有其他方法可以做到这一点,我们也会对此持开放态度.
最后,在对它们执行nfkminfo时,JCE键显示为"已启用恢复".这是否意味着它们可以出口或者这里的恢复意味着什么呢?