![]() |
Bitcoin Core 30.99.0
P2P Digital Currency
|
General SipHash-2-4 implementation. More...
#include <siphash.h>
Public Member Functions | |
| CSipHasher (uint64_t k0, uint64_t k1) | |
| Construct a SipHash calculator initialized with 128-bit key (k0, k1). More... | |
| CSipHasher & | Write (uint64_t data) |
| Hash a 64-bit integer worth of data. More... | |
| CSipHasher & | Write (std::span< const unsigned char > data) |
| Hash arbitrary bytes. More... | |
| uint64_t | Finalize () const |
| Compute the 64-bit SipHash-2-4 of the data written so far. More... | |
Private Attributes | |
| SipHashState | m_state |
| uint64_t | m_tmp {0} |
| uint8_t | m_count {0} |
| Only the low 8 bits of the input size matter. More... | |
| CSipHasher::CSipHasher | ( | uint64_t | k0, |
| uint64_t | k1 | ||
| ) |
Construct a SipHash calculator initialized with 128-bit key (k0, k1).
Definition at line 22 of file siphash.cpp.
| uint64_t CSipHasher::Finalize | ( | ) | const |
Compute the 64-bit SipHash-2-4 of the data written so far.
The object remains untouched.
Definition at line 73 of file siphash.cpp.
| CSipHasher & CSipHasher::Write | ( | std::span< const unsigned char > | data | ) |
Hash arbitrary bytes.
Definition at line 44 of file siphash.cpp.
| CSipHasher & 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 8 bytes. This function can only be used when a multiple of 8 bytes have been written so far.
Definition at line 24 of file siphash.cpp.
|
private |
|
private |