首页 > 其他 > 详细

2015-3-23 MD5

时间:2015-03-25 00:33:17      阅读:411      评论:0      收藏:0      [点我收藏+]

MD5加密是用于储存用户密码在数据库时所用的一种加密技术,防止数据在被攻破的时候,数据库中密码字段因明文存储所导致的信息泄露。

 

(还有我自己的一点点理解是也有助于防止SQL注入式的BUG,就是在密码输入框输入类型 or 1=1 所谓的万能密码)
MD5在.NET中是一个 抽象类  无法用new的方法创建对象,但是有create的方法创建。
技术分享
110行创建了一个MD5对象
113行将传入的密码转换成字节数组 可以是要存入数据库的密码,也可以是输入的密码。
115行通过调用 ComputeHash方法 可以将字节数组转化成MD5加密后的字节数组
118-124 通过一个循环,将加密后的字节数组转成string类型 并返还。
注意 117行的那种写发 返还的值是不对的
 
因为将一个字节数组转成字符串理论上有3种方式
1  就是117行的方式 将每一个元素按照指定的格式解析字符串
2 直接将数组tostring
3将数组中每个元素tostring
 
1和3 的区别在于
例如 a 的ASCII码是97
如果字节数组是 97979797  按照1的方式 拿到的值就是aaaa
但是按照3的方式就是 97979797
 
而MD5加密 要的就是加密后最原始的字符 所以 用第3种方式
 
还有就是122行的 .toString("x2")  是一种字符显示格式的规范
 
ToString()可空参数单独使用,同时可以加一个格式化参数,具体方式如下:

1. 取中文日期显示_年月 currentTime.ToString("y"); 格式:2007年1月

2. 取中文日期显示_月日 currentTime.ToString("m"); 格式:1月30日

3. 取日期显示_年月日 currentTime.ToString("d"); 格式:2007-1-30

4. 取日期显示_时分 currentTime.ToString("t"); 格式:15:35

5. Int32.Parse(变量) Int32.Parse("常量") 字符型转换 转为32位数字型

6. 变量.ToString() 字符型转换 转为字符串
12345.ToString("n"); //生成 12,345.00
12345.ToString("C"); //生成 ¥12,345.00
12345.ToString("e"); //生成 1.234500e+004
12345.ToString("f4"); //生成 12345.0000
12345.ToString("x"); //生成 3039

7. 变量.ToString("yyyyMMdd") ; 格式:20070101

8.变量.ToString(".00") ; 格式:*.??

 

2015-3-23 MD5

原文:http://www.cnblogs.com/stelva/p/4364412.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!