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,可能不同版本會有些差異,多找找就能看到