• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

spesmilo / electrum / 6663199702908928
65%
master: 65%

Build:
Build:
LAST BUILD BRANCH: nwc_handle_null_params
DEFAULT BRANCH: master
Ran 03 Apr 2026 02:30AM UTC
Jobs 1
Files 86
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

03 Apr 2026 02:22AM UTC coverage: 64.842% (+0.006%) from 64.836%
6663199702908928

Pull #10568

CirrusCI

SomberNight
verifier.py: fix CVE-2012-2459: reject left-sibling duplicates

Due to how the txid-commitment merkle tree used in the block headers is constructed, we need an extra check to be able to validate the *position* of a txid in a block.

I think this is low severity for us.

See https://bitcointalk.org/?topic=102395 :

> The Merkle hash implementation that Bitcoin uses to calculate the Merkle
> root in a block header is flawed in that one can easily construct multiple
> lists of hashes that map to the same Merkle root.
> For example, merkle_hash([a, b, c]) and merkle_hash([a, b, c, c]) yield
> the same result. This is because, at every iteration, the Merkle hash
> function pads its intermediate list of hashes with the last hash if the
> list is of odd length, in order to make it of even length.
>
> And so, the Merkle root function can be effectively preimaged by
> changing the input so that one of the intermediate lists is of even
> length with the last two elements equal (where originally it was
> of odd length with a last element equal to the earlier mentioned two).
> As was later noted, this extends to any input length that is
> not a power of two:
> merkle_hash([a, b, c, d, e, f]) == merkle_hash([a, b, c, d, e, f, e, f]).
> Note that to maintain the same root hash, the only flexibility that
> exists is duplication of elements.

Ported from https://github.com/Electron-Cash/Electron-Cash/commit/165146362

Co-authored-by: bitcoincashautist <80100588+A60AB5450353F40E@users.noreply.github.com>
Pull Request #10568: verifier.py: fix CVE-2012-2459: reject left-sibling duplicates

7 of 7 new or added lines in 1 file covered. (100.0%)

2 existing lines in 2 files now uncovered.

24424 of 37667 relevant lines covered (64.84%)

0.65 hits per line

Coverage Regressions

Lines Coverage ∆ File
1
67.04
-0.07% electrum/util.py
1
80.43
0.58% electrum/verifier.py
Jobs
ID Job ID Ran Files Coverage
1 6663199702908928.1 03 Apr 2026 02:30AM UTC 86
64.84
Source Files on build 6663199702908928
  • Tree
  • List 86
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Build #66631997...
  • Pull Request #10568
  • PR Base - master (#51637805...)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc