下载此文档

C#常用的加密解密方法.docx


文档分类:IT计算机 | 页数:约26页 举报非法文档有奖
1/26
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/26 下载此文档
文档列表 文档介绍
C#常用的加密解密方法
开篇
C#内置很多加密解密的方法,有MD5,SHA1,base64等。这里会简单介绍下这几个方法以及用法。 
这几个加密解密会分为两类说,一类是只有加密,没有解密类型的MD5,SHA1。此类加密常用在数据校验。一类是有加密,有解密类型的base64,DES,RSA。此类加密常用在数据传输。
数据校验型
MD5
Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。该算法的文件号为RFC 1321(,MIT Laboratory puter Science and RSA Data Security Inc. April 1992)。
MD5即Message-Digest Algorithm 5(信息-摘要算法5),用于确保信息传输完整一致。是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现。将数据(如汉字)运算为另一固定长度值,是杂凑算法的基础原理,MD5的前身有MD2、MD3和MD4。

MD5主要是用来做数据校验的。拿网上下载软件来说,有很多软件在下载的时候都会提供一个MD5校验码,就是用来校验软件是否被他人修改过。还有就是用户账号系统,用户注册后,数据库存储的不是明文密码,而是MD5码。
测试代码:
演示如何获取一个字符串的MD5 hash以及校验MD5 hash:
using System;
using ;
using ;
namespace MD5Test
{
class Program
{
static void Main(string[] args)
{
string source = "Happy Birthday!";
string hash = GetMd5Hash(source);
("The MD5 hash of " + source + " is: " + hash);
("Verifying the hash ...");
if (VerifyMd5Hash(source, hash))
{
("The hashes are the same.");
}
else
{
("The hashes are not same.");
}
();
}
/// <summary>
/// 获取一个字符串的32位16进制字符串格式MD5码
/// </summary>
/// <param name="input">原字符串</param>
/// <returns></returns>
static string GetMd5Hash(string input)
{
MD5CryptoServiceProvider md5Hasher = new MD5CryptoServiceProvider();
byte[] inputBytes = (input);
byte[] data = puteHash(inputBytes);
StringBuilder sBuilder = new StringBuilder();
//将data中的每个字符都转换为16进制的
for (int i = 0; i < ; i++)
{
(data[i].ToString("x2"));
}
return ();
}
/// <summary>
/// 验证Md5 hash
/// </summary>
/// <param name="input">原字符串</param>
/// <param name="hash">原字符串的md5码</param>
/// <returns></returns>
static bool VerifyMd5Hash(string input, string hash)
{
string hashOfInput = GetMd5Hash(input);
parer =

C#常用的加密解密方法 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数26
  • 收藏数0 收藏
  • 顶次数0
  • 上传人xinsheng2008
  • 文件大小30 KB
  • 时间2018-06-08
最近更新