prysm-pulse/proto/sharding/v1/messages.proto

73 lines
1.4 KiB
Protocol Buffer
Raw Normal View History

syntax = "proto3";
package ethereum.messages.v1;
import "google/protobuf/timestamp.proto";
enum Topic {
UNKNOWN = 0;
COLLATION_BODY_REQUEST = 1;
COLLATION_BODY_RESPONSE = 2;
TRANSACTIONS = 3;
BEACON_BLOCK_HASH_ANNOUNCE = 4;
BEACON_BLOCK_REQUEST = 5;
BEACON_BLOCK_RESPONSE = 6;
}
message BeaconBlockHashAnnounce {
bytes hash = 1;
}
message BeaconBlockRequest {
bytes hash = 1;
}
message BeaconBlockResponse {
bytes parent_hash = 1;
uint64 slot_number = 2;
bytes randao_reveal = 3;
bytes attestation_bitmask = 4;
repeated uint32 attestation_aggregate_sig = 5;
repeated AggregateVote shard_aggregate_votes = 6;
bytes main_chain_ref = 7;
bytes active_state_hash = 8;
bytes crystallized_state_hash = 9;
google.protobuf.Timestamp timestamp = 10;
}
message AggregateVote {
uint32 shard_id = 1;
bytes shard_block_hash = 2;
bytes signer_bitmask = 3;
repeated uint32 aggregate_sig = 4;
}
message CollationBodyRequest {
uint64 shard_id = 1;
uint64 period = 2;
bytes chunk_root = 3;
bytes proposer_address = 4;
bytes signature = 5;
}
message CollationBodyResponse {
bytes header_hash = 1;
bytes body = 2;
}
message Transaction {
uint64 nonce = 1;
uint64 gas_price = 2;
uint64 gas_limit = 3;
bytes recipient = 4;
uint64 value = 5;
bytes input = 6;
Signature signature = 7;
}
message Signature {
uint64 v = 1;
uint64 r = 2;
uint64 s = 3;
}