C#DES算法实例解析

开发 算法
C#DES算法实例解析主要想大家介绍一个应用实例,希望对你了解C#DES算法解密的使用特点和过程等等有所帮助。

C#DES算法解密实现之前我们先看看DES工作的基本原理是,其入口参数有三个:key、data、mode。 key为加密解密使用的密钥,data为加密解密的数据,mode为其工作模式。当模式为加密模式时,明文按照64位进行分组,形成明文组,key用于对数据加密,当模式为解密模式时,key用于对数据解密。实际运用中,密钥只用到了64位中的56位,这样才具有高的安全性。

C# DES算法特点:分组比较短、密钥太短、密码生命周期短、运算速度较慢。DES工作的基本原理:其入口参数有三个:key、data、mode。key为加密解密使用的密钥;data为加密解密的数据;mode为其工作模式。

C#DES解密实现函数:

/// <summary>  
/// 进行C#DES算法解密。  
/// </summary>  
/// <param name="pToDecrypt">要解密的以Base64</param>  
/// <returns>已解密的字符串。</returns>  
public string Decrypt(string pToDecrypt,string sKey)  
{  
byte[] inputByteArray = Convert.FromBase64String(pToDecrypt);  
using(DESCryptoServiceProvider des =   
new DESCryptoServiceProvider())  
{  
des.Key=ASCIIEncoding.ASCII.GetBytes(sKey);  
des.IV=ASCIIEncoding.ASCII.GetBytes(sKey);  
System.IO.MemoryStream ms = new System.IO.MemoryStream();  
using(CryptoStream cs = new CryptoStream(  
ms,des.CreateDecryptor(),CryptoStreamMode.Write))  
{  
cs.Write(inputByteArray,0,inputByteArray.Length);  
cs.FlushFinalBlock();  
cs.Close();  
}  
string str = Encoding.UTF8.GetString(ms.ToArray());  
ms.Close();  
return str;  
}  

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.

C#DES解密函数调用:

string str = Page.Request.QueryString["str"];  
 
Page.Response.Write("得到的为:"+Decrypt(str,"abcdefgh"));  
  • 1.
  • 2.
  • 3.

C# DES算法解密的基本情况就向你介绍到这里,希望对你了解和学习C# DES算法解密有所帮助。

【编辑推荐】

  1. .NET写入文本文件的操作浅析
  2. C# MSN Messenger的窗口的实现浅析
  3. C#MSN插件开发实例解析
  4. C#DES算法概念及特点浅析
  5. C#DES算法加密解密实例解析
责任编辑:仲衡 来源: 百度空间
相关推荐

2009-09-04 16:45:44

C# DES算法加密解

2009-09-04 16:37:37

C# DES算法

2009-09-04 17:20:23

C# DES加密解密

2009-09-09 14:40:15

C# XML解析

2009-08-31 18:17:32

C#接口编程

2009-09-07 06:31:32

C#窗体移动

2009-08-19 16:09:15

C#操作Access

2009-08-26 12:14:44

C#打印设置

2009-08-18 10:47:40

C#枚举类型

2009-09-09 13:57:28

C# XML解析

2009-09-14 14:25:53

C# Lambda EC# Lambda

2009-09-01 18:32:32

C#动态数组

2009-08-31 17:30:10

C#接口的作用

2009-09-03 15:43:21

C#时间计算

2009-09-04 13:37:44

C#货币格式

2009-09-01 13:51:51

C#创建Word文档

2009-09-03 09:16:35

C#递归函数

2009-09-04 16:26:48

C#MSN插件开发

2009-08-27 17:40:21

C#接口的作用

2009-08-28 12:31:06

C#静态方法
点赞
收藏

51CTO技术栈公众号