黑基Web安全攻防班
安基网 首页 IT技术 电脑技术 查看内容

加密ACCESS数据库增加安全性

2009-10-14 17:39| 投稿: computer

摘要:   下面的过程不会提示不认识数据库,只是会提示密码错误,任何读取密码的软件都不能读出正确的密码   {------------------------------------------------...

免责声明:本站系公益性非盈利IT网站,本文由投稿者转载自互联网,文末已注明出处,其内容和图片版权归原作者所有,文中所述不代表本站观点,若有侵权或转载不当之处请从网站右下角联系我们处理。

  下面的过程不会提示不认识数据库,只是会提示密码错误,任何读取密码的软件都不能读出正确的密码   {-----------------------------------------------------------------------------   Procedure: LockupFile   Author: ysai   Date: 2003-6-25   Arguments: FileName:string;Lock:boolean=true   Result: integer   -----------------------------------------------------------------------------}   function LockupFile(FileName:string;Lock:boolean=true):integer;   //加密、解密数据库,针对 Access 2000   var   f:File;   bf:array[0..63] of Byte;   i:integer;   const   fpos=64;   flen=64;   //下面改为自己的密钥,我是用随机生成的,请改为自己的密钥   pw:array[0..63] of byte=   ($97,$A0,$0C,$A1,$06,$59,$0A,$6D,   $91,$33,$51,$57,$D4,$A3,$94,$16,   $3D,$B2,$C7,$A0,$7C,$A3,$30,$EE,   $34,$D6,$C1,$FF,$F7,$EC,$A5,$1F,   $71,$2C,$19,$69,$E3,$25,$7D,$8B,   $D3,$95,$AB,$C9,$02,$8A,$87,$44,   $9F,$C7,$D7,$7D,$BA,$69,$56,$15,   $FB,$CB,$03,$D6,$94,$A6,$BF,$F7);   begin   result:=-1;   if not FileExists(FileName) then exit;   try   AssignFile(f,Filename);   Reset(f,1);   Seek(f,fpos);   BlockRead(f,bf,flen);   //下面的代码是判断是否被加密,你可以用二进制编辑器打开MDB文件对比,   //我是用第64,65字节作为是否加密的标记,未加密与版本相关,加密后与版本和密钥相关   if lock and (bf[0]=$2B) and (bf[1]=$EE)   or not lock and (bf[0]=$BC) and (bf[1]=$4E)   or not ((bf[0]=$2B) and (bf[1]=$EE))   and not ((bf[0]=$BC) and (bf[1]=$4E)) then   begin   result:=0;   exit;   end;   for i:=0 to flen-1 do   bf[i]:=bf[i] xor pw[i mod 64];   Seek(f,fpos);   BlockWrite(f,bf,flen);   result:=1;   finally   CloseFile(f);   end;   end;   以ADO为例,把ADOConnection.Mode设为cmShareExclusive就可以以独占方式打开数据库,   任何除你程序之外的程序都不能访问数据库文件,复制也不行,但是用户用任务管理器强行   结束你的程序可以让你没加密就退出,如果要更安全,就要写另一个程序和你的主程序来互   相监视,监视程序如果能访问数据库则马上给它加密.主程序也要保证监视程序的运行.

小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里 注册账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!



免责声明:本站系公益性非盈利IT网站,本文由投稿者转载自互联网,文末已注明出处,其内容和图片版权归原作者所有,文中所述不代表本站观点,若有侵权或转载不当之处请从网站右下角联系我们处理。


鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

最新

返回顶部