From e679bf14a12b51554abe812026d9699451d53f1f Mon Sep 17 00:00:00 2001 From: Chris Xiong Date: Sat, 27 Aug 2022 23:49:27 -0400 Subject: Add hash function for uncompressed signatures. --- signature.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'signature.cpp') diff --git a/signature.cpp b/signature.cpp index cd55a77..fb2e757 100644 --- a/signature.cpp +++ b/signature.cpp @@ -288,5 +288,13 @@ signature_config signature::default_cfg() size_t signature_hash::operator()(signature const& sig) const noexcept { - return compressed_vector_hash{}(sig.p->ct); + if (sig.p->compressed) + return compressed_vector_hash{}(sig.p->ct); + else + { + size_t ret = 0; + for (uint8_t &v : sig.p->uct) + ret ^= v + 0x9e3779b9 + (ret << 6) + (ret >> 2); + return ret; + } } -- cgit v1.2.3