diff --git a/docs/protocol.rst b/docs/protocol.rst index 3c159565..3208adfe 100644 --- a/docs/protocol.rst +++ b/docs/protocol.rst @@ -500,13 +500,54 @@ getpubkey When a node has the hash of a public key (from an address) but not the public key itself, it must send out a request for the public key. +.. list-table:: + :header-rows: 1 + :widths: auto + + * - Field Size + - Description + - Data type + - Comments + * - 20 + - ripe + - uchar[] + - The ripemd hash of the public key. This field is only included when the + address version is <= 3. + * - 32 + - tag + - uchar[] + - The tag derived from the address version, stream number, and ripe. This + field is only included when the address version is >= 4. pubkey ^^^^^^ A version 2 pubkey. This is still in use and supported by current clients but -new v2 addresses are not generated by clients. +*new* v2 addresses are not generated by clients. +.. list-table:: + :header-rows: 1 + :widths: auto + + * - Field Size + - Description + - Data type + - Comments + * - 4 + - behavior bitfield + - uint32_t + - A bitfield of optional behaviors and features that can be expected from + the node receiving the message. + * - 64 + - public signing key + - uchar[] + - The ECC public key used for signing (uncompressed format; normally + prepended with \x04 ) + * - 64 + - public encryption key + - uchar[] + - The ECC public key used for encryption (uncompressed format; normally + prepended with \x04 ) msg ^^^