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

KarpelesLab / tss-lib / 24250596740
77%

Build:
DEFAULT BRANCH: master
Ran 10 Apr 2026 03:46PM UTC
Jobs 1
Files 110
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

10 Apr 2026 03:28PM UTC coverage: 75.558% (+0.01%) from 75.546%
24250596740

push

github

MagicalTux
fix threshold subset signing by reindexing keys against current parties

The new ecdsatss/eddsatss signing paths indexed per-party slices (Ks,
BigXj, and for ECDSA NTildej/H1j/H2j/PaillierPKs) by the current-party
index but stored them in keygen-party order. When the signing committee
was a strict subset of the keygen parties, Lagrange interpolation and
MTA lookups used wrong slots and produced signatures that did not
verify under the master pubkey. The eddsatss resharing round1Old had
the same bug against OldParties.

The deprecated ecdsa/signing package handled this with
keygen.BuildLocalSaveDataSubset inside NewLocalPartyWithKDD; the port
dropped that step.

Add (*Key).SubsetForParties on both ecdsatss.Key and eddsatss.Key that
rebuilds the per-party slices by matching ShareID against the provided
sorted party IDs. Call it transparently at the top of NewSigning in both
packages and at the top of eddsatss.Resharing.round1Old. Replace
ecdsatss.Resharing.buildSubsetKey with a call to the shared method.

Cover the fix with TestKeygenAndSignStrictSubset in both packages —
4-party ECDSA keygen with a non-contiguous 2-party signing subset and
5-party EdDSA keygen with a non-contiguous 3-party subset — verifying
the resulting signature under the master pubkey via crypto/ecdsa.Verify
and edwards25519.VerifyRS respectively.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

56 of 68 new or added lines in 6 files covered. (82.35%)

7 existing lines in 4 files now uncovered.

9722 of 12867 relevant lines covered (75.56%)

814.6 hits per line

Uncovered Changes

Lines Coverage ∆ File
2
95.65
-4.35% ecdsatss/key.go
2
74.84
-0.8% ecdsatss/resharing.go
2
82.93
-0.16% ecdsatss/signing.go
2
92.31
-7.69% eddsatss/key.go
2
78.88
-0.03% eddsatss/resharing.go
2
83.33
-0.59% eddsatss/signing.go

Coverage Regressions

Lines Coverage ∆ File
3
92.71
-2.08% ecdsa/keygen/prepare.go
2
68.29
-1.22% crypto/mta/range_proof.go
1
82.93
-0.16% ecdsatss/signing.go
1
83.33
-0.59% eddsatss/signing.go
Jobs
ID Job ID Ran Files Coverage
1 24250596740.1 10 Apr 2026 03:46PM UTC 110
75.56
GitHub Action Run
Source Files on build 24250596740
  • Tree
  • List 110
  • Changed 12
  • Source Changed 6
  • Coverage Changed 12
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #24250596740
  • 1fabdcac on github
  • Prev Build on master (#24235878752)
  • Next Build on master (#24413446242)
  • Delete
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