注册码验证采用RSACryptoServiceProvider类提供的VerifyData方法即可,代码如下。
public static bool Verify(byte[]digestInput, byte[] signed)
{
try
{
RSACryptoServiceProvider RSAalg = new RSACryptoServiceProvider();
RSAalg.ImportParameters(GetParam());
return RSAalg.VerifyData(digestInput, typeof(SHA1CryptoServiceProvider),signed);
}
catch
{
return false;
}
}
private static RSAParameters GetParam()
{
//用公钥验证
RSAParameters param = new RSAParameters();
param.Exponent = Convert.FromBase64String("AQAB");
param.Modulus = Convert.FromBase64String("55/Jb2IaIoEkgiDHWaHVRnsLivGYtNO/N6I+2P9qh12cm5vvZFk0/7EpuT1PiqruquJ/jbrp3dDDHZeT9xVi1uQ2HQDEcPBnX6FWowTqBHFHG9O00wLy3pCfmKpIRqD4ZRRKhcdtVnKndSTjp6Qrv5vbxWX6+mO9Mz6qF6k+JDc=");
return param;
}