java密钥工厂中的KeyFactory.getInstance(“RSA“)翻译成C#的代码
原创
©著作权归作者所有:来自51CTO博客作者Hello_Martin的原创作品,请联系作者获取转载授权,否则将追究法律责任
BouncyCastle用这个包
RSA公钥加密
public string RSAPublickEncrypt(string pubkey, string data)
{
var rsaPubkey = (RsaKeyParameters)PublicKeyFactory.CreateKey(Convert.FromBase64String(pubkey));
RSAParameters rsaParameters = new RSAParameters();
rsaParameters.Modulus = rsaPubkey.Modulus.ToByteArrayUnsigned();
rsaParameters.Exponent = rsaPubkey.Exponent.ToByteArrayUnsigned();
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
rsa.ImportParameters(rsaParameters);
byte[] dataBytes = Encoding.Default.GetBytes(data);
byte[] encryptBytes = rsa.Encrypt(dataBytes, false);
string encryptString = Convert.ToBase64String(encryptBytes);
return encryptString;
}