bytevectorhash.cpp
1 // Copyright (c) 2018-2022 The Bitcoin Core developers 2 // Distributed under the MIT software license, see the accompanying 3 // file COPYING or http://www.opensource.org/licenses/mit-license.php. 4 5 #include <crypto/siphash.h> 6 #include <random.h> 7 #include <util/bytevectorhash.h> 8 9 #include <vector> 10 11 ByteVectorHash::ByteVectorHash() : 12 m_k0(GetRand<uint64_t>()), 13 m_k1(GetRand<uint64_t>()) 14 { 15 } 16 17 size_t ByteVectorHash::operator()(const std::vector<unsigned char>& input) const 18 { 19 return CSipHasher(m_k0, m_k1).Write(input).Finalize(); 20 }