c#中MD5算法(转帖)
2009-03-19 13:50
141 查看
先引用命名空间:
using System.Security.Cryptography;
using System.Text;
然后:
MD5CryptoServiceProvider md5=new MD5CryptoServiceProvider();
string source="HelloWorld";
byte[] message;
message=Encoding.Default.GetBytes(source);
//方法1
// 使用ComputeHash方法,适合用于计算简单的字符串的md5值时
md5.ComputeHash(message);
Console.WriteLine(Convert.ToBase64String(md5.Hash));
//方法2
// 使用TransformFinalBlock方法,适合用于原始数据不多时
md5.Initialize();
md5.TransformFinalBlock(message,0,message.Length);
Console.WriteLine(Convert.ToBase64String(md5.Hash));
//方法3
// 此方法等同于方法2
md5.Initialize();
md5.TransformBlock(message,0,message.Length,
message,0); //note: output bytes must equal input bytes
md5.TransformFinalBlock(message,0,0);
Console.WriteLine(Convert.ToBase64String(md5.Hash));
//方法4
// 将原始消息分两次编码,得出的结果跟上面的一样,适合用于计算大量原始数据时,例如计算一个文件的md5值
md5.Initialize();
message=Encoding.Default.GetBytes("Hello");
md5.TransformBlock(message,0,message.Length,
message,0);
message=Encoding.Default.GetBytes("World");
md5.TransformFinalBlock(message,0,message.Length);
Console.WriteLine(Convert.ToBase64String(md5.Hash));
using System.Security.Cryptography;
using System.Text;
然后:
MD5CryptoServiceProvider md5=new MD5CryptoServiceProvider();
string source="HelloWorld";
byte[] message;
message=Encoding.Default.GetBytes(source);
//方法1
// 使用ComputeHash方法,适合用于计算简单的字符串的md5值时
md5.ComputeHash(message);
Console.WriteLine(Convert.ToBase64String(md5.Hash));
//方法2
// 使用TransformFinalBlock方法,适合用于原始数据不多时
md5.Initialize();
md5.TransformFinalBlock(message,0,message.Length);
Console.WriteLine(Convert.ToBase64String(md5.Hash));
//方法3
// 此方法等同于方法2
md5.Initialize();
md5.TransformBlock(message,0,message.Length,
message,0); //note: output bytes must equal input bytes
md5.TransformFinalBlock(message,0,0);
Console.WriteLine(Convert.ToBase64String(md5.Hash));
//方法4
// 将原始消息分两次编码,得出的结果跟上面的一样,适合用于计算大量原始数据时,例如计算一个文件的md5值
md5.Initialize();
message=Encoding.Default.GetBytes("Hello");
md5.TransformBlock(message,0,message.Length,
message,0);
message=Encoding.Default.GetBytes("World");
md5.TransformFinalBlock(message,0,message.Length);
Console.WriteLine(Convert.ToBase64String(md5.Hash));
相关文章推荐
- 用MapViewOfFile处理大文件-内存不足(转帖学习)
- Maven仓库管理-Nexus(转帖后加强版)
- 创意经典(转帖)
- 转帖 一些基础知识
- weblogic培训视频(转帖)
- [转帖]linux笔试题
- 经典的C++库【转帖】
- C语言编译过程总结(转帖)
- 【转帖】构建JSP、PHP与JAVA融为一体的开发环境
- [转帖]漫谈 Clustering 系列
- (转帖)在MsSql、Access两种数据库中插入记录后马上得到自动编号的ID值
- vs2008一个著名的bug:error C2471: cannot update program database vc90.pdb(转帖)
- 数据库设计技巧(转帖)
- 关于时间同步 转帖
- SAX与DOM之间的区别 转帖
- C++容器类的简单介绍(转帖)
- [转帖]生成QQ/MSN/旺旺/SKYPE等在线状态图标(官方提供)
- Symbian程序区分当前用户SIM卡是移动还是联通(转帖)
- 转帖:.NET SDK中CorFlags.Exe的使用方法
- 转帖