wycheproof-ecdsa-signature-malleability-bitcoin
ECDSA: Signature malleability bitcoin
Signature malleability can be a serious issue in Bitcoin. An implementation should only accept a signature s where s < n/2. If an implementation is meant for use cases that tolerate signature malleability then this implementation should not be tested with this set of test vectors.
REJECT
Your service should reject this one.
Stated as the outcome to assert against, so a suite compares with this rather than hardcoding a result and getting it backwards.
In Bitcoin exchanges, it may be used to make a double deposits or double withdrawals. Demonstrated by 1 test vector in Project Wycheproof.
Provenance
- Kind
- vulnerabilityA published weakness exists for this. Failing it is a known exploit path.
- Source
- wycheproof
- Clause
- FIPS 186-5 §6
- CVE
- none
- Weakness
- none
Test keys only. Nothing here is a statement about any particular service: the expected outcome above is what an application ought to do, not evidence that yours does.