隐藏数据库格式

时间:2011-12-13 16:22:44

标签: database security ms-access

我有一个应用程序,数据库在Access中。我的软件保护高度依赖于我为数据库设置的密码。如果有人获得了密码,您可以破解该应用程序。

我刚刚通过互联网找到了一个应用程序(免费软件,可轻松下载),它可以为您提供Access数据库密码。这对我来说真的很麻烦。

有什么方法可以隐藏我的数据库格式,以便安装应用程序的用户无法知道这些文件的格式是什么?

3 个答案:

答案 0 :(得分:1)

无论您使用何种数据库类型,事实都是密码将位于您的应用程序某处中。当然,需要更多的东西来挖掘它,但有很多人喜欢这样做是为了“有趣”。

这意味着,只要数据是本地数据,那么任何一半确定的黑客都可以访问它。是的,有很多网站提供了如何从已编译的二进制文件中提取秘密信息的步骤。

所以,这会让你陷入困境。只要应用程序是本地安装的,您就必须提出一个理由让他们不要打扰或者检测未经授权的使用。前者通常比后者容易。

答案 1 :(得分:-1)

模糊数据库格式的明显方法是更改​​文件扩展名,但正如我在评论中所说,依赖于混淆安全性并不是那么有效。问题是,如果你进一步模糊数据库格式,那么你就有可能使Jet数据库驱动程序无法读取它,因而无法使用。简而言之,你正在咆哮错误的树。

如果您对Access安全性没有信心,或者想方设法使用这些实用程序更难以破解密码,则需要使用其他数据库。

不确定您正在谈论哪种实用程序,但我通过快速Google搜索找到的实用程序存在一些限制,您可以利用这些限制来保护数据库不使用该工具:

  
      
  • 在Access 2000 / XP文件中,此实用程序无法恢复包含超过18个字符的密码。
  •   
  • 此实用程序仅显示主数据库密码。它无法恢复用户级密码。
  •   

您是否考虑过制作一个非常长的密码,看看您是否仍然可以使用您担心的实用程序破解它?

另外,我建议使用较新的ACCDB格式而不是MDB,因为安全性已经有所加强。

答案 2 :(得分:-1)

我建议您加密和签名/哈希,并将其放入数据库,应用程序外部的所有内容都将很容易被破坏,如果“THEM”有所收获,甚至可能会对您的应用进行反编译。