Are there any algorithms that you can continue hashing from a known hash digest? For example, the client upload a chunk of file to ServerA, I can get a md5
sum of the uploaded content, then the client upload the rest of the file chunk to ServerB, can I transfer the state of md5
internals to ServerB and finish the hashing?
There was a cool black magic hack based on md5 I found years ago at comp.lang.python, but it's using ctypes
for a specific version of md5.so
or _md5.dll
, so it's not quite portable code for different python interpreter versions or other programming languages. Besides, the md5
module is deprecated in python standard library since 2.5 so I need to find a more general solution.
What's more, can the state of the hashing be stored in the hex digest itself? (So I can continue hashing a stream of data with an existing hash digest, not a dirty internal hack.)
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…