圖片15.png
得到16進制的以方便python處理,前面的4字節(jié)是長度 然后是標志位IDAT 然后開始是數(shù)據,直到 D9 CF A5 A8是crc32校驗位。 所以實際的數(shù)據是:
789C5D91011280400802BF04FFFF5C75294B5537738A21A27D1E49CFD17DB3937A92E7E603880A6D485100901FB0410153350DE83112EA2D51C54CE2E585B15A2FC78E8872F51C6FC1881882F93D372DEF78E665B0C36C529622A0A45588138833A170A2071DDCD18219DB8C0D465D8B6989719645ED9C11C36AE3ABDAEFCFC0ACF023E77C17C7897667
然后用python來寫zlib解壓
1
2
3
4
5
6
7
8
9
|
#! /usr/bin/env python
importzlib
importbinascii
IDAT="789C5D91011280400802BF04FFFF5C75294B5537738A21A27D1E49CFD17DB3937A92E7E603880A6D485100901FB0410153350DE83112EA2D51C54CE2E585B15A2FC78E8872F51C6FC1881882F93D372DEF78E665B0C36C529622A0A45588138833A170A2071DDCD18219DB8C0D465D8B6989719645ED9C11C36AE3ABDAEFCFC0ACF023E77C17C7897667".decode('hex')
#print IDAT
result=binascii.hexlify(zlib.decompress(IDAT))
printresult
#print result.decode('hex')
|
發(fā)現(xiàn)解出來了一些3031的字符串,30和31是hex的 0和1的編碼,再解一次hex得到一串625長度的01字符串。