2011-09-26 154 views
0

嗨,我正在嘗試計算圖像的sha1哈希值。如何計算圖像的sha1哈希值

是否有任何函數可用於直接計算圖像散列?

對不起,我忘了提及..其在c + +我試圖。

+3

Java? C? PHP? Shell腳本?你有一個文件中的圖像?在記憶中? – Thilo

+0

對不起..使用c + + – SPB

回答

0

將圖像文件讀入內存,然後調用SHA1函數。 Python:

from hashlib import sha1 
h = sha1(open(image_file, 'rb').read()).hexdigest() 

這會給你圖像的SHA1,包括頭文件,註釋等等,這些文件存儲在文件中。請記住,SHA1只是將一串比特轉換爲不同的固定大小的比特串。就其而言,圖像沒有什麼神奇的。

編輯:ok,C++。獲取hashlib2plus,構建一個sha1wrapper,使用updateContext逐塊爲它提供圖像,最後爲hashIt

+0

我寧願不將整個圖像讀入內存,但如果我能幫助它。 – Thilo

+0

@Thilo:然後建立一個'sha1'對象並'更新'它。我見過的所有SHA1接口都可以處理這個問題。 –