现在我有一个公钥(.pem)文件和密码来加密。
-----开始公共关键-----
..... ... ...
----- END PUBLIC KEY -----
我想获取加密密码的byte []值。 它没有得到任何错误,但返回byte []值似乎是错误的。
以下是我使用的编码电流,请帮助我或建议我,如果我出错了。
非常感谢您的帮助!!
private static UnicodeEncoding _encoder = new UnicodeEncoding();
public byte[] getPem(string pemFile, string password)
{
byte[] encryptData;
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
byte[] Exponent = { 1, 0, 1 };
RSAParameters rsaParam = rsa.ExportParameters(false);
rsaParam.Modulus = Convert.FromBase64String(File.ReadAllText(pemFile).Replace("-----BEGIN PUBLIC KEY-----", "").Replace("-----END PUBLIC KEY-----", ""));
rsaParam.Exponent = Exponent;
rsa.ImportParameters(rsaParam);
var dataToEncrypt = _encoder.GetBytes(password);
encryptData = rsa.Encrypt(dataToEncrypt, false);
return encryptData;
}