//MD5加密函数比较复杂,在.NET中我们不需要编写底层的算法。
//平台已经提供两个生成MD5加密的方法:
//经过改动一点就可以生成如现在DVBBS等论坛中使用的MD5密码

//⑴:使用C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.Security.dll
public static string MD5(string Password,int Length)
{

if (Length!=16&&Length!=32) throw new System.ArgumentException("Length参数无效,只能为16位或32位");
System.Security.Cryptography.MD5CryptoServiceProvider MD5=new System.Security.Cryptography.MD5CryptoServiceProvider();
byte[] b= MD5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(Password));
System.Text.StringBuilder StrB=new System.Text.StringBuilder();
for(int i=0;i<b.Length;i++)
StrB.Append(b[i].ToString("x").PadLeft(2,'0'));

if (Length==16)
       return StrB.ToString(8,16);
else
       return     StrB.ToString();

}

//⑵:在ASP。NET中可以直接使用System.Web.Security名称空间的FormsAuthentication类

public string md5(string str,int code)
{
if(code==16) //16位MD5加密(取32位加密的9~25字符)
{
return System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(str,"MD5").ToLower().Substring(8,16) ;
}  
else//32位加密
{
return System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(str,"MD5").ToLower();
}  
}

转载于:https://www.cnblogs.com/Gsun/archive/2010/03/30/1700395.html

.NET生成常用16、32位MD5加密的两种方法相关推荐

  1. java MD5加密的两种方法总结

    MD5加密,比如数据库中密码等敏感字段需要加密存储,核对密码时先以同样的方式对用户输入的密码进行加密,再与数据库中存储的密码比较. MD5加密有很多种实现方式,此处介绍2种. 1.使用JDK自带Mes ...

  2. MD5加密的两种方法

    一.加密后的密文中英文字母为大写 /*** 加签* @param plain 原串* @param charset 字符集编码* @return*/public static String sign( ...

  3. java md5 32位加密算法_java 32位md5加密类

    下面是编程之家 jb51.cc 通过网络收集整理的代码片段. 编程之家小编现在分享给大家,也给大家做个参考. import java.security.MessageDigest; import ja ...

  4. 32位MD5加密 可用来微信加密

    /// <summary>/// 32位MD5加密/// </summary>/// <param name="input"></para ...

  5. [转]DES加密 java与.net可以相互加密解密两种方法

    [转]原文地址:http://jumpman.javaeye.com/blog/605996 DES加密 java与.net可以相互加密解密两种方法 文章分类:Java编程 通过这个方法可以实现jav ...

  6. Java代码实现MD5加密的两种方式

    MD5的全称是Message-Digest Algorithm 5 (信息-摘要算法),在90年代初,由MIT Laboratory for Computer Scientce 和RSA Data S ...

  7. jquery生成二维码怎么添加图片(两种方法)

    github项目地址: https://github.com/fengliting/erweima 注意:这里实现的是第一个方法 自动生成二维码里面添加图片,有两种方法,一种是使用jquery原生的二 ...

  8. 生成 8 / 16 / 32 位的UUID

    import java.util.UUID;public class TestUUID {// 得到16位的UUID-(数字)public static String getUUID_16() {in ...

  9. 32位MD5加密java实现工具类

    import sun.security.provider.MD5;import java.io.IOException; import java.math.BigInteger; import jav ...

最新文章

  1. matlab中转置和裁剪,对Matlab中共轭、转置和共轭装置的区别说明
  2. c#中用鼠标点击事件实现抠图
  3. git clone报错:Permission denied (publickey). fatal: Could not read from remote repository...
  4. python 验证码图片 模拟登录_Python 模拟生成动态产生验证码图片的方法
  5. 刷题总结——树的同构(bzoj4337 树上hash)
  6. 泥鳅般的const(一个小Demo彻底搞清楚)
  7. 301永久重定向实现方式及302重定向(侧重.htaccess)
  8. 「あるいは」 「もしくは」 「または」 「それとも」的区别
  9. js图片绘制框架 (折线图、柱状图、饼图、热力图) echarts
  10. 在哪里可以找到计算机病毒的源码,计算机病毒源代码怎么样
  11. 动态EXCEL数据透视表
  12. 互联网金融风控模型大全
  13. 广东金融学院大学计算机基础,好投顾网使用说明广东金融学院专用).doc
  14. 题目汇总(ACWing)
  15. 厦门大学2018年转专业计算机,厦门大学各学院2017年接收转专业学生计划.PDF
  16. 测试岗位只有一个人的公司中,如何做好测试?
  17. Linux dd 硬盘克隆(硬盘拷贝)
  18. 用cmd进入DOS窗口的步骤
  19. 判断质数和合数的java_质数与合数知识点总结(质数和合数的知识点)
  20. 一级计算机上字处理题的替换题步骤,一级计算机练习题计算机一级计算机基础及+MS+OFFICE+应用(操作题)-试卷6...

热门文章

  1. Android ListView下拉与上拉刷新加载更多(一)
  2. jQuery源码解析(1)—— jq基础、data缓存系统
  3. Docker 简介 安装
  4. CF#574E. OpenStreetMap 题解
  5. sublime text 3 , 3143
  6. erlang csv
  7. c++ list sort方法
  8. TortoiseSVN 不显示图标
  9. jQuery -- 目录
  10. 如何成为一名优秀的web前端工程师(前端攻城师)