创建一个RAS 非对称 公私密钥示例

Posted 摇光Summer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了创建一个RAS 非对称 公私密钥示例相关的知识,希望对你有一定的参考价值。

static void Main(string[] args)
        {

            RSAParameters pub;
            RSAParameters priv;
            using (var rsa = new RSACryptoServiceProvider(512))
            {
                try
                {
                    //参数true 生成私钥,false生成公钥
                    pub = rsa.ExportParameters(false);
                    priv = rsa.ExportParameters(true);
                }
                finally
                {
                    rsa.PersistKeyInCsp = false;
                }
            }
            
            string s = "创建一个RAS 非对称 公私密钥示例";
            Console.WriteLine("需要加密的数据:" + s);

            byte[] messagebytes = Encoding.UTF8.GetBytes(s); //需要加密的数据 

            RSACryptoServiceProvider oRSA1 = new RSACryptoServiceProvider();
            oRSA1.ImportParameters(pub); //加密要用到公钥所以导入公钥 
            byte[] AOutput = oRSA1.Encrypt(messagebytes, false); //AOutput 加密以后的数据 
            Console.WriteLine("加密后的数据值:" + Convert.ToBase64String(AOutput));

            //私钥解密 
            RSACryptoServiceProvider oRSA2 = new RSACryptoServiceProvider();
            oRSA2.ImportParameters(priv);
            byte[] AInput = oRSA2.Decrypt(AOutput, false);
            string reslut = Encoding.UTF8.GetString(AInput);
            Console.WriteLine("解密后比的数据:" + reslut);

            Console.ReadKey();
        }

  

 

以上是关于创建一个RAS 非对称 公私密钥示例的主要内容,如果未能解决你的问题,请参考以下文章

数据加密相关专有术语解释

数据加密相关专有术语解释

数据加密相关专有术语解释

非对称密钥实验

非对称密码的对称密钥分发

井通商学院第10讲 I 非对称加密(中)