我试图在C ++中使用WinCrypt API 。
我的应用程序需要encryption,解密,签名和validation文件,而且我知道如何做到这一点,一旦我有正确的密钥。 但我的问题实际上是不是生成这些键的应用程序。
我拥有的是PEM格式文件中的公钥和私钥:
-----BEGIN RSA PRIVATE KEY----- [Base64 encoded] -----END RSA PRIVATE KEY-----
和:
-----BEGIN RSA PUBLIC KEY----- [Base64 encoded] -----END RSA PUBLIC KEY-----
经过一番研究,我发现如何导入公钥: 这里和这里 ,使用以下方法:
但现在,我的问题是做私人密钥相同的事情。 任何帮助将真的非常感激:)谢谢。
通过使用带有PKCS_RSA_PRIVATE_KEY的 CryptDecodeObjectEx ,然后调用CryptImportKey,可以将PEM私钥导入到CAPI中。
我写了一个示例,演示如何使用PEM编码的RSA私钥来使用CAPI签名数据。 这是一个链接: http : //www.idrix.fr/Root/Samples/capi_pem.cpp
我希望这将有所帮助。