我的组件负责从服务器下载文件。作为文件验证的一部分,我使用CAPICOM(SignedCode对象)来验证证书是否包含特定字符串并调用SignedCode对象的Validate方法。如果文件包含名称中没有请求字符串的证书,则会提示用户是否信任该文件。
由于CAPICOM将被Microsoft弃用,我需要使用.NET库来实现这些逻辑。 如何使用.NET库获得相同的功能? 网上有什么例子吗?
由于 扎基
答案 0 :(得分:0)
using System.Security.Cryptography;
// ....
byte[] SignData(byte[] toSign)
{
RSACryptoServiceProvider rsaCert =
GetCertificateWithPrivateKeyFromSomewhere(); // this method is yours
return rsaCert.SignData(toSign, new SHA1CryptoServiceProvider());
}
bool VerifyData(byte[] toVerify, byte[] signature)
{
RSACryptoServiceProvider rsaCert =
GetCertificateWithPublicKeyFromSomewhere(); // this method is yours
return rsaCert.VerifyData(toVerify, new SHA1CryptoServiceProvider(), signature);
}