自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C#DES算法加密解密實(shí)例解析

開發(fā) 后端 算法
C#DES算法加密解密的應(yīng)用還是比較廣泛的盡管它已失去昔日的光輝,但是掌握C#DES算法加密解密還是十分有用的。

C# DES算法加密解密作為我們開發(fā)中的安全部分我們需要明白它的使用,雖然56位密鑰的DES算法已經(jīng)風(fēng)光不在,而且常有用Des加密的明文被破譯的報(bào)道,但是了解一下昔日美國(guó)的標(biāo)準(zhǔn)加密算法總是有益的,而且目前DES算法得到了廣泛的應(yīng)用,在某些場(chǎng)合,仍然發(fā)揮著余熱。

C# DES算法加密解密特點(diǎn):分組比較短、密鑰太短、密碼生命周期短、運(yùn)算速度較慢。C# DES算法加密解密工作的基本原理:其入口參數(shù)有三個(gè):key、data、mode。key為加密解密使用的密鑰;data為加密解密的數(shù)據(jù);mode為其工作模式。

C# DES算法加密解密核心代碼演示:DES是常用的對(duì)稱加密解密方法

  1. /**//// <summary>  
  2. /// 進(jìn)行DES加密。  
  3. /// </summary>  
  4. /// <param name="pToEncrypt">要加密的字符串。</param>  
  5. /// <param name="sKey">密鑰,且必須為8位。</param>  
  6. /// <returns>以Base64格式返回的加密字符串。</returns>  
  7. public string Encrypt(string pToEncrypt, string sKey)  
  8. {  
  9. using (DESCryptoServiceProvider des =   
  10. new DESCryptoServiceProvider())  
  11. {  
  12. byte[] inputByteArray = Encoding.UTF8.GetBytes(pToEncrypt);  
  13. des.Key = ASCIIEncoding.ASCII.GetBytes(sKey);  
  14. des.IV = ASCIIEncoding.ASCII.GetBytes(sKey);  
  15. System.IO.MemoryStream ms = new System.IO.MemoryStream();  
  16. using (CryptoStream cs = new CryptoStream(ms,   
  17. des.CreateEncryptor(), CryptoStreamMode.Write))  
  18. {  
  19. cs.Write(inputByteArray, 0, inputByteArray.Length);  
  20. cs.FlushFinalBlock();  
  21. cs.Close();  
  22. }  
  23. string str = Convert.ToBase64String(ms.ToArray());  
  24. ms.Close();  
  25. return str;  
  26. }  
  27. }  
  28.  
  29. /**//// <summary>  
  30. /// 進(jìn)行C#DES解密。  
  31. /// </summary>  
  32. /// <param name="pToDecrypt">要解密的以Base64</param>  
  33. /// <param name="sKey">密鑰,且必須為8位。</param>  
  34. /// <returns>已解密的字符串。</returns>  
  35. public string Decrypt(string pToDecrypt, string sKey)  
  36. {  
  37. byte[] inputByteArray = Convert.FromBase64String(pToDecrypt);  
  38. using (DESCryptoServiceProvider des =   
  39. new DESCryptoServiceProvider())  
  40. {  
  41. des.Key = ASCIIEncoding.ASCII.GetBytes(sKey);  
  42. des.IV = ASCIIEncoding.ASCII.GetBytes(sKey);  
  43. System.IO.MemoryStream ms = new System.IO.MemoryStream();  
  44. using (CryptoStream cs = new CryptoStream(ms,  
  45.  des.CreateDecryptor(), CryptoStreamMode.Write))  
  46. {  
  47. cs.Write(inputByteArray, 0, inputByteArray.Length);  
  48. cs.FlushFinalBlock();  
  49. cs.Close();  
  50. }  
  51. string str = Encoding.UTF8.GetString(ms.ToArray());  
  52. ms.Close();  
  53. return str;  
  54. }  
  55. }  

C# DES算法加密解密的基本情況就向你介紹到這里,希望對(duì)你了解和學(xué)習(xí)C# DES算法加密解密有所幫助。

【編輯推薦】

  1. C#內(nèi)存流的使用實(shí)例探討
  2. .NET寫入文本文件的操作淺析
  3. C# MSN Messenger的窗口的實(shí)現(xiàn)淺析
  4. C#MSN插件開發(fā)實(shí)例解析
  5. C#DES算法概念及特點(diǎn)淺析
責(zé)任編輯:仲衡 來源: 百度空間
相關(guān)推薦

2009-09-04 16:55:09

C#DES算法解密

2009-09-04 17:20:23

C# DES加密解密

2009-09-04 16:37:37

C# DES算法

2020-09-24 10:50:53

加密解密語(yǔ)言hmac

2023-07-30 17:44:24

CryptoJS加密字符串

2009-10-29 13:46:14

VB.NET DES加

2011-08-25 16:47:53

LuaC++ 證書

2019-08-02 10:43:57

2009-09-09 18:35:07

C# 加密MD5和SHA1

2009-09-09 14:40:15

C# XML解析

2011-06-22 14:00:22

2021-04-15 09:02:33

Python加密解密

2011-06-22 11:04:25

加密ARM3DES

2009-12-18 16:12:11

Ruby加密

2011-03-02 16:43:25

2010-07-06 10:35:59

2009-08-13 18:12:11

C#數(shù)據(jù)加密

2009-09-09 13:57:28

C# XML解析

2009-08-18 10:47:40

C#枚舉類型

2009-08-26 12:14:44

C#打印設(shè)置
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)