天极Yesky
  • 笔记本电脑
    笔记本
  • 台式电脑
    台式机
  • 手机
    手机
  • 电脑硬件DIY
    DIY硬件
  • CPU
    主板
    音箱
  • 硬盘
    显卡
    键鼠
  • 内存光驱
    显示器
    机箱电源

  • 数码相机DC
    数码相机
  • MP3播放器
    MP3/MP4
  • 数码摄像机DV
    摄像机
  • 电脑外设
    外设
  • 网络
    网络
  • 服务器
    服务器
  • 数字家庭
    数字家庭
  • 群乐
    群乐
  • 产品报价 行情 商家 新闻 评测 | 软件 设计 网页 开发 安全 论坛 E时代 游戏 图片 壁纸 下载 网摘 博客 索尼专区 Vista 科技奥运
    天极网
    加密处理使密码更安全[CFS编码加密]
    作者:
    出处: pcdog.com
    责任编辑: 许琳
    [ 2005-01-11 09:48 ]


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

      以上问题你是否知道如何解决?本文要告诉你,如何将你的密码做加密处理,处理过后的密码字符串,就算是公开出来也没人猜得到原来的密码!首先我们来看看一组字符串:
    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: *
    '* thiefghost@games.com.tw *
    '* *
    '* 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
    %>

     

    笔名:
    请您注意:

     遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。

     天极网拥有管理笔名和留言的一切权利。
    相关内容