关于登陆密码加密的问题
<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> 既然你代码都能看到何必来查看其密码呢?<BR><BR>你直接将其验证密码的代码给屏蔽了就OK了噻!! <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 学了一招,[em31] [em17]受益匪浅 厉害[em03][em05]页:
[1]
