RSACryptoServiceProvider

RSACryptoServiceProvider

这是我的代码:

        RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(128);

        try
        {
            string publicKeyXML = rsa.ToXmlString(false);
            string privateKeyXML = rsa.ToXmlString(true);
            int size = rsa.KeySize;
        }
        finally
        {
            rsa.PersistKeyInCsp = false;
        }


我只是不断收到相同的错误“指定了无效的标志”。如果使用无参数构造函数,则不会引发任何异常,并且键大小为1024。

最佳答案

RSACryptoServiceProvider不支持128位密钥:


  RSACryptoServiceProvider支持从384位到16384位的密钥长度,以8位为增量


引自MSDN - RSACryptoServiceProvider.KeySize Property

关于c# - 指定了加密异常无效标志,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13988333/

10-10 07:02