還在憂慮周五下班前,老闆吩咐要給客戶加密200個文件嗎?工作到凌晨2點,還要把當日完成的10個文件加密,讓人很發狂啊。想到一份份的文檔要挨個打開並加密,就讓人有一種想要die掉的996即視感。
周五下班前,老闆吩咐要給客戶加密200個文件嗎
福音來了,無所不能的python帶給你下面的工具:
msoffcrypto-tool(以前稱為ms-offcrypto-tool)是一個Python工具和庫,用於使用生成其託管密鑰的密碼,中間密鑰或私鑰解密加密的MS Office文件。
用於使用生成其託管密鑰的密碼,中間密鑰或私鑰解密加密的MS Office文件
首先,安裝工具。
安裝
pip install msoffcrypto-tool
例子
作為CLI命令行工具(帶密碼)
msoffcrypto-tool encrypted.docx decrypted.docx -p Passw0rd
如果命令行省略密碼參數值,則會貼心的提示密碼:
$ msoffcrypto-tool encrypted.docx decrypted.docx -p 密碼:
測試文件是否加密(退出代碼0或1):
msoffcrypto-tool document.doc –test -v
程序調用
用程序調用(這就很有想像空間了,比如有20000個文件,用程序循環搞定):
可以用for,或者循環目錄列文件後調用以下代碼或函數:
mport msoffcrypto
file = msoffcrypto.OfficeFile(open("encrypted.docx", "rb"))#這裡是加密文件名
# Use password
file.load_key(password="Passw0rd")
# Use private key
# file.load_key(private_key=open("priv.pem", "rb"))
# Use intermediate key (secretKey)
# file.load_key(secret_key=binascii.unhexlify("AE8C36E68B4BB9EA46E5544A5FDB6693875B2FDE1507CBC65C8BCF99E25C2562"))
file.decrypt(open("decrypted.docx", "wb"))
支持的加密格式:
MS-OFFCRYPTO規格
MS-OFFCRYPTO規格
- ECMA-376(敏捷加密/標準加密)
- MS-DOCX(OOXML)(Word 2007-2016)
- MS-XLSX(OOXML)(Excel 2007-2016)
- MS-PPTX(OOXML)(PowerPoint 2007-2016)
- Office二進制文檔RC4 CryptoAPI
- MS-DOC(Word 2002,2003,2004)
- MS-XLS(Excel 2002,2003,2004)(實驗性)
- MS-PPT(PowerPoint 2002,2003,2004)(部分,實驗)
- 辦公室二進制文件RC4
- MS-DOC(Word 97,98,2000)
- MS-XLS(Excel 97,98,2000)(實驗性)
- ECMA-376(可擴展加密)
- XOR混淆
其他
- Word 95加密(Word 95及之前版本)
- Excel 95加密(Excel 95及更早版本)
- PowerPoint 95加密(PowerPoint 95和之前的版本)
原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/222373.html
微信掃一掃
支付寶掃一掃