Documentation of the node protocol?


I've been digging in the source code to try understand the node networking protocol. I've also been sniffing with Wireshark. Amazingly Wireshark has some basic decoding of Nano already!

Is there anywhere that the node protocol has been documented?

For example it has taken me a while so far, but I think I partially understand node_id_handshake (message type 0x0a) which is the first thing sent to another node. The query sent is 32 bytes of random data, which is kept per peer. It's a "cookie" which I don't know what is used for exactly yet. A node would respond to that with a combined query and a response, which seems to contain an account and a signature in the response. Am I on the right track here?

If you aren't already aware of this resource it should be handy for understanding the protocol: GitHub - nanocurrency/protocol: Implementation independent content related to the Nano protocol

1 Like

Oh nice! That does help with the overview of the protocol, thanks.