go-tuf
go-tuf copied to clipboard
Threshold signature check fails if any single signature is invalid
While this section is getting some attention: I just found that this early return will cause the threshold signature check to fail if any single signature is invalid, even if there is a threshold of valid signatures. To fix, we should replace return ErrInvalid with continue.
if err := verifier.Verify(msg, sig.Signature); err != nil {
return ErrInvalid
}
Originally posted by @ethan-lowman-dd in https://github.com/theupdateframework/go-tuf/pull/369#discussion_r961943318
Per https://github.com/theupdateframework/go-tuf/pull/369#discussion_r961945970 and https://github.com/theupdateframework/go-tuf/pull/369#discussion_r962008245 we should be careful with this fix.
We must add tests, fix broken tests, and above all else communicate the impact of this change well.
@asraa to reroute
cc @jku