码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2018-11-05 19:13:40      阅读:196      评论:0      收藏:0      [点我收藏+]

标签:str   base64   ima   utf8   OLE   技术   cep   bubuko   nal   

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 非对称 公私密钥示例

标签:str   base64   ima   utf8   OLE   技术   cep   bubuko   nal   

原文地址:https://www.cnblogs.com/leoxjy/p/9910506.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!