diff --git a/CHANGELOG.md b/CHANGELOG.md index ca68a0fd..41b18b33 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -43,6 +43,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) 0.50.11 - [#404](https://github.com/babylonlabs-io/babylon/pull/404) Improve adaptor signature nonce generation to match reference implementation +- [#413](https://github.com/babylonlabs-io/babylon/pull/413) Fix adaptor +signature R verification ## v1.0.0-rc3 diff --git a/crypto/schnorr-adaptor-signature/sign_utils.go b/crypto/schnorr-adaptor-signature/sign_utils.go index 6ce1d984..dd9201de 100644 --- a/crypto/schnorr-adaptor-signature/sign_utils.go +++ b/crypto/schnorr-adaptor-signature/sign_utils.go @@ -126,11 +126,9 @@ func encVerify( expRHat.ToAffine() - // fail if expected R'.y is odd - if expRHat.Y.IsOdd() { - return fmt.Errorf("expected R'.y is odd") + if R.Y.IsOdd() { + return fmt.Errorf("expected R.y is odd") } - // ensure R' is same as the expected R' = s'*G - e*P if !expRHat.X.Equals(&RHat.X) { return fmt.Errorf("expected R' = s'*G - e*P is different from the actual R'")