Code Monkey home page Code Monkey logo

bnc-tendermint's Introduction

Tendermint

This repo is forked from tendermint. Tendermint Core is Byzantine Fault Tolerant (BFT) middleware that takes a state transition machine - written in any programming language - and securely replicates it on many machines.

For protocol details, see the specification.

Key Features

We implement several key features based on the Tendermint fork:

  1. State Sync. State sync is a way to help newly-joined users sync the latest status of the binance chain. It syncs the latest sync-able peer's status so that fullnode user (who wants to catch up with chain as soon as possible with a cost that discards all historical blocks locally) doesn't need sync from block height 0. Refer to BEP18 for more details.
  2. Hot Sync. A new block sync protocol to reduce network and CPU resources for full node. Refer to this PR for more details.
  3. Capacity improvement. Parallelization, dedicated cache, priority lock and many other program skills are applied to improvement the capacity of BNB Beacon Chain.

Security

To report a security vulnerability, see our bug bounty program

For examples of the kinds of bugs we're looking for, see SECURITY.md

Minimum requirements

Requirement Notes
Go version Go1.11.4 or higher

Install

See the install instructions

Quick Start

Contributing

Please abide by the Code of Conduct in all interactions, and the contributing guidelines when submitting code.

To learn more about the structure of the software, watch the Developer Sessions and read some Architectural Decision Records.

Learn more by reading the code and comparing it to the specification.

Resources

Tendermint Core

For details about the blockchain data structures and the p2p protocols, see the Tendermint specification.

For details on using the software, see the documentation which is also hosted at: https://tendermint.com/docs/

Tools

Benchmarking and monitoring is provided by tm-bench and tm-monitor, respectively. Their code is found here and these binaries need to be built seperately. Additional documentation is found here.

Sub-projects

  • Amino, reflection-based proto3, with interfaces
  • IAVL, Merkleized IAVL+ Tree implementation

bnc-tendermint's People

Contributors

ackratos avatar alessio avatar bradyjoestar avatar brapse avatar caffix avatar cwgoes avatar ebuchman avatar ethanfrey avatar forcodedancing avatar greg-szabo avatar jaekwon avatar liamsi avatar mappum avatar melekes avatar mossid avatar odeke-em avatar petabytestorage avatar rickyyangz avatar rigelrozanski avatar roylee17 avatar srmo avatar tac0turtle avatar thanethomson avatar tomc974 avatar unclezoro avatar valardragon avatar xla avatar yutianwu avatar zmanian avatar zramsay avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.