如何通过C#使用CryptoAPI?
有一组CryptoApi函数与加密服务提供商(CSP)一起工作 是的,我知道有System.Cryptography命名空间。但我不需要它们的实现如何通过C#使用CryptoAPI?,c#,.net,cryptography,cryptoapi,mscapi,C#,.net,Cryptography,Cryptoapi,Mscapi,有一组CryptoApi函数与加密服务提供商(CSP)一起工作 是的,我知道有System.Cryptography命名空间。但我不需要它们的实现 是否有现成的库为这些函数提供.NET包装器 我认为最好的办法是使用p/Invoke将功能拉入C#应用程序。 这里有一篇关于MSDN的(旧)文章,介绍了在C#中使用P/Invoke和CryptoAPI: 它适用于.Net 1.1,但概念仍然相同。关于此主题,MSDN上有一篇扩展文章: 一篇关于使用.Net的文章 从中提取的一些p/Invoke声明显
是否有现成的库为这些函数提供.NET包装器 我认为最好的办法是使用p/Invoke将功能拉入C#应用程序。 这里有一篇关于MSDN的(旧)文章,介绍了在C#中使用P/Invoke和CryptoAPI:
它适用于.Net 1.1,但概念仍然相同。关于此主题,MSDN上有一篇扩展文章: 一篇关于使用.Net的文章 从中提取的一些p/Invoke声明显示了它的p/Invoke定义: [snip]代码示例对于SO来说太大[/snip]
System.Security.Cryptography命名空间是Windows CryptoAPI的包装器。好的,我应该使用什么类来处理第三方CSP?
CPAcquireContext
CPCreateHash
CPDecrypt
CPDeriveKey
CPDestroyHash
CPDestroyKey
CPDuplicateHash
CPDuplicateKey
CPEncrypt
CPExportKey
CPGenKey
CPGenRandom
CPGetHashParam
CPGetKeyParam
CPGetProvParam
CPGetUserKey
CPHashData
CPHashSessionKey
CPImportKey
CPReleaseContext
CPSetHashParam
CPSetKeyParam
CPSetProvParam
CPSignHash
CPVerifySignature