程序员人生 网站导航

在Access 2007中保护Access密码和进行加密

栏目:access时间:2013-10-29 12:36:47

Microsoft Access 2007推出了一个用于存储Access数据库信息的新的文件格式。这个文件格式可以由任何以.ACCDB结尾的文件识别。虽然Microsoft Access2007仍然支持.MDB的文件类型,但是未来的Access将围绕.ACCDB格式来建立。

.ACCDB格式最显著的一个改变是一个新的加密方法,它是基于数据库密码的。这个改变是一个非常显著的安全改进,因为加密的ACCDB数据库是(理论上)足够强大,它们只可以使用非常强大的密码恢复才能破解。当然,如同所有的安全一样,如果许多人以同样方式来进行,那么这个风险要高得多,因为有人将得出怎样破坏这个安全。这无疑将适用于加密一个Access 2007数据库,因为使用的默认加密算法是40位密钥的RC4,它没有达到它所能达到的那么强大。在这篇文章里,将向你展示怎样使得你的密码加密数据库比标准的ACCDB加密更加安全。

这个加密是什么以及为什么它很重要

Access 2007以块――也就是页面的形式读取和写入到.ACCDB文件。这些页面的大小是固定的:4096字节。加密是发生在页面级别的,为了使事情变得简单(以及考虑性能原因),加密的页面必须也是4096字节。在ACCDB中,每个加密 的“页面”有一个唯一键,它是从一个密码哈希(它包含随机基础数据)获得的。这是非常重要的,因为现在数据库密码不再存储在这个文件中(不像之前的版本)。这个方法意味着只有强力密码恢复才有可能。

另外,默认加密只使用40位密钥,这确实使得它差一些,但是幸运的是这可以提高到128位加密。在本文中会介绍如何做到这一点。

在你开始加密之前

你可能会在读一篇关于数据库的文章时,会急于在你所使用的数据库上进行尝试。在这个例子中,请不要这么做;使用这篇文章所带的数据库,并在一个不含有任何其它数据库的文件夹下进行试验。当你准备好要对你自己的数据库添加一个密码时,请确保你有一个系统用于记住密码,例如打印和存储在一个安全的保险箱中。

使用标准40位密钥加密一个Access 2007数据库

要加密一个数据库,开始时和你进行Access 2003加密的过程是很类似的。首先你需要打开Microsoft Access,不选数据库,然后使用Open More Files选项(见图1的RHS)浏览数据库。在你选择了数据库之后,点击Open按钮旁边的向下箭头(见图1的底部)并选择Open Exclusive。

在Access 2007中保护Access密码和进行加密
图 1

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐