Skip to content
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

Asymetrical handshake based on connection direction #6038

Open
niklaslong opened this issue Jul 1, 2022 · 1 comment
Open

Asymetrical handshake based on connection direction #6038

niklaslong opened this issue Jul 1, 2022 · 1 comment

Comments

@niklaslong
Copy link

niklaslong commented Jul 1, 2022

As part of our recent Ziggurat work at Equilibrium, we've retested Zcashd v4.7.0 and this was initially reported as a potential security vulnerability but was deemed safe for public disclosure.

This issue is related to #5168. The messages sent and received before the handshake is complete, differ based on the connection direction.

When the node initiates:

Ziggurat <-> Zcashd

<- version 
-> version 
<- verack
<- getaddr 
<- ping
<- getheaders 
-> verack

When the node receives the connection:

Ziggurat <-> Zcashd

-> version 
<- version 
<- verack
<- ping
<- getheaders 
-> verack

In both cases, ping and getheaders are sent by Zcashd before recieving the verack . In addition, getaddr is sent and requires a response. This makes the handshake asymmetrical and a response must be sent for any further communication to occur.

@niklaslong
Copy link
Author

Update: reconfirmed in v5.0.0.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant