Excel 2016的密码保护可以区分为几个:
- 文件密码保护(Excel中叫做工作簿保护)
- 文件打开权限密码
- 文件修改权限密码
- 工作表保护
关于各个保护密码的设置方式请查阅其他资料,我的情况是之前自己建立了一份保存有公司很多关键信息的文档,为安全起见对整份文档设置了打开权限密码、修改权限密码,对其中个别工作表又单独设置了保护密码,过了几个月忘记了其中的工作表保护密码,结果无法对那个受保护的工作表进行修改了:( 因此研究了一下如何破解密码。
研究结果是沮丧又宽慰的,沮丧是我设置的加密方式不容易破解,至少我没有找到破解方法,宽慰是认识到Office自己的保护机制还是不像传说中的那么脆弱,设置得当的话,非资深专业人士是不容易破解的。
Excel 2016格式的文档(xlsx格式)在不加密码保护的时候,将文件扩展名修改为zip后,可由Winrar等软件直接打开(参考百度相关资料)。在设置了文件密码保护后,将文件扩展名修改为zip后,WinRar打开该文件时会提示文件格式损坏,但7-Zip软件可以打开该文件,不过其内容已经是加密后的了(类似下图所示)
这种状态下的Excel文档目前没有找到破解密码的方法,百度"Excel 密码破解"得到的各种方法对这种设置了文件密码保护的文档是无效的。我的问题是忘记了文档中的某个工作表的保护密码,文档打开、修改密码还是记得的,这样我就可以先将文档保护密码取消,取消后的Excel文件就会以非加密的方式存储,这样就可以用WinRAR等软件直接打开,找到对应的Protection信息删除保存即可,有资料显示这个Protection信息在以WinRAR打开Excel文件后的xl\workbook.xml文件的workbookProtection,但我的是在xl\worksheets\sheet(x).xml中的sheetProtection,可能不同版本会有些差异,多找找就能看到