go: crypto/elliptic: hang in doubleJacobian with Curve P-521

Please answer these questions before submitting your issue. Thanks!

What version of Go are you using (go version)?

1.10.1

Does this issue reproduce with the latest release?

Yes

What operating system and processor architecture are you using (go env)?

Windows 10. Intel

What did you do?

When running an http request to an https server that requires a P521 Curve the code hangs without throwing an error.

So, try hitting a server with a certificate that requires P521

Please look at the following within elliptical.go…

ScalarMult addJacobian doubleJacobian

The code will hang within the ScalarMult loop and it will also hang within the Jacobian processes

What did you expect to see?

We need to see a successful key exchange

What did you see instead?

No key exchange occured

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Comments: 18 (8 by maintainers)

Most upvoted comments

Closing as a duplicate of #10958

Also, would you say that “select” is the best wait-forever method in go?

Yep, select {} is the appropriate way to block a goroutine forever, but in most cases you’ll want to coordinate with a sync.Group or channel instead.