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#实现加密的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持编程宝库

在前面介绍的代码中有使用特性,这些特性都是Microsoft定义好的,作为.NET Framework类库的一部分,许多特性都得到了C#编译器的支持。.NET Frmework也允许定义自己的特性。 ...