Bitcoin Core
28.99.0
P2P Digital Currency
src
util
bytevectorhash.cpp
Go to the documentation of this file.
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(
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
}
bytevectorhash.h
ByteVectorHash::m_k1
uint64_t m_k1
Definition:
bytevectorhash.h:20
ByteVectorHash::m_k0
uint64_t m_k0
Definition:
bytevectorhash.h:20
ByteVectorHash::ByteVectorHash
ByteVectorHash()
Definition:
bytevectorhash.cpp:11
ByteVectorHash::operator()
size_t operator()(const std::vector< unsigned char > &input) const
Definition:
bytevectorhash.cpp:17
CSipHasher
SipHash-2-4.
Definition:
siphash.h:15
CSipHasher::Finalize
uint64_t Finalize() const
Compute the 64-bit SipHash-2-4 of the data written so far.
Definition:
siphash.cpp:77
CSipHasher::Write
CSipHasher & Write(uint64_t data)
Hash a 64-bit integer worth of data It is treated as if this was the little-endian interpretation of ...
Definition:
siphash.cpp:28
FastRandomContext
Fast randomness source.
Definition:
random.h:377
siphash.h
Generated on Wed Dec 18 2024 20:00:14 for Bitcoin Core by
1.9.4