• ----:)欢迎访问源码网(:----
    • 首页
    • 博客
    • 学院
    • 下载
    • 论坛
    • 影视
    • 发布源码
    • RSS
    • ITPig
    • 笑话网
    • 百家姓
    • 繁體中文

源码网 - 中国第一源码门户
选择镜像:网通镜像 - 电信主站
  • 首 页
  • 新闻动态
  • 网站运营
  • 网页制作
  • WEB开发
  • 编程开发
  • 图像媒体
  • 操作系统
  • 数据库
  • 服务器
热门搜索 优化 SEO 故事 cms IIS7 MySQL 个人 AdSense 主题推广 | 文章搜索: 高级搜索
会员登录/控制面版您的位置: 学院首页 >> WEB开发 >> ASP开发 >> 安全加密 >> 详细内容
 

推荐文章

  • SQL注入天书之ASP注入漏洞全接触
 
 

热点文章

  • ASP上传漏洞防范
  • SQL注入天书之ASP注入漏洞全接触
  • 实施自动的SQL注入攻击测试
  • ASP限制IP访问的小代码
  • asp作品保护方案
  • 对网站使用ASP+ACCESS的一个忠告
  • 用ASP+SQL Server为网页建一道防火墙
  • 一段在asp中加密与解密对应的函数
  • 一段加密函数(base64)
  • 如何用asp进行base64加密
  • 一套加解密字符串的函数
  • MD5算法研究
 
 

相关文章

  • iPlanet Web Server 缓冲区溢出漏洞
  • Translate: f ,IIS 5.0 源码泄漏..
  • 最新的ASP、IIS安全漏洞
  • 堵住ASP漏洞
  • 如何用asp进行base64加密
  • ASP原码加密工具介绍
  • Win2k IIS 远程执行命令漏洞
  • 微软IIS 5.0泄漏索引目录的漏洞
  • 安全脚本程序的编写 V1.0
  • 安全脚本程序的编写 V1.0
  • global.asa+.htr暴露global.asa内容
  • ASP程序密码验证问题 (MS,缺陷)
 
 

百度搜索

 
 

小琦的原创asp数据库加密方法

  • 阅览次数:
  • 文章来源: www.xiaoqi.net
  • 原文作者: 小琦
  • 整理日期: 2006-10-03
  • 发表评论
  • 字体大小:
  • 小
  • 中
  • 大

<%
'本程序是翟振恺(小琦)原创的,现在我免费发布出来,请转用或转载时不要把版权去掉。
'本程序是针对不能用组件加密asp的用户写的,应该可以有效的保护ACCESS数据。
'www.xiaoqi.net
'QQ:22336848

if Request("mdbname")<>"" then

'------------------------取磁盘序列号----------------------------小琦
set fs=server.createObject("scripting.filesystemobject")
testDrive="G:\"
set f=fs.getdrive(testDrive)
''调用GetDrive方法,将驱动器赋予一个变量

xlh=trim(f.serialnumber) '取到磁盘序列号

'-------------------------取绑定的网站地址---------------------------小琦
myname=Request.ServerVariables("SERVER_NAME")'我绑定我的主机名

'-------------------------取二进制数据---------------------------小琦
 url=server.MapPath(".")&"\www.xiaoqi.net" '取一个exe文件或其它的文件作为提供加密的文件,为了安全,你可以把这个文件放到别人下载不到的地方。
 Set  fso=Server.CreateObject("Scripting.FileSystemObject") 
 Set  fl=fso.getfile(url) 
 flsize=fl.size 
 flName=fl.name 
 Set  objStream  =  Server.CreateObject("ADODB.Stream") 
 objStream.Open 
 objStream.Type  =  1 
 objStream.LoadFromFile url
 Password=objStream.Read'二进制数据
 Password=left(Password,4)&right(xlh,3)&myname'数据库密码用二进制数据+磁盘序列号+绑定的网站地址
 Password=left(Password,19)'ACCESS数据库密码好像最多20个字符,我用了19个
 db="xq.mdb"
 SavePath=Server.MapPath(".")
'----------------------------------------------------小琦
 Application.Contents.RemoveAll()
 
 Dim fs, Engine
 Set fs = CreateObject("Scripting.FileSystemObject")
 mdbname = Request("mdbname")
 If fs.FileExists(Server.Mappath(mdbname)) Then
  Set Engine = CreateObject("JRO.JetEngine")
'----------------------------------------------------改数据库密码 
if request("dz")=1 then 
Engine.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath(mdbname), "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password="&Password&";Data Source=" & Server.Mappath(mdbname & ".temp")
else
Engine.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password="&Password&";Data Source=" & Server.Mappath(mdbname), "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath(mdbname & ".temp")
end if
'----------------------------------------------------改数据库密码  
  fs.CopyFile Server.Mappath(mdbname & ".temp"),Server.Mappath(mdbname)
  fs.DeleteFile(Server.Mappath(mdbname & ".temp"))
  Set fs = Nothing
  Set Engine = nothing
  if request("dz")=1 then 
  Response.write "<p><font color=#FF0000>数据库加密成功!...</font>"
  Else
  Response.write "<p><font color=#FF0000>数据库解密成功!...</font>"
  end if
 
 Else  
  Set fs = Nothing
  Response.Write "<p><br><br>数据库名称或路径不正确. 压缩失败!" & vbCrLf
 End If


end if
%>

<form method="POST" action="access_bak.asp" webbot-action="--WEBBOT-SELF--">
 <p><b>加密解密码数据库</b></p>
 <p><input type="text" name="mdbname" size="20" value="测试.mdb"> 数据库名</p>
 <p><input type="radio" value="1" name="dz" checked>加密
 <input type="radio" value="2" name="dz">解密</p>
 <p><input type="submit" value="提交" name="B1"><input type="reset" value="重置" name="B2"></p>
</form>


 

下面是连接数据库方法

<b>测试数据库连接</b>
<!-- 绑定域名和数据库,绑磁盘序列号的我没做,其实也很简单 -->
<%
 db="测试.mdb"
%><!-- 下面这句是加密函数 --><%

'------------------------取磁盘序列号----------------------------小琦
set fs=server.createObject("scripting.filesystemobject")
testDrive="G:\"
set f=fs.getdrive(testDrive)
''调用GetDrive方法,将驱动器赋予一个变量

xlh=trim(f.serialnumber) '取到磁盘序列号

'-------------------------取绑定的网站地址---------------------------小琦
myname=Request.ServerVariables("SERVER_NAME")'我绑定我的主机名

'-------------------------取二进制数据---------------------------小琦
 url=server.MapPath(".")&"\www.xiaoqi.net" '取一个exe文件或其它的文件作为提供加密的文件,为了安全,你可以把这个文件放到别人下载不到的地方。
 Set  fso=Server.CreateObject("Scripting.FileSystemObject") 
 Set  fl=fso.getfile(url) 
 flsize=fl.size 
 flName=fl.name 
 Set  objStream  =  Server.CreateObject("ADODB.Stream") 
 objStream.Open 
 objStream.Type  =  1 
 objStream.LoadFromFile url
 Password=objStream.Read'二进制数据
 Password=left(Password,4)&right(xlh,3)&myname'数据库密码用二进制数据+磁盘序列号+绑定的网站地址
 Password=left(Password,19)'ACCESS数据库密码好像最多20个字符,我用了19个


%><!-- 下面是连接数据库 --><%


dim conn
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password="&Password&";Data Source=" & server.MapPath(db)

set rs = conn.execute("select * from [test] order by id desc ")

response.write rs("name")
conn.close
conn=noting
%>

上一篇:MySQL数据库的导入导出 和 Liunx的权限
下一篇:构建支持Master/Slave读写分离的数据库操作类
  • 网友评论:
  • 查看所有评论
  • 我要发表评论
您的网名:
留言主题:
你要发表的内容:

 

关于本站 | 广告联系 | 版权声明 | 网站地图 | 发布软件 | 帮助中心 | 源码论坛

Copyright © 2005-2007 CodePub.Com  程序支持:木翼  滇ICP备05005971号