我正在尝试使用OpenSSL(PKCS#5& PKCS#7)将UNIX代码移植到Windows。
在OpenSSL的情况下,所有编码/解码(证书或 密码)对函数中的调用者透明地完成 CMS_Encrypt,应该如此。
在这种情况下,CAPI做同样的事情 函数CryptEncryptMessage内的基于证书的加密 (没有向呼叫者透露ASN详细信息)。经过一些谷歌搜索,我发现了以下key generation implementation。现在我该如何在CAPI中使用它?
因为CAPI没有 支持高级别的PBE加密(PBKDF2)我的猜测 是编码必须手动完成(不知何故?)。手动我的意思是写作 (和阅读)各种ASN标签的二进制表示。我该怎么做?
我无法访问msasn1.h API,因为msasn1.lib从未分发过。除了基于证书的加密之外,有没有人能够使用CAPI接口做其他事情?