tft每日頭條

 > 生活

 > python 代碼如何加密

python 代碼如何加密

生活 更新时间:2024-11-20 19:28:10

還在憂慮周五下班前,老闆吩咐要給客戶加密200個文件嗎?工作到淩晨2點,還要把當日完成的10個文件加密,讓人很發狂啊。想到一份份的文檔要挨個打開并加密,就讓人有一種想要die掉的996即視感。

python 代碼如何加密(三分鐘教你python自動化加密Word)1

周五下班前,老闆吩咐要給客戶加密200個文件嗎

福音來了,無所不能的python帶給你下面的工具:

msoffcrypto-tool(以前稱為ms-offcrypto-tool)是一個Python工具和庫,用于使用生成其托管密鑰的密碼,中間密鑰或私鑰解密加密的MS Office文件。

python 代碼如何加密(三分鐘教你python自動化加密Word)2

用于使用生成其托管密鑰的密碼,中間密鑰或私鑰解密加密的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"))

支持的加密格式:

python 代碼如何加密(三分鐘教你python自動化加密Word)3

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和之前的版本)

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved