AI-generated analysisPublished automatically and not human-verified. Validated context appears in community notes below.
← Watch feed
Informational 21 Bitcoin

crypto: add generic SipHash-1-3-UJ

Public commit record

What the developer wrote

Authored by Pieter Wuille

68/100 · Adequate
crypto: add generic SipHash-1-3-UJ

Add `SipHasher13UJ`, a block-oriented implementation accepting arbitrarily mixed 64-bit normal blocks and 256-bit jumbo blocks.
For hash-table use, cryptographic hash outputs must make up all but a small bounded number of retained jumbo blocks.

The generic interface serves as the executable specification for the fixed-width overloads added next.

Co-authored-by: Lőrinc <pap.lorinc@gmail.com>
Co-authored-by: Jean-Philippe Aumasson <jeanphilippe.aumasson@gmail.com>
✓ Descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context
The short version

What changed, and why it matters

This commit adds a new, weaker variant of the SipHash algorithm inside Bitcoin Core's cryptography module. It is explicitly designed for low-security uses such as internal hash tables, not for protecting funds or network messages. The code itself appears to be a clean, intentional addition with extensive comments explaining the trade-offs. There is no indication in the commit that this fixes a vulnerability or introduces an exploitable bug.

Recommended action

Review future commits that adopt SipHasher13UJ to ensure it is only used in contexts matching its security assumptions (internal hash tables, secret keys, bounded attacker-controlled jumbo blocks). No immediate action is required for this commit alone.

Security signals we found

01

New weaker cryptographic primitive added (SipHash-1-3 vs. standard SipHash-2-4)

02

Explicit unpadded input design removes length-commitment padding

03

Jumbo 256-bit blocks increase attacker control within a single round

04

Comments restrict usage to hash-table scenarios with bounded non-hash inputs

05

No caller code or production usage shown in this commit

Risk score

Why this scored 21/100

Our methodology →
Potential impact 2/30
Exploitability 2/25
Stealth signal 2/15
Affected reach 3/15
Confidence 8/10
Evidence quality 4/5
Human-validated context

Community notes

Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.

No validated notes yet.

The AI analysis stands alone for now. Submit a note if you can add evidence or important context.