Hashing / Blake2 implementation

45 views
Skip to first unread message

Johannes Lichtenberger

unread,
Feb 23, 2020, 2:30:17 PM2/23/20
to guava-discuss
Hi,

is a Blake2 implementation planned?

I'm wondering, because I'm developing a temporal data store[1], whereas I'm optionally storing incremental rolling hashes for a tree representation, that is for JSON or XML nodes. Initially during bulk updates the hashes are built during a postorder traversal of the inserted tree combining all child hashes to build a parent hash. During updates only neighbours are taken into account to update all hashes of nodes on the ancestor path (the node-IDs of the neighbours are unique, so this should be sufficient to rule out isomorphic trees which should have another hash value).

Currently I'm storing 128Bits of a Sha256 hash for every node. The hashes can be used to detect concurrent, parallel writes in a subtree or to skip subtrees from traversal with same hashes, when doing a diffing between subtrees of two revisions.

This was a first prototype and I currently want to improve the speed and space consumption (for instance storing only a delta encoding... on disk/the flash drive or even better Byte Addressable NVM).

I think computing Blake2 hashes would also be beneficial :-)

Kind regards
Johannes

https://github.com/sirixdb/sirix

Johannes Lichtenberger

unread,
Feb 24, 2020, 5:56:41 AM2/24/20
to guava-discuss
Sorry, seems it's already Blake3...
Reply all
Reply to author
Forward
0 new messages