c# 幾種常見的加密方法的實現

這篇文章主要介紹了c# 幾種常見的加密方法的實現,幫助你們更好的理解和使用c#,感興趣的朋友能夠了解下c#

1.ACSII碼加密

 1 //ACSII碼加密
 2     private static string ACSIIPWd(string rpwd)
 3     {
 4       string Ret;
 5       byte[] array = System.Text.Encoding.ASCII.GetBytes(rpwd);
 6       byte[] byteArray = new byte[array.Length];
 7 
 8       for (int i = 0; i < array.Length; i++)
 9       {
10         int asciicode = (int)(array[i]);
11         asciicode = asciicode + 1;
12         byteArray[i] = (byte)asciicode;
13       }
14       System.Text.ASCIIEncoding asciiEncoding = new System.Text.ASCIIEncoding();
15       string strCharacter = asciiEncoding.GetString(byteArray);
16       Ret = strCharacter;
17       return Ret;
18     }

2.MD5加密

 1 //MD5加密
 2     private static string MD5PWd(string rpwd)
 3     {
 4       string Ret;
 5 
 6       MD5 md5 = new MD5CryptoServiceProvider();
 7       byte[] palindata = Encoding.Default.GetBytes(rpwd);//將要加密的字符串轉換爲字節數組
 8       byte[] encryptdata = md5.ComputeHash(palindata);//將字符串加密後也轉換爲字符數組
 9       Ret = Convert.ToBase64String(encryptdata);
10       return Ret;
11     }

3.RSA加密

 1 //RSA加密
 2     private static string RSAPWD1(string myKeyContainerName)
 3     {
 4       string ret = "";     
 5       CspParameters cp = new CspParameters();
 6       cp.KeyContainerName = myKeyContainerName;
 7       RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(cp);
 8       
 9       ret = rsa.ToXmlString(true);
10       Console.WriteLine("Key is : \n" + rsa.ToXmlString(true));
11       return ret;
12 
13     }

4.DES加密

 1 //DES加密 
 2     private static string DESPWD(string ciphertext)
 3     {
 4       string desPWD = ""; 
 5       byte[] buffer;
 6       DESCryptoServiceProvider DesCSP = new DESCryptoServiceProvider();
 7 
 8       MemoryStream ms = new MemoryStream();//先建立 一個內存流
 9       CryptoStream cryStream = new CryptoStream(ms, DesCSP.CreateEncryptor(), CryptoStreamMode.Write);//將內存流鏈接到加密轉換流
10       StreamWriter sw = new StreamWriter(cryStream);
11       sw.WriteLine(ciphertext);//將要加密的字符串寫入加密轉換流
12       sw.Close();
13       cryStream.Close();
14       buffer = ms.ToArray();//將加密後的流轉換爲字節數組
15       desPWD = Convert.ToBase64String(buffer);//將加密後的字節數組轉換爲字符串
16 
17       return desPWD;
18     }
相關文章
相關標籤/搜索