c# 几种常见的加密方法的实现

 更新时间:2020年12月11日 09:20:46   作者:農碼一生  
这篇文章主要介绍了c# 几种常见的加密方法的实现,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下

1.ACSII码加密

//ACSII码加密
    private static string ACSIIPWd(string rpwd)
    {
      string Ret;
      byte[] array = System.Text.Encoding.ASCII.GetBytes(rpwd);
      byte[] byteArray = new byte[array.Length];

      for (int i = 0; i < array.Length; i++)
      {
        int asciicode = (int)(array[i]);
        asciicode = asciicode + 1;
        byteArray[i] = (byte)asciicode;
      }
      System.Text.ASCIIEncoding asciiEncoding = new System.Text.ASCIIEncoding();
      string strCharacter = asciiEncoding.GetString(byteArray);
      Ret = strCharacter;
      return Ret;
    }

2.MD5加密

//MD5加密
    private static string MD5PWd(string rpwd)
    {
      string Ret;

      MD5 md5 = new MD5CryptoServiceProvider();
      byte[] palindata = Encoding.Default.GetBytes(rpwd);//将要加密的字符串转换为字节数组
      byte[] encryptdata = md5.ComputeHash(palindata);//将字符串加密后也转换为字符数组
      Ret = Convert.ToBase64String(encryptdata);
      return Ret;
    }

3.RSA加密

//RSA加密
    private static string RSAPWD1(string myKeyContainerName)
    {
      string ret = "";     
      CspParameters cp = new CspParameters();
      cp.KeyContainerName = myKeyContainerName;
      RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(cp);
      
      ret = rsa.ToXmlString(true);
      Console.WriteLine("Key is : \n" + rsa.ToXmlString(true));
      return ret;

    }

4.DES加密

//DES加密 
    private static string DESPWD(string ciphertext)
    {
      string desPWD = ""; 
      byte[] buffer;
      DESCryptoServiceProvider DesCSP = new DESCryptoServiceProvider();

      MemoryStream ms = new MemoryStream();//先创建 一个内存流
      CryptoStream cryStream = new CryptoStream(ms, DesCSP.CreateEncryptor(), CryptoStreamMode.Write);//将内存流连接到加密转换流
      StreamWriter sw = new StreamWriter(cryStream);
      sw.WriteLine(ciphertext);//将要加密的字符串写入加密转换流
      sw.Close();
      cryStream.Close();
      buffer = ms.ToArray();//将加密后的流转换为字节数组
      desPWD = Convert.ToBase64String(buffer);//将加密后的字节数组转换为字符串

      return desPWD;
    }

以上就是c# 几种常见的加密方法的实现的详细内容,更多关于c# 加密的资料请关注脚本之家其它相关文章!

相关文章

  • UGUI ScrollRect滑动定位优化详解

    UGUI ScrollRect滑动定位优化详解

    这篇文章主要为大家详细介绍了UGUI ScrollRect滑动定位优化,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04
  • c#快速写本地日志方法

    c#快速写本地日志方法

    下面小编就为大家分享一篇c#快速写本地日志方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01
  • C#应用XML作为数据库的快速开发框架实现方法

    C#应用XML作为数据库的快速开发框架实现方法

    这篇文章主要介绍了C#应用XML作为数据库的快速开发框架实现方法,详细介绍了将XML作为数据库的C#桌面应用开发技巧,具有一定的参考借鉴价值,需要的朋友可以参考下
    2014-12-12
  • C#生成MD5的函数代码

    C#生成MD5的函数代码

    这篇文章主要介绍了C#生成MD5的函数代码,有需要的朋友可以参考一下
    2013-12-12
  • CDMA 猫用AT命令发中文短信(C#)

    CDMA 猫用AT命令发中文短信(C#)

    CDMA猫连PDU都不支持,只能发文本短信。而且发中文短信居然是UNICODE,无法在超级终端里输入。只能写程序。网上这个问题谈论地比较多,做起来比较累,还偶尔会出乱码。还是将C#的成功代码帖一下吧。
    2009-08-08
  • C#获取变更过的DataTable记录的实现方法

    C#获取变更过的DataTable记录的实现方法

    这篇文章主要介绍了C#获取变更过的DataTable记录的实现方法,对初学者很有学习借鉴价值,需要的朋友可以参考下
    2014-08-08
  • C# salt+hash 加密

    C# salt+hash 加密

    本文主要介绍了C# salt+hash加密规则、C# salt产生伪随机数原理、hash原理、使用hash来加密的原因等等。具有一定的参考价值,下面跟着小编一起来看下吧
    2017-01-01
  • 解析C# Console 控制台为什么也会卡死(原因分析)

    解析C# Console 控制台为什么也会卡死(原因分析)

    在分析旅程中,总会有几例控制台的意外卡死导致的生产事故,有经验的朋友都知道,控制台卡死一般是动了快速编辑窗口的缘故,虽然知道缘由,但一直没有时间探究底层原理,市面上也没有对这块的底层原理介绍,昨天花了点时间简单探究了下,感兴趣的朋友一起看看吧
    2023-10-10
  • C#使用TimeSpan对象实现获取时间间隔

    C#使用TimeSpan对象实现获取时间间隔

    TimeSpan对象代表两个时间段的间隔或跨度,使用TimeSpan对象可以方便地获取两个时间段的间隔,下面我们就来看看C#使用TimeSpan对象实现获取时间间隔的具体操作吧
    2024-01-01
  • c#数据绑定之向查询中添加参数(.Net连接外部数据库)

    c#数据绑定之向查询中添加参数(.Net连接外部数据库)

    本实例主要练习了ADO.Net连接到外部数据库的基础上,向查询中添加参数。使用的是ACCESS数据库
    2014-04-04

最新评论