搜档网
当前位置:搜档网 › 教你破解40位加密密码的方法

教你破解40位加密密码的方法

使用ASP加密算法加密你的数据电脑QQ(一) 2009-01-18 23:00:41 阅读93734 评论33 字号:大中小 订阅 .









首先简单介绍一下有关加密的背景。由于美国禁止几种密码算法的对外出口的加密位数(例如ssl的40位加密限制),本文将介绍一种asp能使用的简单字符加密算法,而不是那些受限制的加密算法。其实,这里介绍的加密算法对于一般的运用来说已足够 解密人麻烦一阵子的了。他的加密基础是最简单的vernum密码方法,基本原理是,需要有一个需要加密的明文和一个随机生成的解密钥匙文件。然后使用这两个文件组合起来生成密文。
(明文) 组合 (密钥) = 加密后的密文
所以本文介绍的是生成密钥的代码。我们假设我们生成的密钥为512位长的密钥,
他已足够来加密一个文本字符了。代码如下:
keygen.asp文件
<%
******************************
keygen.asp
******************************
const g_keylocation = "c:\key.txt"
const g_keylen = 512

on error resume next

call writekeytofile(keygen(g_keylen),g_keylocation)

if err <> 0 then
response.write "error generating key." & "

"
response.write err.number & "
"
response.write err.description & "
"
else
response.write "key successfully generated."
end if

sub writekeytofile(mykeystring,strfilename)
dim keyfile, fso
set fso = server.createobject("scripting.filesystemobject")
set keyfile = fso.createtextfile(strfilename, true)
keyfile.writeline(mykeystring)
keyfile.close
end sub

function keygen(ikeylength)
dim k, icount, strmykey
lowerbound = 35
upperbound = 96
randomize initialize random-number generator.
for i = 1 to ikeylength
s = 255
k = int(((upperbound - lowerbound) + 1) * rnd + lowerbound)
strmykey = strmykey & chr(k) & ""
next
keygen = strmykey
end function

%>
在iis下运行上面的keygen.asp页面。你只需要如此做一次,他将把密钥写入文件
c:\key.txt中 (如果你愿意的话,你也能把这个文件放到另外一个更加安全的地方).
然后你能打开这个key.txt文件,他将包含512个ascii码在35到96之间的字符.
并且由于是随机生成的,所以每个人的私人密钥文件key.txt将是不相同的,下面是
一个例子密钥文件:
iy/;$>=3)?^-+7m32#q]voii.q=ofmc`:p7_b;nsy`-^s.`aa=bj3m0.wf#t5lgk(=/<:+c2k/^7ai$;puome2+t8nd?w$c(j\,;631m-ld5f%%1
tf_&k2a-d-54[2p,#*ju%6`0rf3cmf0(#t07ufz=>#,+.aw_/+]dib;2dtia57tt&-)o/*f
m>h.xh5w^0y*=71+5*^`^pkj(=e/x#7a:?,s>r&t;+b#<:-*\@)x9f`_`%qa3z95.?_t#1,$2#fw
w5pbh^*<])a(s0@avd8c^q0r^t1d?(1+,ye71x+.*+u$:3xo^q].kg&0n0];[ljl?(m4s8+3jmk5]hc%^1^+k;\$wbxpa?f&5^e\d$7%*o/u[1/?8(5:1ovwv*1z-%`:k&v?x1,1ku
rd@3w0^d)下面再仔细分析一下上面的程式,我们发

现其中的lowerbound和upperbound的数值
其实就是你想使用来加密的ascii字符范围。








相关主题