zoukankan      html  css  js  c++  java
  • C# RSA加密

    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Security.Cryptography;
    using System.Text;
    using System.Threading.Tasks;

    namespace ConsoleApp1
    {
        class Program
        {
            static public RSACryptoServiceProvider RSA = new RSACryptoServiceProvider();
            static void Main(string[] args)
            {
                string cc = Guid.NewGuid().ToString();
                Console.WriteLine("加密数据: "+cc);
                var keyValuePair = GetKeyPair1();
                //Console.WriteLine(keyValuePair.Value);//打印私钥
                //导入公钥 加密
                RSA.ImportCspBlob(Convert.FromBase64String(keyValuePair.Key));
                byte[] b= RSA.Encrypt(Encoding.UTF8.GetBytes(cc), false);
                string bs = Convert.ToBase64String(b);
                Console.WriteLine("Encrypt加密后数据:"+bs.Length+" " + bs);
                //导入私钥解密
                RSA.ImportCspBlob(Convert.FromBase64String(keyValuePair.Value));
                byte[] d = RSA.Decrypt(b, false);
                Console.WriteLine("Decrypt解密后数据: " +Encoding.UTF8.GetString(d));
            }
            /// <summary>
            /// 获取一对 公钥 私钥方法
            /// </summary>
            /// <returns></returns>
            public static KeyValuePair<string, string> GetKeyPair1()
            {
                string public_Key = Convert.ToBase64String(RSA.ExportCspBlob(false));
                string private_Key = Convert.ToBase64String(RSA.ExportCspBlob(true));
                return new KeyValuePair<string, string>(public_Key, private_Key);
            }
        }
    }

  • 相关阅读:
    附件下载遇到 ERR_RESPONSE_HEADERS_MULTIPLE_CONTENT_DISPOSITION 错误
    Javascript模块编程&jQuery插件开发学习笔记
    网站推荐
    分布式服务下Quartz任务变为EREOR分析及解决
    Quartz任务监听器
    定时任务框架Quartz基本使用
    2020年CKA考试分享
    vue-element-loading 动态插件
    pycharm之常用插件
    PHP开源项目之YOURLS
  • 原文地址:https://www.cnblogs.com/fireblog/p/12198955.html
Copyright © 2011-2022 走看看