bytevectorhash.cpp
1 // Copyright (c) 2018-present 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(FastRandomContext().rand64()), 13 m_k1(FastRandomContext().rand64()) 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 }