mirror of
https://github.com/trezor/trezor-firmware.git
synced 2025-07-13 18:18:08 +00:00
14 lines
776 B
Markdown
14 lines
776 B
Markdown
# Ethereum definition binary format
|
|
|
|
Definitions are binary encoded and have a special format:
|
|
1. prefix:
|
|
1. format version of the definition (ASCII string `trzdX`, where `X` is version number, 5 bytes)
|
|
2. type of data (unsigned integer, 1 byte)
|
|
3. data version of the definition (unsigned integer, 4 bytes)
|
|
4. length of the encoded protobuf message - payload length in bytes (unsigned integer, 2 bytes)
|
|
2. payload: serialized form of protobuf message EthereumNetworkInfo or EthereumTokenInfo (N bytes)
|
|
3. suffix:
|
|
1. length of the Merkle tree proof - number of hashes in the proof (unsigned integer, 1 byte)
|
|
2. proof - individual hashes used to compute Merkle tree root hash (plain bits, N*32 bytes)
|
|
3. signed Merkle tree root hash (plain bits, 64 bytes)
|