Skip to content

Conversation

@tarcieri
Copy link
Member

This is an alternative to #65 which scopes the "legacy" functionality specifically to what is needed to implement ECDSA.

ECDSA signing computes the r component of a signature by reducing the affine x-coordinate of an ephemeral point mod n.

This adds a ReduceAffineX trait for performing this reduction, with the goal of facilitating an ECDSA implementation which is generic over (prime order) elliptic curves.

Additionally, it adds an IsAffineYOdd trait which is useful for computing the "recovery ID" used to recover the public key which created a signature (ala point compression).

ECDSA signing computes the `r` component of a signature by reducing the
affine x-coordinate of an ephemeral point mod n.

This adds a `ReduceAffineX` trait for performing this reduction, with
the goal of facilitating an ECDSA implementation which is generic over
(prime order) elliptic curves.

Additionally, it adds an `IsAffineYOdd` trait which is useful for
computing the "recovery ID" used to recover the public key which created
a signature (ala point compression).
@codecov-commenter
Copy link

Codecov Report

Merging #67 into master will increase coverage by 0.03%.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff             @@
##           master      #67      +/-   ##
==========================================
+ Coverage   81.46%   81.50%   +0.03%     
==========================================
  Files          12       12              
  Lines        1392     1395       +3     
==========================================
+ Hits         1134     1137       +3     
  Misses        258      258              
Impacted Files Coverage Δ
k256/src/arithmetic/scalar.rs 87.67% <0.00%> (+0.52%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update fd3516f...4832a05. Read the comment docs.

@tarcieri
Copy link
Member Author

I prefer RustCrypto/signatures#96 to this

@tarcieri tarcieri closed this Jul 12, 2020
@tarcieri tarcieri deleted the legacy-ecdsa-functionality branch July 12, 2020 02:40
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.

3 participants