Merge branch 'master' of /git/bitcoin-cash-spec

This commit is contained in:
1HXb9KMAtwNJqz4egi6hJx08EQgJajiBTH
2019-12-18 15:28:26 -05:00
3 changed files with 4 additions and 2 deletions
+1
View File
@@ -100,6 +100,7 @@
- thinblock
- get_xblocktx
- xblocktx
- [Node Handshake](/protocol/network/node-handshake)
- Simple Payment Verification (SPV)
- Bloom Filters
- Simple Ledger Protocol
+2 -2
View File
@@ -23,13 +23,13 @@ The P2P network has a variety of message types. All P2P messages follow a binar
### Net Magic
The `net magic` field is always `E3E1F3E8`. Any message received that does not begin with the `net magic` should be ignored.
The network identifier is used to separate blockchains and test networks. This reduces unnecessary load on peers, allowing them to rapidly ban nodes rather then forcing the peer to do a blockchain analysis before banning or disconnecting. For Bitcoin Cash main net, the `net magic` field is always `E3E1F3E8`. Any message received that does not begin with the `net magic` is invalid.
The `net magic` is designed to be unlikely to occur in normal data--the characters are rarely used upper ASCII, are not valid as UTF-8, and produce a large 32-bit integer with any alignment. `E3E1F3E8` is the ASCII string, "cash", with each byte's highest bit set.
### Command String
The `command string` is a fixed-length 12 byte ASCII string. The command string is used to determine the type of message being transmitted. Messages with unknown an unrecognized `command string` are ignored.
The `command string` is a fixed-length 12 byte ASCII string. Commands may not be longer than 12 bytes. Commands that are shorter than 12-bytes are right-padded with null bytes (`0x00`). The command string is used to determine the type of message being transmitted. Messages with an unrecognized `command string` are ignored.
The following messages are considered standard by all node implementations.
+1
View File
@@ -0,0 +1 @@
# Node Handshake