上一篇:使用ASP加密算法加密你的数据(二) >>
使用ASP加密算法加密你的数据(一)
首先简单介绍一下有关加密的背景。由于美国禁止几种密码算法的对外出口的
加密位数(例如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." & "<p>"
response.write err.number & "<br>"
response.write err.description & "<br>"
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;<r/8u)xfhc<sr_e$.dlg=i+@5%*+op:f_=;
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];[lj<oz6in?7n4<gt
l?(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)<og40?(vj4ewl5a5m<$a);cq36r9i]*u#q%1<y\&sa%#1<v
下面再仔细分析一下上面的程序,我们发现其中的lowerbound和upperbound的数值
其实就是你想使用来加密的ascii字符范围。
后面一篇文章中将介绍如何使用这个密钥来加密和解密一个字符串
()
下一篇:微软dvwssr.dll后门 >>
相关文章:
- · 优化MICROSOFT ACCESS提高速度
- · 网络开发之编程技巧之一(有效验证用户的登录)
- · IIS 5.0新功能
- · WINDOWS 2000搭載ASP3.0和IIS5.0
- · 如何使用 Microsoft Access 和 Active Server Pages 加密你的页面
- · IIS5 + ADO 2.5新先睹为快技术(二)
- · IIS5 + ADO 2.5新先睹为快技术(一)
- · ASP 3.0 新特色先睹为快(二)
- · ASP 3.0 新特色先睹为快(一)
- · 如何用ASP编写网站统计系统四
- · 如何用ASP编写网站统计系统三
- · 如何用ASP编写网站统计系统二
- · 如何用ASP编写网站统计系统一
- · 构建你的网站新闻自动发布系统之四
- · 构建你的网站新闻自动发布系统之三
- · 构建你的网站新闻自动发布系统之二
- · 构建你的网站新闻自动发布系统之一
- · ASP的Internet/Intranet编程常见问题
- · 一个简单聊天室的建立.(供学习参考)
- · 用ASP实现一个真正的注册页面
- · 在ASP中常见的错误80004005信息和解决办法
- · ADO存取数据时如何实现留言记录的分页显示
- · 用ASP实现网页BBS
- · 网页在线人数统计的做法
- · 聊天室实现私聊(四)
- · 聊天室实现私聊(三)
- · 聊天室实现私聊(二)
- · 聊天室实现私聊(一)
- · 用ASP实现网页保密的两种方法
- · 利用ASP规划聊天室
- · 用ASP建立站内搜索
- · ASP主件中的安全问题
- · 善用 SELECT INTO 功能
- · MySQL安全性指南(3
- · MySQL安全性指南
- · MySQL安全性指南 (1)
- · 怎样才能限制SQL Server只能让指定的机器连接
- · 使用SQL Mail收发和自动处理邮件
