gpt4 book ai didi

python - 序列化 MD5 计算状态并稍后恢复?

转载 作者:太空狗 更新时间:2023-10-29 19:28:44 24 4
gpt4 key购买 nike

我想序列化/反序列化 md5 上下文。但我不知道如何在 Python 中做到这一点。我想做的伪代码。

import md5
# Start hash generation
m = md5.new()
m.update("Content")

# Serialize m
serialized_m = serialize(m)

# In another function/machine, deserialize m
# and continue hash generation
m2 = deserialize(serialized_m)
m2.update("More content")
m2.digest()

有用于此的 C++ 库。有用于 Python 的吗?为什么 md5 库不支持它?是否存在安全问题?谢谢。

编辑:我想这样做是因为,例如,一个 HTTP 服务器想要接受不同 HTTP 请求中的流数据。在请求之间以某种方式序列化 md5 上下文会很方便。

最佳答案

HASH 对象不可序列化:How to serialize hash objects in Python

假设您可以传递未经哈希处理的数据:

from Crypto.Hash import MD5

# generate hash
m = MD5.new()
s = "foo"
m.update(s)

# serialize m
serialized = s

# deserialize and continue hash generation
m2 = MD5.new(serialized)
if m2.hexdigest() == m.hexdigest():
print "success"
m2.update("bar")

关于python - 序列化 MD5 计算状态并稍后恢复?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12592501/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com