当前位置: 首页 > 图文教程 > 网络编程 > ASP > 加密处理使密码更安全[CFS编码加密]

ASP
ASP语法高亮类代码
ASP实现长文章分页
上一篇,下一篇过程代码
插件下载┊垃圾引用防御补丁(每小时自动换KEY,支持静态页面)
完美解决PJ的Cookies保存时限问题!可选择记录登陆时长!
ASP,PHP与.NET伪造HTTP-REFERER方法及防止伪造REFERER方法探讨
用VB生成DLL封装ASP连接数据库的代码
利用ActiveX控件InetCtls.Inet在ASP中实现新闻小偷
验证码识别技术
另类扩展名同样执行ASP
用JAVASCRIPT帮我写个计数器
用ASP读取XML文件的具体方法与示例
很有用的学习ASP常用到的代码
VBScript中变量作用域
可以查询百度排名的asp源码放送了
可以查询google排名的asp源码
用asp实现文件浏览、上传、下载的程序
Ajax+ASP和Flash+ASP数据读取取方法有些相似的实现方法
ASP与数据库,有用的代码(转贴,摘贴)
将首页转成静态html页的asp文件

ASP 中的 加密处理使密码更安全[CFS编码加密]


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 211 ::
收藏到网摘: n/a

      你是怎么把密码储存到数据库里?是以纯文字的方式?你可知道这对安全的危险性?当攻击你网站的人能开启数据库浏览,以纯文字方式存在数据库里的密码一览无疑,基于安全上的考量,你想这样适当吗?有什么办法能够让别人看到数据库里的数据,也没办法知道储存在其中的密码? 


     以上问题你是否知道如何解决?本文要告诉你,如何将你的密码做加密处理,处理过后的密码字符串,就算是公开出来也没人猜得到原来的密码!首先我们来看看一组字符串:
27B827277C70E88DD87E3057BFBE8F


    这是将密码加密后的结果,你知道加密之前的字符串是什么吗?其实是『 test 』。不可思议吧!经过处理后的字符串,和原本的字符串全然不同,我不说你猜的到吗?如果决定密码的人不说,这密码永远都是个秘密!


    毕竟这是以原本字符串为起点开始编码,你可能会怕有人用反向工程将字符串变回原本的密码,这点你就不用担心了,这编码方式是『单向』的,无法用反向工程恢复!只要将密码加密后再存入数据库,你的密码就多了一份保障!比对密码时,就将使用者输入的密码加密后再跟数据库比对。讲了许多,现在开始告诉你如何写这段程序。


    我们用的加密方法『CFS编码加密函式库』,请于《ASP技术广场网站→档案下载→相关组件→函式库》下载其函式包含档。此为『ASP技术广场』所创造的加密法,不同于市面上其它的加密编码方法!下载回来的档案为ZIP档,请解压缩到跟你的ASP同一目录。
<!--#include file="Codefun.fun" -->
这是用来将函式包含档加入到你的ASP,请于ASP开头加上,接着就可使用其编码函式。
编码函式 CfsEncode() 的使用:
Var = CfsEncode(字符串来源)
范例:
<%Dim SourceDim Var1Source = "test"Var1 = CfsEncode(Source)Response.Write Var1%>

执行结果:
27B827277C70E88DD87E3057BFBE8F
<%
''********************************************************************************
''* *
''* CFS Encode Function *
''* *
''* Produced by ASP-Zone *
''* *
''* Main website is located at *
''* http://asp.diy.com.tw/ *
''* *
''* E-MAIL: *
''* [email protected] *
''* *
''* Use this function: *
''* <!--#include file="Codefun.fun" --> *
''* *
''* 2001/8/3 *
''* *
''********************************************************************************
''Encode Function
Function CfsEnCode(CodeStr)
Dim CodeLen
Dim CodeSpace
Dim NewCode
CodeLen = 30
CodeSpace = CodeLen - Len(CodeStr)
If Not CodeSpace < 1 Then
For cecr = 1 To CodeSpace
CodeStr = CodeStr & Chr(21)
Next
End If
NewCode = 1
Dim Been
For cecb = 1 To CodeLen
Been = CodeLen + Asc(Mid(CodeStr,cecb,1)) * cecb
NewCode = NewCode * Been
Next
CodeStr = NewCode
NewCode = Empty
For cec = 1 To Len(CodeStr)
NewCode = NewCode & CfsCode(Mid(CodeStr,cec,3))
Next
For cec = 20 To Len(NewCode) - 18 Step 2
CfsEnCode = CfsEnCode & Mid(NewCode,cec,1)
Next
End Function

Function CfsCode(Word)
For cc = 1 To Len(Word)
CfsCode = CfsCode & Asc(Mid(Word,cc,1))
Next
CfsCode = Hex(CfsCode)
End Function
%>