-
Notifications
You must be signed in to change notification settings - Fork 654
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
grpc node mutual auth failed when uses secp256k1 with the ECDSA algorithm #1802
Comments
If you set the environment variable |
@murgatroid99 Thanks for your clue. After set the environment variable NODE_DEBUG=tls, the following error info showed, there is no detailed handshake information.
But it is successful to mutual auth with secp256k1 by OpenSSL.Server side:
Client side:
At last, mutual auth handshake successfully with right CIPHER and both side communicate well.
Note: The parameter -curves secp256k1 -tls1_2 are key to pass auth. Question:
|
OK, that cipher is in Node's default cipher suite and Node is supposed to automatically select the correct curve by default, so that part should work. The issue might be with the |
@murgatroid99 It is failed to mutual auth with TLS 1.3 according to the issue. But I am not stop trying -)
The server and client handshake successfully with dedicated ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384'. |
That cipher is in the default cipher suite. Did you try without explicitly setting the Also, the responses on the issue you linked say that TLSv3 intentionally does not support that cipher because it is obsolete. Maybe you'd be better off just using a cipher that is still supported. |
It is OK without explicitly setting the ecdhCurve option. Server and client works well without assigning the ciphers ECDHE-ECDSA-AES256-GCM-SHA384.
The reason is secp256k1 is not recommended in TLSv3, not referenced in RFC 8446, and defined in RFC 8422. |
Problem description
I've been using a self generated RSA Certificate Authority to sign my server and clients certificates and so far grpc node mutual authentication worked fine.
Following the same why, I'm trying to use secp256k1 with the ECDSA algorithm, assmuming that the key of BTC or ETH will be used grpc authentication directly. Unfortunately I cannot get right output.
Reproduction steps
All the following contents and steps can been found from the repository
The grpc node mutual authentication is successful with RSA Certificate , but failed with secp256k1.
Environment
Additional context
No
Question
The text was updated successfully, but these errors were encountered: