随着学习的深入,慢慢了解网站程序(比如深度学习整站程序)的爱好者,都会发现很多网站的数据库,保存密码的字段内并没有直接存储密码,而是由一长串莫名其妙的数字和字母组成,这是为什么呢?实际上这是通过MD5加密实现的密码保护。MD5的全称是Message-Digest Algorithm 5,在90年代初由MIT的计算机科学实验室和RSA Data Security Inc发明,经MD2、MD3和MD4发展而来。Message-Digest泛指字节串(Message)的Hash变换,就是把一个任意长度的字节串变换成一定长的大整数。请注意我使用了“字节串”而不是“字符串”这个词,是因为这种变换只与字节的值有关,与字符集或编码方式无关。MD5将任意长度的“字节串”变换成一个128bit的大整数,并且它是一个不可逆的字符串变换算法,换句话说就是,即使你看到源程序和算法描述,也无法将一个MD5的值变换回原始的字符串,从数学原理上说,是因为原始的字符串有无穷多个,这有点象不存在反函数的数学函数。
MD5还广泛用于加密和解密技术上,在很多网站系统中,用户的密码是以MD5值(或类似的其它算法)的方式保存的,用户Login的时候,系统是把用户输入的密码计算成MD5值,然后再去和系统中保存的MD5值进行比较。这样即使黑客得到数据库也不知道登录密码,确保了网站的安全。
在DW中是如何实现MD5密码加密,这里结合深度学习整站简述一下实现过程:
登陆页设置:
1、在添加服务器行为前,现建立相应登陆表单,如图:

2、建立服务器行为->用户身份验证->登录用户 ,如图:



3、将deep_md5.asp拷贝到相应目录下。在相应位置输入如下
'===========================================================
<!--#include file="路径/deep_md5.asp" -->
'===========================================================

3. 在登陆页适当位置找到:
'=========================================================
MM_rsUser.Source = MM_rsUser.Source & " FROM tAdmin WHERE fUserName='" & Replace(MM_valUsername,"'","''") &"' AND
fPassword='" & (Replace(Request.Form("password"),"'","''")) & "'"
'=========================================================
若为DW8自生成代码,将代码(Replace(Request.Form("password"),"'","''"))改为md5(Replace(Request.Form("password"),"'","''"))如下
:
'========================================================= MM_rsUser.Source = MM_rsUser.Source & " FROM tAdmin WHERE fUserName='" & Replace(MM_valUsername,"'","''") &"' AND
fPassword='" & md5(Replace(Request.Form("password"),"'","''")) & "'"
'=========================================================
修改密码
1. 将deep_md5.asp拷贝到相应目录下
2. 在相应位置输入如下
'=========================================================
<!--#include file="路径/deep_md5.asp" -->
'=========================================================
3.在更新页找到:
'=========================================================
' set the form values
For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2
MM_fields(MM_i+1) = CStr(Request.Form(MM_fields(MM_i)))
Next
'=========================================================
4.将代码CStr(Request.Form(MM_fields(MM_i)))改为CStr(md5(Request.Form(MM_fields(MM_i)))),如下:
'========================================================
' set the form values
For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2
MM_fields(MM_i+1) = CStr(md5(Request.Form(MM_fields(MM_i))))
Next
'========================================================

联系QQ:349881211
联系QQ:349881211
·Dreamweaver 基础:了解DW的状态栏
·玩转Dreamweaver 8.0:属性检查器和文
·Photoshop结合Dreamweaver制作网页相册
·用Dreamweaver设计自动关闭的网页
·用Dreamweaver MX 2004的Flash动画元素
·用Dreamweaver MX创造网页鼠标样式
·Dreamweaver教程:创建导航条
·细品DreamweaverMX内建FW技术
·Dreamweaver MX技巧之超链接
·制作Dreamweaver活动菜单条
·DreamweaverMX 2004打造细线表格
·DW使用中的常见问题与解答
·Dreamweaver网页制作技巧:使用模板
·DW网页编辑常用表现的实现方法
·用Dreamweaver进行数据库操作
·在网页中插入Flv视频文件
·Dreamweaver制作网页实用七招
·用DW文件库更新网站
·用Dreamweaver设计限时自动关闭的网页
·DW8中设置段落格式
·教你用Dreamweaver制作细边表格
·DW8-在动态页中插入XSL片断显示远程XML


