commit | b4956d363a8b14623cc81db401707679605930a3 | [log] [tgz] |
---|---|---|
author | Mike Tsao <mike@sowbug.com> | Tue Jan 16 22:40:05 2018 -0800 |
committer | Filippo Valsorda <filippo@golang.org> | Thu Mar 15 20:43:35 2018 +0000 |
tree | 098e2fc10f22b4d076f4491fcf933a262920b1fb | |
parent | 819dbedbcb6e115a459e50cbe0c274eb41317473 [diff] |
openpgp: serialize correct bitlength for generated ECC keys Rather than rounding the `type || X || Y` byte sequence to the next 8-bit boundary, packet.NewECDSAPublicKey() now rounds the X and Y coordinates individually, then adds the bitlength 3 of type 4 (compressed). For NIST P-256, this leads to a bit length of 515, rather than 520. GnuPG calculates 515 as well, and https://tools.ietf.org/html/rfc6637#section-6 explicitly states that "the exact size of the MPI payload is 515 bits for 'Curve P-256,'" so the new formula is consistent. Fixes golang/go#23460 Change-Id: I64b340d1c761bfd795a1a64dc2f7a831c8b2ff32 Reviewed-on: https://go-review.googlesource.com/87995 Reviewed-by: Adam Langley <agl@golang.org> Reviewed-by: Filippo Valsorda <filippo@golang.org> Run-TryBot: Adam Langley <agl@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
This repository holds supplementary Go cryptography libraries.
The easiest way to install is to run go get -u golang.org/x/crypto/...
. You can also manually git clone the repository to $GOPATH/src/golang.org/x/crypto
.
This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see https://golang.org/doc/contribute.html.
The main issue tracker for the crypto repository is located at https://github.com/golang/go/issues. Prefix your issue with “x/crypto:” in the subject line, so it is easy to find.
Note that contributions to the cryptography package receive additional scrutiny due to their sensitive nature. Patches may take longer than normal to receive feedback.