Marko 5dfaa54350 rpc: define spec for RPC (#276)
* add rpc spec and support outline

* add json

* add more routes remove unneeded ones

* add rest of rpc endpoints

* add jsonrpc calls

* add more jsonrpc calls

* fix blockchain

* cleanup unused links and add links to repos

* Update spec/rpc/README.md

Co-authored-by: Callum Waters <cmwaters19@gmail.com>

* add missing param from consensus param

* Update spec/rpc/README.md

Co-authored-by: Callum Waters <cmwaters19@gmail.com>

* Update spec/rpc/README.md

Co-authored-by: Callum Waters <cmwaters19@gmail.com>

* fix cast and add doc to readme

Co-authored-by: Callum Waters <cmwaters19@gmail.com>
Co-authored-by: Marko Baricevic <markobaricevic@Fergalicious.local>
2021-04-27 09:25:32 +00:00
2021-01-28 12:10:22 +00:00
2020-11-09 11:05:26 +01:00
2021-04-23 19:52:48 +00:00
2021-04-27 09:25:32 +00:00
2021-03-17 13:51:10 +00:00

Tendermint Spec

This repository contains specifications for the Tendermint protocol.

There are currently two implementations of the Tendermint protocol, maintained by two separate-but-collaborative entities: One in Go, maintained by Interchain GmbH, and one in Rust, maintained by Informal Systems.

Data Structures

Consensus Protocol

P2P and Network Protocols

  • The Base P2P Layer: multiplex the protocols ("reactors") on authenticated and encrypted TCP connections

P2P Messages

  • Peer Exchange (PEX): gossip known peer addresses so peers can find each other
  • Block Sync: gossip blocks so peers can catch up quickly
  • Consensus: gossip votes and block parts so new blocks can be committed
  • Mempool: gossip transactions so they get included in blocks
  • Evidence: sending invalid evidence will stop the peer

ABCI

  • ABCI: Details about interactions between the application and consensus engine over ABCI

RFC

  • RFC: RFCs describe proposals to change the spec.

ProtoBuf

  • Proto: The data structures of the Tendermint protocol are located in the proto directory. These specify P2P messages that each implementation should follow to be compatible.
Description
No description provided
Readme Apache-2.0 394 MiB
Languages
Go 85.9%
TeX 7.2%
TLA 4.9%
Shell 0.6%
Python 0.5%
Other 0.8%