编程论坛's Archiver

ae66 发表于 2006-9-9 01:55

关于登陆密码加密的问题

<P>近日在网上下载了一个固定资产管理系统的源代码(PB +  mssql)的,其中登陆时管理员代码为0000,但是密码不知道,是经过加密的,加密代码为:<BR>//口令加密<BR>// 字符串<BR>//返回值:字符串<BR>integer i,li_kllen<BR>string ls_zmkl<BR>li_kllen=len(a_ymm)<BR>for i=1 to li_kllen<BR>    ls_zmkl=ls_zmkl + char(asc(mid(a_ymm,i,1)) + i +li_kllen)<BR>next <BR>return ls_zmkl<BR><BR>那外大哥知道怎样还原密码?<BR><BR>在数据库中它的密码变为:~oACDE<BR></P>

ヤ順祺冄繎ヤ 发表于 2006-9-11 09:12

既然你代码都能看到何必来查看其密码呢?<BR><BR>你直接将其验证密码的代码给屏蔽了就OK了噻!!

开心套餐 发表于 2007-4-18 22:47

<BR>加密的方法是:把明文的每一个字符转为ASCII码,再加上相应的字符在明文中的位置,再加上明文的长度得到一个整型数据(ASCII码),再把它转成相应的字符,连接起来就是密文了。<BR>知道加密的方法,你就可以进行解密了呀。把上面的函数整理一下就OK了。<BR>//口令加密<BR>// 字符串<BR>//返回值:字符串<BR>integer i,li_kllen<BR>string ls_zmkl<BR>li_kllen=len(a_ymm)<BR>for i=1 to li_kllen<BR>    ls_zmkl=ls_zmkl + char(asc(mid(a_ymm,i,1)) + i +li_kllen)<BR>next <BR>return ls_zmkl<BR>//口令解加密<BR>// 字符串<BR>//返回值:字符串<BR>integer i,li_kllen<BR>string ls_zmkl<BR>li_kllen=len(a_ymm)<BR>for i=1 to li_kllen<BR>    ls_zmkl=ls_zmkl + char(asc(mid(a_ymm,i,1)) - i -li_kllen)<BR>next <BR>return ls_zmkl<BR><BR>通过解密得到的密码是:wg8999

竹海思语 发表于 2007-7-28 12:45

学了一招,[em31]

loverebel99 发表于 2007-8-2 00:16

[em17]受益匪浅

西风独自凉 发表于 2007-8-4 08:48

厉害[em03][em05]

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.