mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-11-10 22:18:54 +01:00
refactor: use Span for SipHash::Write
Co-authored-by: MarcoFalke <*~=`'#}+{/-|&$^_@721217.xyz>
This commit is contained in:
@@ -83,21 +83,21 @@ BOOST_AUTO_TEST_CASE(siphash)
|
||||
CSipHasher hasher(0x0706050403020100ULL, 0x0F0E0D0C0B0A0908ULL);
|
||||
BOOST_CHECK_EQUAL(hasher.Finalize(), 0x726fdb47dd0e0e31ull);
|
||||
static const unsigned char t0[1] = {0};
|
||||
hasher.Write(t0, 1);
|
||||
hasher.Write(t0);
|
||||
BOOST_CHECK_EQUAL(hasher.Finalize(), 0x74f839c593dc67fdull);
|
||||
static const unsigned char t1[7] = {1,2,3,4,5,6,7};
|
||||
hasher.Write(t1, 7);
|
||||
hasher.Write(t1);
|
||||
BOOST_CHECK_EQUAL(hasher.Finalize(), 0x93f5f5799a932462ull);
|
||||
hasher.Write(0x0F0E0D0C0B0A0908ULL);
|
||||
BOOST_CHECK_EQUAL(hasher.Finalize(), 0x3f2acc7f57c29bdbull);
|
||||
static const unsigned char t2[2] = {16,17};
|
||||
hasher.Write(t2, 2);
|
||||
hasher.Write(t2);
|
||||
BOOST_CHECK_EQUAL(hasher.Finalize(), 0x4bc1b3f0968dd39cull);
|
||||
static const unsigned char t3[9] = {18,19,20,21,22,23,24,25,26};
|
||||
hasher.Write(t3, 9);
|
||||
hasher.Write(t3);
|
||||
BOOST_CHECK_EQUAL(hasher.Finalize(), 0x2f2e6163076bcfadull);
|
||||
static const unsigned char t4[5] = {27,28,29,30,31};
|
||||
hasher.Write(t4, 5);
|
||||
hasher.Write(t4);
|
||||
BOOST_CHECK_EQUAL(hasher.Finalize(), 0x7127512f72f27cceull);
|
||||
hasher.Write(0x2726252423222120ULL);
|
||||
BOOST_CHECK_EQUAL(hasher.Finalize(), 0x0e3ea96b5304a7d0ull);
|
||||
@@ -111,7 +111,7 @@ BOOST_AUTO_TEST_CASE(siphash)
|
||||
for (uint8_t x=0; x<std::size(siphash_4_2_testvec); ++x)
|
||||
{
|
||||
BOOST_CHECK_EQUAL(hasher2.Finalize(), siphash_4_2_testvec[x]);
|
||||
hasher2.Write(&x, 1);
|
||||
hasher2.Write(Span{&x, 1});
|
||||
}
|
||||
// Check test vectors from spec, eight bytes at a time
|
||||
CSipHasher hasher3(0x0706050403020100ULL, 0x0F0E0D0C0B0A0908ULL);
|
||||
@@ -140,9 +140,9 @@ BOOST_AUTO_TEST_CASE(siphash)
|
||||
uint8_t nb[4];
|
||||
WriteLE32(nb, n);
|
||||
CSipHasher sip256(k1, k2);
|
||||
sip256.Write(x.begin(), 32);
|
||||
sip256.Write(x);
|
||||
CSipHasher sip288 = sip256;
|
||||
sip288.Write(nb, 4);
|
||||
sip288.Write(nb);
|
||||
BOOST_CHECK_EQUAL(SipHashUint256(k1, k2, x), sip256.Finalize());
|
||||
BOOST_CHECK_EQUAL(SipHashUint256Extra(k1, k2, x, n), sip288.Finalize());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user