VBA密码保护:它是如何工作的? 这是安全的吗? 有没有其他的select?

如果要保护VBA应用程序以制作试用(演示)版本而不暴露脚本,那么内置的密码保护有多安全? 有没有其他的select?

编辑:我在这里问Excel VBA。

您的密码安全将主要取决于所使用的办公版本。 2007年之前的所有其他Office解决scheme都可能被破解。 Office 2007需要暴力强制密码。 默认的encryption机制是128位AES。

这意味着密码的复杂性越高,越难以破解。 IE – 数字,特殊字符,混合案例等

这不是很安全,可以很容易地用工具破解。

这个video显示了它是如何完成的。

如果你真的想保护来源, 这可能是你的方式。 对于那些可能不想要链接的人来说,这是一篇关于为Excel 2007开发XLL插件的文章。Xll是一个专门用于MS Excel的DLL。

这是不安全的。 在OpenOffice中打开文档的任何人都可以立即访问代码。 开放式办公室基本上忽略任何密码保护。

OO的人有一个非常好的文档描述Excel文件格式 。 第4.18节(第114页)开始讨论如何处理保护。 奥诺里奥关于使用加载项的build议会使某个人放慢速度,但是不会阻止一个确定的黑客。

这有点像把门锁上你的房子。 它不会阻止一个有决心进入的人,但是“保持诚实的人诚实”。

与DaveParillo完全一致,即使在2010/13版本,安全性也相当差。 保护文件的唯一方法是使用真正的encryption(AES 128位)打开密码,选项“encryption文档”给出相同的结果。 所有其他人:

  • 工作簿/工作表保护:使用任何密码的15位HASH,所以你应该只尝试32768个密码(给出独特的HASH)来消除这种保护。 这是一个很好的algorithmExcel的工作表密码保护是如何工作的
  • VBA项目locking:您需要更改vbaProject.bin文件中的DBP值。 如何从VBA项目中删除密码?