Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[PW_SID:791822] ecc: fix incorrect derivation of compressed points #21

Open
wants to merge 4 commits into
base: workflow
Choose a base branch
from

Conversation

IWDTestBot
Copy link
Owner

The logic was inversed here and was performing a subtraction if:

  • Y was even and type == BIT0
  • Y was odd and type == BIT1

This is not correct according to the ANSI spec. IWD relied on this
API but had matching incorrect logic so things "worked" up until
a compressed point needed to be parsed from an source that
explicitly specified the type (e.g. an ASN1 DER in DPP). All other
uses (PWD/SAE) the point type was only used to force a subtraction
so since both locations used the incorrect logic the points would
compute correctly.

ell/ecc.c | 18 +++++++++++++++++-
1 file changed, 17 insertions(+), 1 deletion(-)

The logic was inversed here and was performing a subtraction if:
 - Y was even and type == BIT0
 - Y was odd and type == BIT1

This is not correct according to the ANSI spec. IWD relied on this
API but had matching incorrect logic so things "worked" up until
a compressed point needed to be parsed from an source that
explicitly specified the type (e.g. an ASN1 DER in DPP). All other
uses (PWD/SAE) the point type was only used to force a subtraction
so since both locations used the incorrect logic the points would
compute correctly.
@IWDTestBot
Copy link
Owner Author

Fetch PR
Test ID: fetch
Desc: Fetch the PR commits for this CI run
Duration: 0.00 seconds
Result: PASS

GitLint
Test ID: gitlint
Desc: Run gitlint with rule in .gitlint
Duration: 0.00 seconds
Result: SKIP

Output:

Patchwork not being used, skipping

Make Distcheck
Test ID: makedistcheck
Desc: Run distcheck to check the distribution
Duration: 75.03 seconds
Result: PASS

Build - Configure
Test ID: build
Desc: Configure the BlueZ source tree
Duration: 54.58 seconds
Result: PASS

Make Check
Test ID: makecheck
Desc: Run 'make check'
Duration: 5.88 seconds
Result: PASS

Make Check w/Valgrind
Test ID: makecheckvalgrind
Desc: Run 'make check' with Valgrind
Duration: 258.69 seconds
Result: PASS

Incremental Build with patches
Test ID: incremental_build
Desc: Incremental build per patch in the series
Duration: 0.00 seconds
Result: SKIP

Output:

Patchwork not being used, skipping

Autotest Runner
Test ID: testrunner
Desc: Runs IWD's autotest framework
Duration: 2405.14 seconds
Result: PASS

Output:

Tests testNetconfig failed, but passed after re-running

Clang Build
Test ID: clang
Desc: Build IWD using clang compiler
Duration: 253.91 seconds
Result: PASS

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants