RSA。FromXmlString 'Operation is not supported on this platform.'



我正在尝试对我的混合加密和解密进行单元测试,但出现"此平台不支持操作"的错误。

我将声明为字符串称为私有,结果它获得了私钥。然后,此方法调用方法 2,该方法应该使用私钥对文件进行数字签名。

byte[] sign = new Encryp().DigitalSign(privatekey, memFile);

方法2:

public byte[] DigitalSign(string privateKey, MemoryStream data)
{
RSACryptoServiceProvider RSA = new RSACryptoServiceProvider();
RSA.FromXmlString(privateKey); //Line which triggers the error
byte[] hash = Hash(dataToBeSigned.ToArray());
byte[] signture = RSA.SignHash(hash, "SHA512");
return signture;
}

假设它的.Net Core,它没有FromXmlString。但是,您可以尝试将其用作扩展方法:

https://gist.github.com/Jargon64/5b172c452827e15b21882f1d76a94be4/

在.net core 3.0中,它可用。更新到 .net 核心 3 或使用扩展方法。希望对您有所帮助。

如果你在.netcor2上工作,它不支持.在.net Core 3之后它支持。

相关内容

最新更新