正在爲我正在進行的加密學習的自學課程進行作業(我沒有收到此課程的學分)。我需要在散列完成的大文件上逐塊計算散列值。目前我難以忍受的是如何將文件分解成這些塊?我正在使用python,我很新。將文件拆分爲塊
f = open('myfile', 'rb')
BLOCK_SIZE = 1024
m = Crypto.Hash.SHA256.new()
thisHash = ""
blocks = os.path.getsize('myfile')/BLOCK_SIZE #ignore partial last block for now
for i in Range(blocks):
b = f.read(BLOCK_SIZE)
thisHash = m.update(b.encode())
f.seek(block_size, os.SEEK_CUR)
我是否正確接近?代碼似乎運行直到m.update(b.encode())
行執行。我不知道我是否離開基地或做些什麼來完成這項工作。任何建議表示讚賞。謝謝!
(注:如你可能會注意到,這段代碼並沒有真正的時刻產生任何東西 - 我只是得到一些設立了腳手架的)
block_size在哪裏定義? – ThirdOne 2012-07-26 05:20:01