1. 程式人生 > >zip 偽加密 Python處理指令碼

zip 偽加密 Python處理指令碼

壓縮原始檔目錄區:
50 4B 01 02:目錄中檔案檔案頭標記(0x02014b50)
3F 00:壓縮使用的 pkware 版本
14 00:解壓檔案所需 pkware 版本
00 00:全域性方式位標記(有無加密,這個更改這裡進行偽加密,改為09 00開啟就會提示有密碼了)

08 00:壓縮方式

這個地方的標誌位叫deFlags

如果一個zip檔案被偽加密處理,可以用用winhex等16進位制編輯器來修改(010Editor可能比較方便),也可以通過指令碼處理會沒有偽加密的狀態

python處理指令碼如下:

#! python3
# coding:utf8
# author: neo
'''
zip偽加密去除指令碼
'''

import sys

def removefade(para1):
	# 讀取原zip檔案
	zipfile = open(para1,'rb')
	zipfile_content = zipfile.read().encode('hex')
	zipfile.close()

	zf_len = len(zipfile_content)

	# 查詢加密標誌位並處理
	for i in xrange(zf_len):
		comp_con = zipfile_content[i:i+8]
		if comp_con == '504b0102':
			zipfile_content = zipfile_content[:i+17] + '0' + zipfile_content[i+18:]
		if comp_con == '504b0304':
			zipfile_content = zipfile_content[:i+13] + '0' + zipfile_content[i+14:]


	# 將處理後內容寫入新檔案
	newzip = open(para1[:-4] + 'repair.zip','wb')
	newzip.write(zipfile_content.decode('hex'))
	newzip.close()
	print('Done')


if __name__ == '__main__':
	if(len(sys.argv) == 1):
		print('\nusage example:')
		print(' python dzipfade.py a.zip\n')
	else:
		para = sys.argv
		removefade(para[1])



參考網址:

相關推薦

zip 加密 Python處理指令碼

壓縮原始檔目錄區: 50 4B 01 02:目錄中檔案檔案頭標記(0x02014b50) 3F 00:壓縮使用的 pkware 版本 14 00:解壓檔案所需 pkware 版本 00 00:全域性方式位標記(有無加密,這個更改這裡進行偽加密,改為09 00開啟就會提示有密碼了) 08 00:壓縮方式 這個地

墨者學院 - 密碼學加解密實訓(Zip加密)

zip格式檔案偽加密 實踐是檢驗真理的唯一標準 簡介 zip檔案是一種壓縮檔案,可進行加密,也可不加密。而偽加密是在未加密的zip檔案基礎上修改了它的壓縮原始檔目錄區裡的全域性方式位標記的位元值,使得壓縮軟體開啟它的時候識別為加密檔案,提示輸入密碼, 而在這個時候,不管

Python 處理指令碼的命令列引數

# -*- coding:utf-8 -*- import sys def test(): """ 引數列表:sys.argv 引數個數:len(sys.argv) 指令碼名: sys.argv[0] 引數1: sys.argv[1] 引數2:

密碼學加解密實訓(Zip加密)

zip格式檔案偽加密 實踐是檢驗真理的唯一標準 簡介 zip檔案是一種壓縮檔案,可進行加密,也可不加密。而偽加密是在未加密的zip檔案基礎上修改了它的壓縮原始檔目錄區裡的全域性方式位標記的位元值,使得壓縮軟體開啟它的時候識別為加密檔案,提示輸入密碼, 而在這個時候,

zip加密原理及操作

原理:一個zip檔案由三部分組成:壓縮原始檔資料區+壓縮原始檔目錄區+壓縮原始檔目錄結束標誌。 例項 壓縮原始檔資料區: 50 4B 03 04:這是標頭檔案標記(0x04034b50)  14 00:解壓檔案所需 pkware 版本  00 00:全域性方式位標記(

用3行程式碼讓Python資料處理指令碼獲得4倍提速!

Python是一門非常適合處理資料和自動化完成重複性工作的程式語言,我們在用資料訓練機器學習模型之前,通常都需要對資料進行預處理,而Python就非常適合完成這項工作,比如需要重新調整幾十萬張影象的尺寸,用Python沒問題!你幾乎總是能找到一款可以輕鬆完成資料處理工作的Python庫。 然而,

關於python指令碼完整打包釋出(包括外部傳參的批處理指令碼或shell指令碼編寫)

在python處理簡單問題的過程中常常需要對Python指令碼打包成exe的可執行程式。並且要可移植。而最常用的方法則是用pyinstaller在dos視窗下進行打包。因為常常需要對exe檔案進行傳送外部引數由此路徑會發生錯誤。此時最為簡單的方法則是用文字編輯器開啟,修改編碼方式。詳細過程如

python 利用指令碼命令壓縮加密檔案並刪除原始檔

python自身有一個比較好的包 tarfile以及zipfile都可以壓縮檔案,但是當我們需要加密壓縮檔案的時候,這兩個包無法提供,根據官方資料 zipfile的setpassword 是無法設定密碼的 ZipFile.setpassword(pwd):

修改檔案頭的加密標誌位修復加密zip檔案

首先,我們來了解一下zip的檔案頭格式: 一個zip檔案有如下三個部分組成: 1.壓縮原始檔資料區   2.壓縮原始檔目錄區   3.壓縮原始檔目錄結束標誌 (詳解連結) 這是三個頭標記,主要看第二個 壓縮原始檔資料區:50 4B 03 04:這是標頭檔案標記

簡單的加密解密處理

length stat end socket通訊 上一個 規則 alt cnblogs 字符   今天一位小朋友通過郵箱向我發送一封求助信息。 內容大致如下: 您好!之前您寫的那個C#客戶端服務器程序運行成功,但能不能加上一個加密解密的函數,老師要求客戶端/服務器模式

python處理Excel

表名 格式 xls 常用操作 問題 進行 pre work times 1,xlrd xlrd是用來從Excel中讀寫數據的,但我平常只用它進行讀操作,寫操作會遇到些問題。用xlrd進行讀取比較方便,流程和平常手動操作Excel一樣,打開工作簿(Workbook),選擇工作

Python處理微信利器——itchat

主頁 chat cnblogs 微信 tle 博客 處理 pytho 信息 接觸itchat是一個偶然,上知乎刷出一個有意思的文章。於是乎運行源碼,調錯加上查閱博客,發現itchat大有可為。 知乎鏈接:https://zhuanlan.zhihu.com/p/257829

python--處理數據

步長 四則運算 一個 step 操作數 命名 換行 變量名 對象 一、數據類型: 定義:按照python規定的格式,把數據的類型告知python; 賦值:定義好的數據,傳遞給變量的過程; 變量:數據賦值的對象,通過變量去操作數據; 變量名命名規則: 1、a-z,A-Z,數字

python處理時間戳

ber return fun 時間 timestamp class mat amp ## 代碼如下: def timestamp_datetime(value): format = ‘%Y-%m-%d %H:%M:%S‘ # value為傳入的值為時間戳

python處理fasta文件,ID和序列放在一行

TTT id號 目標 with open lac nbsp start gcc fff #!/usr/bin/python #-*- coding:utf-8 -*- "處理fasta文件,將ID號和序列放在一行" import sys with open(sys.arg

使用python處理selenium中的獲取元素屬性問題

driver assert log 使用 元素屬性 sele 處理 self. 屬性 # 獲取我的訂單元素class屬性值 at = self.driver.find_element_by_link_text(‘我的訂單‘).get_attribute(‘class‘) #

Python處理圖片縮略圖

multi ssi rect paths () directory tip 進程 filename CPU 密集型任務和 IO 密集型任務分別選擇多進程multiprocessing.Pool.map 和多線程庫multiprocessing.dummy.Pool.map

使用python處理實驗數據-yechen_pro_20171231

info 計算 pro class img 所有 數據結構 導入 之一 整體思路   1.觀察文檔結構:       - 工況之一         - 流量一28            - 測點位置=0               -測點縱斷面深度-1           

Python處理CSV,Excel,PDF和圖片

action 利用 www string 是我 num 字符 msu 樣式 使用Python處理CSV格式數據CSV數據:逗號分隔值(Comma-Separated Values,CSV,有時也稱為字符分隔值,因為分隔字符也可以不是逗號),其文件以純文本形式存儲表格數據(數