加密后台数据库的方法

伤痛缠绕

伤痛缠绕

2016-02-19 13:29

下面图老师小编要跟大家分享加密后台数据库的方法,简单的过程中其实暗藏玄机,还是要细心学习,喜欢还请记得收藏哦!

地球人都知道,MDB文件很不安全,破解MDB文件密码的软件层出不穷,那是否如果我们MDB作后台数据库,是不是就等于任人宰割了呢?我觉得未必是这样的。

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

我用过不少Access密码破解器,大多数都只能处理英文密码,因此我们可以针对这一特点,把MDB文件的数据库密码设置为中文的,这样就可以抵挡大部份破解器的攻击了。

一定有人会说,既然人家能写出破解英文密码的软件,一定也可以写出破解中文密码的软件。这句话一点都没错,不过我们还有第二招:更改文件头。

MDB的头16个字节保存着文件类型、版本等诸如此类的重要信息,Access靠这些信息来识别它们,如果我们改动一个或多个字节,Access就会因无法识别这些文件而打不开它们,也就达到了我们的目的:加密MDB文件。加密思路如下:

打开文件时,把正确的头文件内容写入相应的位置,我们自已的程序就可以访问它,关闭文件时把更改过的错误的头文件内容写入相应的位置。这样做有个弊端,就是程序运行时,后台文件是可以访问的,只有关闭后才加密,那么当程序运行时,别人如果知道了数据库密码,还是可以查看或导出数据的。

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

另一种做法是打开后台数据库后,马上建立一个持续到程序结束的物理连接,然后再把错误的文件头内容写入相应的位置,这样在程序运行当中,我们的前台程序是可以正常访问后台数据的,而不知道我们的加密方法的人是无法打开后台文件的。

'使后台可以正常访问
Function OpenHt(HTmdbPath As String)
Dim fh As Integer
fh = FreeFile
Open HTmdbPath For Binary Access Write As #fh
Put fh, 2, &H1
Close #fh
End Function

'使后台无法正常访问
Function CloseHt(HTmdbPath As String)
Dim fh As Integer
fh = FreeFile
Open HTmdbPath For Binary Access Write As #fh
Put fh, 2, &H0
Close #fh
End Function

'下面的都是跟后台建立物理连接的函数(必须放在模块里)
Public HTcn As Connection
Public HTrs As New ADODB.Recordset
Public HTsql As String

'建立物理连接
Function OpenStandHT()
Set HTcn = CurrentProject.Connection
'表1要改成相应的表名
HTsql = "select * from 表1"
HTrs.Open HTsql, HTcn, 3, 3, 1
End Function

'关闭物理连接的函数,如退出程序时,或需要压缩后台文件时就要关闭物理连接
Function CloseStandHT()
HTrs.Close
Set HTcn = Nothing
End Function

展开更多 50%)
分享

猜你喜欢

加密后台数据库的方法

编程语言 网络编程
加密后台数据库的方法

加密后台数据库地办法

编程语言 网络编程
加密后台数据库地办法

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

加密你的Access数据库

ASP
加密你的Access数据库

安全的Microsoft的ACCESS数据库加密方法

编程语言 网络编程
安全的Microsoft的ACCESS数据库加密方法

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

ASP后台快速调用Mysql 数据库

ASP
ASP后台快速调用Mysql 数据库

MySQL平台数据库备份方案详细说明

编程语言 网络编程
MySQL平台数据库备份方案详细说明

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

excel2010中的int函数运用

excel2010中的int函数运用

DELPHI中操作ACCESS数据库

DELPHI中操作ACCESS数据库
下拉加载更多内容 ↓