hashlib
インスタンスを作成しupdate()
て、その状態を何らかの方法で永続化したいと思います。後で、この状態データを使用してオブジェクトを再作成し、続行したいと思いますupdate()
。hexdigest()
最後に、データの累積実行の合計を取得したいと思います。状態の永続性は、複数の実行にわたって存続する必要があります。
例:
import hashlib
m = hashlib.sha1()
m.update('one')
m.update('two')
# somehow, persist the state of m here
#later, possibly in another process
# recreate m from the persisted state
m.update('three')
m.update('four')
print m.hexdigest()
# at this point, m.hexdigest() should be equal to hashlib.sha1().update('onetwothreefour').hextdigest()
編集:
私は2010年にPythonでこれを行うための良い方法を見つけられず、これを達成するためにCで小さなヘルパーアプリを書くことになりました。ただし、その時点では利用できなかった、または知られていない、いくつかの優れた回答が以下にあります。