2015-3-23 MD5 及tostring参数

来源:互联网 发布:淘宝拍摄衣服怎么布光 编辑:程序博客网 时间:2024/05/21 04:23
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") ; 格式:*.??

0 0
原创粉丝点击