]> Cypherpunks repositories - gostls13.git/commit
crypto/ecdsa: reject negative inputs.
authorAdam Langley <agl@golang.org>
Thu, 14 Apr 2016 20:52:56 +0000 (13:52 -0700)
committerRuss Cox <rsc@golang.org>
Wed, 18 May 2016 14:18:48 +0000 (14:18 +0000)
commitb30fcbc9f59ca4bf1723eb6743b47fa89b3847a3
tree9f959f8bf2679d130ceeb389513fc45070da7465
parent2ba8fc5b086942dbb23282702f61c813298867f3
crypto/ecdsa: reject negative inputs.

The fact that crypto/ecdsa.Verify didn't reject negative inputs was a
mistake on my part: I had unsigned numbers on the brain. However, it
doesn't generally cause problems. (ModInverse results in zero, which
results in x being zero, which is rejected.)

The amd64 P-256 code will crash when given a large, negative input.

This fixes both crypto/ecdsa to reject these values and also the P-256
code to ignore the sign of inputs.

Change-Id: I6370ed7ca8125e53225866f55b616a4022b818f8
Reviewed-on: https://go-review.googlesource.com/22093
Run-TryBot: Adam Langley <agl@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
src/crypto/ecdsa/ecdsa.go
src/crypto/ecdsa/ecdsa_test.go
src/crypto/elliptic/p256_amd64.go