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

ASP
Asp+Sql 对数据库的各种操作
ASP:6行代码实现无组件上传
ASP中几种分页显示的比较
ASP中数据库调用中常见错误的现象和解决
ASP实用技巧:强制刷新和判断文件地址
asp全站防止注入的代码
ASP如何获取客户端真实IP地址
ASP实现可显示和隐藏的树型菜单
如何用ASP获取真实IP地址
ASP与SQL数据库连接代码
拒绝攻击 万能Asp防注入代码
草根站长成长计划:跟我学新云采集入门(2)
ASP技巧:提高使用Request集合的效率
Asp用存储过程实现数据分页
做网页时常用的ASP函数
Asp编码优化技巧八则
ASP中Cache技术的应用
用ASP封IP的方法,防止固定IP垃圾留言
ASP实现一行多列显示方法实例程序
ASP实现动态添加表单内容的实例程序

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 20 ::
收藏到网摘: 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
%>