【问题标题】:How to check ECDSA (on p-256) signature using public key from certificate如何使用证书中的公钥检查 ECDSA(在 p-256 上)签名
【发布时间】:2014-10-14 11:53:40
【问题描述】:

我有证书和 ECDSA(在 p-256 上)签名。现在我想使用提供的证书验证这个签名。我使用 c++(在 Windows 上)。无法使用托管代码 (.NET)。我发现 CryptoAPI 不支持 ECDSA,所以我应该使用 CryptoAPI NG (CNG)。但是我找不到如何将公钥从证书导入 CNG。

你能帮我解决我的问题吗? 谢谢

【问题讨论】:

    标签: c++ cryptography ecdsa


    【解决方案1】:

    问题已解决。为此,我使用 OpenSSL。

    【讨论】:

      【解决方案2】:

      CryptImportPublicKeyInfoEx2 函数将公钥导入 CNG 非对称提供程序...”

      我的 C 可能有点偏离,但我相信它是这样的

      BCRYPT_KEY_HANDLE hKey;
      BOOL imported = CryptImportPublicKeyInfoEx2(
          X509_ASN_ENCODING,
          &(pCertContext->pCertInfo->SubjectPublicKeyInfo),
          0,
          NULL,
          &hKey);
      
      if (!imported)
          goto :err;
      

      【讨论】:

        猜你喜欢
        • 2022-01-18
        • 1970-01-01
        • 2022-08-16
        • 2018-11-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-03-23
        • 1970-01-01
        相关资源
        最近更新 更多