Message415807
Python's blake2 implementation provides hashing, MAC (key, salt, personalization), variable length output, and tree hashing [1]. All features except for tree hashing are provided by OpenSSL 3.0.0 and newer [2]. It is unlikely that OpenSSL will get tree hashing any time soon, if all. [3]
I would like to remove our vendored copy of blake2 eventually and just rely on OpenSSL. Therefore I propose to deprecate tree hashing feature so we can drop it in Python 3.13. The tree hashing parameters are: fanout, depth, leaf_size, node_offset, node_depth, inner_size, last_node
Note: OpenSSL 3.0 might impose additional restrictions on the parameter. It might be possible that OpenSSL does not support salt and personalization (OSSL_MAC_PARAM_CUSTOM) without a MAC key.
Alternatively we could replace our copy of blake2 and depend on libb2 from https://blake2.net/. libb2 is available in Fedora.
[1] https://docs.python.org/3/library/hashlib.html#hashlib.blake2b
[2] https://www.openssl.org/docs/manmaster/man7/EVP_MAC-BLAKE2.html
[3] https://github.com/openssl/openssl/issues/980 |
|
Date |
User |
Action |
Args |
2022-03-22 19:51:17 | christian.heimes | set | recipients:
+ christian.heimes, gregory.p.smith |
2022-03-22 19:51:17 | christian.heimes | set | messageid: <1647978677.39.0.283744368692.issue47095@roundup.psfhosted.org> |
2022-03-22 19:51:17 | christian.heimes | link | issue47095 messages |
2022-03-22 19:51:17 | christian.heimes | create | |
|