跳转到主要内容

可恢复的hashlib:CPython基于OpenSSL的hashlib标准库的可序列化接口

项目描述

Rehash是CPython hashlib标准库中的基于OpenSSL的hasher(消息摘要对象)的可恢复接口。Rehash提供了可以序列化的hasher,可以持久化和从它们的repr()中重新构成,以及以其他方式进行序列化。Rehash API的其余部分与hashlib相同。

Rehash hashers可用于在哈希大型字节流时检查点和恢复进度

import pickle, rehash
hasher = rehash.sha256(b"foo")
state = pickle.dumps(hasher)

hasher2 = pickle.loads(state)
hasher2.update(b"bar")

assert hasher2.hexdigest() == rehash.sha256(b"foobar").hexdigest()

安装

pip install rehash

应用

Rehash在您的虚拟机寿命短或可抢占的情况下非常有用,并且您正在哈希的对象非常大。例如,Rehash可以用于在AWS Lambda函数或Google Cloud Functions之间传递大对象的哈希状态,这些函数分别有15分钟和9分钟的运行时间限制。

许可证

根据 Apache License, Version 2.0 许可条款。

https://github.com/kislyuk/rehash/workflows/Python%20package/badge.svg https://codecov.io/github/kislyuk/rehash/coverage.svg?branch=master https://img.shields.io/pypi/v/rehash.svg https://img.shields.io/pypi/l/rehash.svg https://readthedocs.org/projects/rehash/badge/?version=latest

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

rehash-1.0.1.tar.gz (9.3 kB 查看哈希值)

上传时间

构建分布

rehash-1.0.1-py2.py3-none-any.whl (9.0 kB 查看哈希值)

上传时间 Python 2 Python 3