Commit Graph
654 Commits
Author SHA1 Message Date
Tobias Klauser 7effd64e11 ssh/terminal: store termios copy in terminal state on Solaris
TestMakeRawState currently fails on Solaris:

  --- FAIL: TestMakeRawState (0.00s)
          terminal_test.go:334: states do not match; was &{0xc420015dd0}, expected &{0xc420015da0}

Change terminal.State to include a copy to the unix.Termios (like the
implementation for Linux and the BSDs) which also makes terminal.MakeRaw behave
as expected and lets TestMakeRawState pass.

Change-Id: I29382f83b84ff301991e1db170f32f41e144aec8
Reviewed-on: https://go-review.googlesource.com/99456
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-03-08 17:26:49 +00:00
Tobias Klauser 526a373fd7 ssh/terminal: simplify defer
Directly use unix.IoctlSetTermios and windows.SetConsoleMode instead of
wrapping them with a closure.

Change-Id: I6309253fbb6e59e029424273b48aaa608873ea17
Reviewed-on: https://go-review.googlesource.com/99455
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-03-08 17:19:52 +00:00
Mark Rushakoff 85f98707c9 argon2: fix typo and code formatting in comments
Change-Id: I31fde79e91dd2f19a688bd62ac421d564634d5b3
GitHub-Last-Rev: caab01d6611a39e8aeb49b3de3c3abcdc759efaa
GitHub-Pull-Request: golang/crypto#33
Reviewed-on: https://go-review.googlesource.com/97798
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-03-06 22:39:34 +00:00
Jake Burkhead 0b6b69c7d2 acme/autocert: return error from cachePut
Fixes https://github.com/golang/go/issues/23569

Change-Id: I0f3ffab74acd2b69da0bbec2e0e90e42c2618071
GitHub-Last-Rev: e66a888d643dacc290ef58649dcc248d1925219e
GitHub-Pull-Request: golang/crypto#35
Reviewed-on: https://go-review.googlesource.com/98756
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-03-06 22:18:58 +00:00
Alex Vaghin 91a49db82a acme: stop polling authz on 4xx client errors
"At Let's Encrypt, we are seeing clients in the wild that continue
polling their challenges long after those challenges have expired and
started serving 404."

The 4xx response code errors are client errors and should not be
retried.

Fixes golang/go#24145

Change-Id: I012c584fc4defd3a0d64a653860c35705c5c6653
Reviewed-on: https://go-review.googlesource.com/97695
Run-TryBot: Alex Vaghin <ddos@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-02-28 16:13:26 +00:00
Han-Wen Nienhuys 8c653846df ssh: document how to unmarshal public keys
Fixes golang/go#21491.

Change-Id: I5c720f1f6c6acfa7f4cd50920f65db7e57ba3792
Reviewed-on: https://go-review.googlesource.com/95115
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-02-27 08:58:43 +00:00
Brad Fitzpatrick beaf6a3570 ssh: fix error variable naming convention, add docs
Follow up to CL 96336

Change-Id: I038f3901919c5136273e5df051bc6e958082f830
Reviewed-on: https://go-review.googlesource.com/96415
Reviewed-by: Han-Wen Nienhuys <hanwen@google.com>
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-02-26 09:37:11 +00:00
Han-Wen Nienhuys 49796115aa ssh: use a variable rather than type for NoAuthError
Change-Id: Ib61e0bc7d953cefde0436f77fe6a610201043c85
Reviewed-on: https://go-review.googlesource.com/96336
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Spencer Tung <spencertung@google.com>
Reviewed-by: Han-Wen Nienhuys <hanwen@google.com>
2018-02-22 18:24:04 +00:00
Spencer Tung 432090b8f5 Adding a unique error when no authentication method has been passed in
yet.

Since ServerAuthError returns all errors collected during the
userAuthLoop, it will always include the generic error "no auth passed
yet" (assuming the connection fails).

Change-Id: I5f6c67f3f0762b023618178d4028600d2b6c9253
Reviewed-on: https://go-review.googlesource.com/92737
Reviewed-by: Han-Wen Nienhuys <hanwen@google.com>
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-02-19 16:34:59 +00:00
Damien Tournoud 650f4a345a openpgp: allow NewEntity to specify the default cipher
The openpgp package promotes bad defaults by not setting the
preferred cipher and hash of new entities created by
`openpgp.NewEntity`.

The preferred hash can be set by passing a `packet.Config`
with a `DefaultHash` set, but the same cannot be done for
the preferred cipher.

This change copies the DefaultCipher into the self-signature, similar to
DefaultHash.

Change-Id: I80e1289d67b7cd4079be8c1d5ba603a555dbe5c1
Reviewed-on: https://go-review.googlesource.com/66430
Run-TryBot: Adam Langley <agl@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Adam Langley <agl@golang.org>
2018-02-14 00:00:28 +00:00
Yaron de Leeuw 3a6c3ce65c openpgp: correct NewEntity name creation
Confusingly, `Identity.Name` should actually refer to `uid.Id` and not
`uid.Name`. This fixes the code in NewEntity, and creates a test case to
verify.

Change-Id: Id46de876fc7b0359faecfeb9b09a8e454710d485
Reviewed-on: https://go-review.googlesource.com/92595
Reviewed-by: Adam Langley <agl@golang.org>
2018-02-13 22:19:55 +00:00
Ingo Gottwald 9de5f2eaf7 acme/autocert: Remove unused retryAfter func
Change-Id: I607d3d2c28aa5a125bddc3fea4f9508942bc1365
Reviewed-on: https://go-review.googlesource.com/93315
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-02-11 21:16:03 +00:00
Han-Wen Nienhuys 5119cf507e ssh: clarify how to parse out Certificates
Fixes golang/go#22046

Change-Id: I9a9aff37ba0fd0ca1f5fa1a212c66b812f6b9f70
Reviewed-on: https://go-review.googlesource.com/88895
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-02-08 17:09:33 +00:00
Han-Wen Nienhuys dea6ea3747 ssh: compile multi_auth_test.go on linux only
LD_PRELOAD doesn't work on Windows, and needs tweaking for Darwin.

Change-Id: Ib153b9e63a0a8bcfefa6387f7910292585452c71
Reviewed-on: https://go-review.googlesource.com/92775
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Reviewed-by: Han-Wen Nienhuys <hanwen@google.com>
2018-02-08 16:53:22 +00:00
Sami Pönkänen 9334d73e5f ssh: fix support for partial success authentication responses in client
The existing client side authentication does not handle correctly
the partial success flag in SSH_MSG_USERAUTH_FAILURE authentication
responses.

This commit fixes two problems in ssh library:
1) RetryableAuthMethod() now breaks out from the retry loop and
   returns  when underlying auth method fails with partial success
   set to true.
2) Book keeping of tried (and failed) auth methods in
   clientAuthenticate() does not mark an auth method failed if it
   fails with partial success set to true.

Fixes golang/go#23461

Change-Id: Ib2e1a1d54bfe2549496199bb2f66ebbce58d130d
Reviewed-on: https://go-review.googlesource.com/88035
Reviewed-by: Han-Wen Nienhuys <hanwen@google.com>
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
2018-02-08 15:07:01 +00:00
Andreas Auernhammer d9133f5469 argon2: add Argon2id and update parameter recommendations
This change exports the Argon2 variant Argon2id and improves documenation.
The following parameter recommendations are added:
 - Argon2i:
   time=3 and max. memory for non-interactive scenarios as recommended by the
   RFC draft https://tools.ietf.org/html/draft-irtf-cfrg-argon2-03#section-9.3
 - Argon2id:
   time=2 and memory=64MB for interactive scenarios as used by libsodium >= 1.0.9
   https://download.libsodium.org/doc/password_hashing/the_argon2i_function.html

   time=1 and max. memory for non-interactive scenarios as recommended by the
   RFC draft linked above.

Fixes golang/go#23602

Change-Id: Ia4d537e6126e5aff1243f2b5579df6bc8edb851a
Reviewed-on: https://go-review.googlesource.com/91935
Reviewed-by: Adam Langley <agl@golang.org>
Run-TryBot: Adam Langley <agl@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-02-06 19:08:13 +00:00
Sergey Lukjanov 1875d0a70c ssh/knownhosts: remove godoc about non-supported hashed hosts
Support for hashed hosts was added in:
https://go-review.googlesource.com/c/crypto/+/40532

Change-Id: Id18dd346d727c8bc94d0230588572e9c8ee2ccb0
Reviewed-on: https://go-review.googlesource.com/90355
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-01-27 21:11:04 +00:00
Yasuhiro Matsumoto 0efb9460aa ssh/terminal: use duplicate handle in ReadPassword
os.NewFile assigns finalizer to close file handle
passed into ReadPassword. But that is not expected.
Make a duplicate of original file handle, and pass
copy handle into ReadPassword instead.

Fixes golang/go#23525

Change-Id: I4d6725e9a1cc20defd1b58afc383e35a7f9ee4e9
Reviewed-on: https://go-review.googlesource.com/89395
Reviewed-by: Alex Brainman <alex.brainman@gmail.com>
Run-TryBot: Alex Brainman <alex.brainman@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-01-26 02:30:34 +00:00
Han-Wen Nienhuys 3d37316aaa ssh: return correct error on read failure
Change-Id: I6cc94ae8dbc65f394550551eaad88594d22eda42
Reviewed-on: https://go-review.googlesource.com/89095
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-01-23 09:55:55 +00:00
Han-Wen Nienhuys d94f6bc902 ssh: use io.ReadFull() for reading chacha20-poly1305 packets.
Incomplete reads leave (part of) the verification tag zeroed, leading
to a failing MAC, and this is more likely to happen with larger
packets. The test added in the previous commit should stop this from
regressing.

Reinstate chacha20-poly1305 as a default cipher and prefer it over AES
CTR flavors.

Fixes golang/go#23510

Change-Id: I7599897e59448edb7b814eebcc8226ea15b365d6
Reviewed-on: https://go-review.googlesource.com/89075
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-01-22 21:37:07 +00:00
Han-Wen Nienhuys 31469a2049 ssh: remove chacha20-poly1305 from preferredCipher list
This effectively disables the cipher.

Add a test against OpenSSH which sends larger packets through the
tested ciphers. This reproduces the problem reported in golang/go#23510

Change-Id: I4b124c690c409c6a0af2621e58a964ff55815f57
Reviewed-on: https://go-review.googlesource.com/88995
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Adam Langley <agl@golang.org>
2018-01-22 20:00:59 +00:00
Han-Wen Nienhuys 39efaea5da ssh: cleanup cipher creation logic
Change-Id: I0e6ac0a381ffa53650304f0bea2ba79c3cf1d8c2
Reviewed-on: https://go-review.googlesource.com/87196
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-01-22 08:56:10 +00:00
Han-Wen Nienhuys 1c1f1399d0 ssh: remove redundant code
The CBC cipher modes haven't been commented out for a while.

Change-Id: I819d595ecfe2d314479a6850ee146577311e34da
Reviewed-on: https://go-review.googlesource.com/87195
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-01-22 08:55:56 +00:00
Han-Wen Nienhuys 1835319e08 ssh: remove arcfour ciphers from the default preference list
OpenSSH removed these ciphers from sshd's default configuration with
release 6.7 in 2014.

Change-Id: Ia8b6d671dc8fa5d0493bf933d3b541f8ae5707a3
Reviewed-on: https://go-review.googlesource.com/86955
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Adam Langley <agl@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-01-22 08:55:39 +00:00
Alex Vaghin a660000891 argon2: add missing amd64 tags
The change fixes argon2_test build failure which currently
reads as follows when built with gccgo:

./argon2/blamka_ref.go:9:1: error: redefinition of 'processBlock'
 func processBlock(out, in1, in2 *block) {
 ^
./argon2/blamka_amd64.go:53:1: note: previous definition of 'processBlock' was here
 func processBlock(out, in1, in2 *block) {
 ^
./argon2/blamka_ref.go:13:1: error: redefinition of 'processBlockXOR'
 func processBlockXOR(out, in1, in2 *block) {
 ^
./argon2/blamka_amd64.go:57:1: note: previous definition of 'processBlockXOR' was here
 func processBlockXOR(out, in1, in2 *block) {
 ^

Change-Id: I5c1d7360a2a91a2ac27273a5c1da2a139b1537a7
Reviewed-on: https://go-review.googlesource.com/88455
Run-TryBot: Alex Vaghin <ddos@google.com>
Run-TryBot: Adam Langley <agl@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Adam Langley <agl@golang.org>
2018-01-19 16:59:57 +00:00
Han-Wen Nienhuys ee41a25c63 ssh: support chacha20-poly1305 cipher
chacha20-poly1305 is an AEAD which performs well without hardware
support. It is recommended as a replacement for the aging arcfour128
and arcfour256 ciphers.

Fixes golang/go#9489

Change-Id: I5d5a4620a435e65997f0ba7e683a34c29d9a396b
Reviewed-on: https://go-review.googlesource.com/87077
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Adam Langley <agl@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-01-19 07:46:36 +00:00
Alex Vaghin 13931e22f9 acme/autocert: support http-01 challenge type
The Manager now loops through known challenge types,
trying to fulfill one at a time until it succeeds or runs out
of supported challenges.

The provisioning of "http-01" challenges can be done
using the new Manager.HTTPHandler method.
It requires listening on unencrypted port 80.

Fixes golang/go#21890

Change-Id: I55de9501f0069a9f460fedd8b5b0a09b94f9ef05
Reviewed-on: https://go-review.googlesource.com/87201
Run-TryBot: Alex Vaghin <ddos@google.com>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-01-12 20:08:14 +00:00
Justin Gracenin 5f55bce93a ssh: fix protocol version exchange (for multi-line)
Fixes golang/go#23194

During SSH Protocol Version Exchange, a client may send metadata lines
prior to sending the SSH version string. To conform to the RFC, all SSH
implementations must support this (minimally, clients can ignore the
metadata lines).

For example, this is valid:
some-metadata
SSH-2.0-OpenSSH

The current Go implementation takes the first line it sees as
the version string (in this case, some-metadata). Then, it uses
the next line (SSH-2.0-OpenSSH) as part of key exchange, which
is guaranteed to fail.

Unfortunately, this SSH feature is used by some vendors and is part
of the official RFC: https://tools.ietf.org/html/rfc4253#section-4.2

Change-Id: I7be61700a07756353875bf43aad09a580ba533ff
Reviewed-on: https://go-review.googlesource.com/86675
Reviewed-by: Han-Wen Nienhuys <hanwen@google.com>
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-01-11 10:11:23 +00:00
Han-Wen Nienhuys b3c9a1d25c ssh: use t.Run for testing multiple ciphers/macs
Change-Id: I410cecf0269cf2a88a8868d6b88f39f9b7026b6b
Reviewed-on: https://go-review.googlesource.com/87076
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-01-10 14:51:55 +00:00
Han-Wen Nienhuys 49373064ff internal/chacha20: move up from chacha20poly1305/internal/chacha20
This exposes the chacha20 stream cipher to the entire x/crypto
package, and in particular to the SSH package, which uses separate,
unauthenticated chacha20 encryption for packet lengths.

Change-Id: I0b705482128f0657c09292370f03d08b588f7fec
Reviewed-on: https://go-review.googlesource.com/87075
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-01-10 14:51:33 +00:00
Han-Wen Nienhuys 6bd909f163 ssh: specify InsecureIgnoreHostKey in the benchmarks
Change-Id: I06813be2b44ef8e5eb38fdac2d08a0f5cd840193
Reviewed-on: https://go-review.googlesource.com/86935
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-01-10 10:03:27 +00:00
Adam Langley 0fcca4842a bn256: don't claim a 128-bit security level.
It's no longer true.

Fixes golang/go#19479

Change-Id: I85b0ce850ebde60b816924a25368208527a8e617
Reviewed-on: https://go-review.googlesource.com/79877
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2017-12-31 21:50:28 +00:00
Andreas Auernhammer 2b4b18b6aa argon2: fix incorrect key derivation if parallelism > 1
This change fixes an incorrect key derivation if the
degree of parallelism is greater than 1.

This change adds additional test vectors generated by the
https://github.com/P-H-C/phc-winner-argon2 CLI.

Fixes golang/go#23200

Change-Id: I8add8382b9e9ebbf9a70493050867c9af4ed6aa7
Reviewed-on: https://go-review.googlesource.com/85055
Reviewed-by: Adam Langley <agl@golang.org>
Run-TryBot: Adam Langley <agl@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2017-12-31 21:46:28 +00:00
Mansour Rahimi 95a4943f35 crypto/ssh: fix typo in error message in certs.go
Fixes golang/go#23266

Change-Id: I8da14425ed69c44a7b0c56b1aa0ea951fe297608
Reviewed-on: https://go-review.googlesource.com/85595
Reviewed-by: Emmanuel Odeke <emm.odeke@gmail.com>
Run-TryBot: Emmanuel Odeke <emm.odeke@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2017-12-28 08:17:15 +00:00
Andrew Ekstedt d585fd2cc9 pbkdf2: add benchmarks
Add benchmarks for PBKDF2-HMAC-SHA1 and PBKDF2-HMAC-SHA256.
This is to help measure the crypto/hmac changes in CL 27458.

Change-Id: I17ef12f3a4641ba44f7bb917a9d87a3ed7c97c67
Reviewed-on: https://go-review.googlesource.com/84380
Reviewed-by: Filippo Valsorda <hi@filippo.io>
2017-12-19 04:11:29 +00:00
Peter Moody 244f6ce1f0 ssh: accept ed25519 certs
Change-Id: I1cb0146c4b741f6d489edcf86412001ffc007f4f
Reviewed-on: https://go-review.googlesource.com/82256
Reviewed-by: Han-Wen Nienhuys <hanwen@google.com>
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2017-12-18 18:48:59 +00:00
Andreas Auernhammer 625c6a7b44 argon2: add new package implementing the Argon2 PBKDF family
This CL adds the package argon2. The argon2 package implements
the Argon2 PBKDF family (Argon2i, Argon2d, Argon2id).

Argon2 is memory-hard key derivation function and is specified
at https://github.com/P-H-C/phc-winner-argon2/blob/master/argon2-specs.pdf
It can be used to derive cryptographic keys with high entropy from low
entropy passwords.

Fixes golang/go#19896

Change-Id: I5b099682a8e3d7569ad18400cebddefc99a7e22f
Reviewed-on: https://go-review.googlesource.com/82575
Run-TryBot: Adam Langley <agl@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Adam Langley <agl@golang.org>
2017-12-18 18:31:08 +00:00
Kevin Burke 94eea52f7b all: run gofmt -s on source code
Per the description, the "-s" file issues slight simplifications to
the source code.

Change-Id: I77395d763f5eafb48653902dcedfa56b150b2d67
Reviewed-on: https://go-review.googlesource.com/80138
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2017-11-28 19:40:09 +00:00
Kevin Burke e8f229864d all: fix errors reported by vet, golint
None are "wrong" per se, but there are a lot of good suggestions and
in one case a docstring that was not present in godoc due to the
presence of an extra newline.

Changed "Id" in struct properties to "ID" in some non-exported
structs. Removed a trailing period from some error messages; I believe
the exact contents of error strings are not covered by the Go
compatibility promise.

Change-Id: I7c620582dc247396f72c52d38c909ccc0ec87b83
Reviewed-on: https://go-review.googlesource.com/80145
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2017-11-28 17:48:09 +00:00
Sam Whited 48a5a650cf crypto/ssh: only show banner once
Only show the SSH banner once, even if the client attempts
authentication with the "none" type and resets the authentication
attempts.

Change-Id: I1a7aacb50abf00233ed4d06c60808aaf51a9d7be
Reviewed-on: https://go-review.googlesource.com/78544
Run-TryBot: Sam Whited <sam@samwhited.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Han-Wen Nienhuys <hanwen@google.com>
2017-11-28 15:33:33 +00:00
Adam Langley 365904b0f3 nacl/auth: use KeySize constant consistently.
Fixes golang/go#21788

Change-Id: I9310b438ce90cd3bba48295c829d44779c9f09c5
Reviewed-on: https://go-review.googlesource.com/79875
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Reviewed-by: Kevin Burke <kev@inburke.com>
2017-11-27 23:00:03 +00:00
Yasuhiro Matsumoto b080dc9a8c ssh/terminal: handle non-ASCII characters when reading passwords
ReadPassword uses Windows ReadFile to read from console handle.
But ReadFile does not split input into UTF-8 characters, so ReadFile
only works when input is ASCII. Use os.File instead of Windows
ReadFile, because os.File reads console and parses it into UTF-8.

Fixes golang/go#22828

Change-Id: Ifeed3e8048b51f46706c28d4154a3e4b10111a3e
Reviewed-on: https://go-review.googlesource.com/79335
Reviewed-by: Alex Brainman <alex.brainman@gmail.com>
Run-TryBot: Alex Brainman <alex.brainman@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2017-11-24 09:08:02 +00:00
Tugdual Saunier 9f005a07e0 ssh: add support for banners
According to RFC 4252 section 5.4, the banner is sent between the
ssh-connection request and responding to user authentication.

Original support for server sending banner by joshua stein <jcs@jcs.org>

Fixes golang/go#19567

Change-Id: I729b3c8e5fd2c0068609d1590b61e92f40d87ea4
Reviewed-on: https://go-review.googlesource.com/71790
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Han-Wen Nienhuys <hanwen@google.com>
2017-11-13 21:34:09 +00:00
Tobias Klauser 6a293f2d4b ssh: remove unused parameter of newGCMCipher
The macKey parameter of newGCMCipher is not used inside the function.
Remove it and adjust the only caller accordingly.

Change-Id: Ieb9c70d7f51825d734fdeedbc8962f0178fc0131
Reviewed-on: https://go-review.googlesource.com/65890
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Han-Wen Nienhuys <hanwen@google.com>
2017-11-08 09:18:19 +00:00
Tobias Klauser 687d4b8185 terminal/ssh: use ioctl wrappers from x/sys/unix
Use the ioctl wrapper functions from x/sys/unix instead of manually
re-implementing them.

Change-Id: I224de0c6ec7439dfd8c45c72071c947be8813d6a
Reviewed-on: https://go-review.googlesource.com/75991
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2017-11-06 16:30:40 +00:00
Tobias Klauser ca1fcd4ab4 ocsp: fix vet format string issues
Fix the following format string issues reported by go vet:

  ocsp_test.go:46: Errorf format %d has arg resp.ThisUpdate of wrong type time.Time
  ocsp_test.go:50: Errorf format %d has arg resp.NextUpdate of wrong type time.Time
  ocsp_test.go:271: Errorf format %d has arg resp.ThisUpdate of wrong type time.Time
  ocsp_test.go:275: Errorf format %d has arg resp.NextUpdate of wrong type time.Time
  ocsp_test.go:279: Errorf format %d has arg resp.RevokedAt of wrong type time.Time

Change-Id: I3b516bb216424ad1777acfc27b11dc1b2d78836a
Reviewed-on: https://go-review.googlesource.com/76130
Reviewed-by: Filippo Valsorda <hi@filippo.io>
2017-11-05 17:27:39 +00:00
Tobias Klauser 3680b74bae blake2s: fix vet format string issue
Fix the following format string issue reported by go vet:

  blake2s_test.go:188: Fatalf format %v reads arg #3, but call has only 2 args

Change-Id: I689eadb7d7310ae93acd8a8419755f2724ff41dd
Reviewed-on: https://go-review.googlesource.com/75978
Reviewed-by: Filippo Valsorda <hi@filippo.io>
2017-11-05 17:26:29 +00:00
Joe Kyo bd6f299fb3 ed25519: update document to mention RFC 8032
The EdDSA draft has been approved as RFC 8032.

Change-Id: I2c0fba98d63ea51a7bb79acef55b9847cd0fa727
Reviewed-on: https://go-review.googlesource.com/74670
Reviewed-by: Adam Langley <agl@golang.org>
2017-10-31 16:01:30 +00:00
Han-Wen Nienhuys 2509b142fb Revert "ssh: add support for banners"
This reverts commit ed5229da99.

Reason for revert: missing language tag in banner message breaks auth against other implementations.

Change-Id: I18ac5b3fe3b4693688b82ff4b0db02dab739c45b
Reviewed-on: https://go-review.googlesource.com/72381
Reviewed-by: Han-Wen Nienhuys <hanwen@google.com>
Run-TryBot: Han-Wen Nienhuys <hanwen@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2017-10-23 14:56:32 +00:00
Anmol Sethi edd5e9b087 ocsp: remove incorrect iota and update docs on CreateRequest
Change-Id: Ib347b468035d699156b6bff6c30fb653a1c5804d
Reviewed-on: https://go-review.googlesource.com/71755
Reviewed-by: Joe Tsai <thebrokentoaster@gmail.com>
2017-10-21 00:14:04 +00:00