dice-group / dice-hash

https://dice-group.github.io/dice-hash/
GNU Affero General Public License v3.0
2 stars 1 forks source link

Feature: Blake2xb and LtHash #40

Open liss-h opened 1 year ago

liss-h commented 1 year ago

TODOs: (some of the stuff is probably more something for you, alex)

More general:

bigerl commented 1 year ago

with gcc-12 I get:

dice-hash/include/dice/hash/blake2xb/Blake2xb.hpp:143:45: error: ‘constexpr’ static data member ‘private_tag’ must have an initializer
  143 |                 static constexpr PrivateTag private_tag;
liss-h commented 1 year ago

Thx for getting the basics set up. I managed to fix the test and example runs, but have no idea why the two failing actions are failing so would be nice if you could have a look at those two.

Btw: needed to update to gcc11 and clang11 because gcc10 and clang10 were not able to build the project anymore.

liss-h commented 1 year ago

And update on sodium: The license is ISC so copying it over would be fine. I think just copying over this folder should do it.

liss-h commented 1 year ago

So, since integrating libsodium here directly turned out to be a little more problematic than anticipated, I instead added a flag to conditionally enable libsodium support (and therefore Blake2b, Blake2Xb and LtHash).

The flag is called WITH_SODIUM, as in cmake -DWITH_SODIUM=OFF .... The default is currently ON but I can change that of course if you prefer @bigerl.

liss-h commented 1 year ago

This is ready for review now, apart from the 2 failing test cases.

liss-h commented 1 year ago

Hypothesis from @bigerl:

We can replace Blake2xb in LtHash with Blake3 in XOF mode.

TODO:

liss-h commented 10 months ago

TODO:

mcb5637 commented 1 month ago

POBR diff fails, because i fixed the files to be checked by it

liss-h commented 2 weeks ago

I think this is good to go now.

Just to be extra sure: could you try if it works as a dependency in another library?

Can confirm: does not work. Does not link the blake3 library (@mcb5637)

liss-h commented 2 weeks ago

works now ✅