github.com/number571/tendermint@v0.34.11-gost/README.md (about) 1 # Tendermint 2 3 ![banner](docs/tendermint-core-image.jpg) 4 5 [Byzantine-Fault Tolerant](https://en.wikipedia.org/wiki/Byzantine_fault_tolerance) 6 [State Machines](https://en.wikipedia.org/wiki/State_machine_replication). 7 Or [Blockchain](<https://en.wikipedia.org/wiki/Blockchain_(database)>), for short. 8 9 [![version](https://img.shields.io/github/tag/tendermint/tendermint.svg)](https://github.com/number571/tendermint/releases/latest) 10 [![API Reference](https://camo.githubusercontent.com/915b7be44ada53c290eb157634330494ebe3e30a/68747470733a2f2f676f646f632e6f72672f6769746875622e636f6d2f676f6c616e672f6764646f3f7374617475732e737667)](https://pkg.go.dev/github.com/number571/tendermint) 11 [![Go version](https://img.shields.io/badge/go-1.16-blue.svg)](https://github.com/moovweb/gvm) 12 [![Discord chat](https://img.shields.io/discord/669268347736686612.svg)](https://discord.gg/vcExX9T) 13 [![license](https://img.shields.io/github/license/tendermint/tendermint.svg)](https://github.com/number571/tendermint/blob/master/LICENSE) 14 [![tendermint/tendermint](https://tokei.rs/b1/github/tendermint/tendermint?category=lines)](https://github.com/number571/tendermint) 15 [![Sourcegraph](https://sourcegraph.com/github.com/number571/tendermint/-/badge.svg)](https://sourcegraph.com/github.com/number571/tendermint?badge) 16 17 | Branch | Tests | Coverage | Linting | 18 |--------|--------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------| 19 | master | ![Tests](https://github.com/number571/tendermint/workflows/Tests/badge.svg?branch=master) | [![codecov](https://codecov.io/gh/tendermint/tendermint/branch/master/graph/badge.svg)](https://codecov.io/gh/tendermint/tendermint) | ![Lint](https://github.com/number571/tendermint/workflows/Lint/badge.svg) | 20 21 Tendermint Core is a Byzantine Fault Tolerant (BFT) middleware that takes a state transition machine - written in any programming language - and securely replicates it on many machines. 22 23 For protocol details, see [the specification](https://github.com/tendermint/spec). 24 25 For detailed analysis of the consensus protocol, including safety and liveness proofs, 26 see our recent paper, "[The latest gossip on BFT consensus](https://arxiv.org/abs/1807.04938)". 27 28 ## Releases 29 30 Please do not depend on master as your production branch. Use [releases](https://github.com/number571/tendermint/releases) instead. 31 32 Tendermint has been in the production of private and public environments, most notably the blockchains of the Cosmos Network. we haven't released v1.0 yet since we are making breaking changes to the protocol and the APIs. 33 See below for more details about [versioning](#versioning). 34 35 In any case, if you intend to run Tendermint in production, we're happy to help. You can 36 contact us [over email](mailto:hello@interchain.berlin) or [join the chat](https://discord.gg/vcExX9T). 37 38 ## Security 39 40 To report a security vulnerability, see our [bug bounty 41 program](https://hackerone.com/tendermint). 42 For examples of the kinds of bugs we're looking for, see [our security policy](SECURITY.md). 43 44 We also maintain a dedicated mailing list for security updates. We will only ever use this mailing list 45 to notify you of vulnerabilities and fixes in Tendermint Core. You can subscribe [here](http://eepurl.com/gZ5hQD). 46 47 ## Minimum requirements 48 49 | Requirement | Notes | 50 |-------------|------------------| 51 | Go version | Go1.16 or higher | 52 53 ## Documentation 54 55 Complete documentation can be found on the [website](https://docs.tendermint.com/master/). 56 57 ### Install 58 59 See the [install instructions](/docs/introduction/install.md). 60 61 ### Quick Start 62 63 - [Single node](/docs/introduction/quick-start.md) 64 - [Local cluster using docker-compose](/docs/networks/docker-compose.md) 65 - [Remote cluster using Terraform and Ansible](/docs/networks/terraform-and-ansible.md) 66 - [Join the Cosmos testnet](https://cosmos.network/testnet) 67 68 ## Contributing 69 70 Please abide by the [Code of Conduct](CODE_OF_CONDUCT.md) in all interactions. 71 72 Before contributing to the project, please take a look at the [contributing guidelines](CONTRIBUTING.md) 73 and the [style guide](STYLE_GUIDE.md). You may also find it helpful to read the 74 [specifications](https://github.com/tendermint/spec), watch the [Developer Sessions](/docs/DEV_SESSIONS.md), 75 and familiarize yourself with our 76 [Architectural Decision Records](https://github.com/number571/tendermint/tree/master/docs/architecture). 77 78 ## Versioning 79 80 ### Semantic Versioning 81 82 Tendermint uses [Semantic Versioning](http://semver.org/) to determine when and how the version changes. 83 According to SemVer, anything in the public API can change at any time before version 1.0.0 84 85 To provide some stability to Tendermint users in these 0.X.X days, the MINOR version is used 86 to signal breaking changes across a subset of the total public API. This subset includes all 87 interfaces exposed to other processes (cli, rpc, p2p, etc.), but does not 88 include the Go APIs. 89 90 That said, breaking changes in the following packages will be documented in the 91 CHANGELOG even if they don't lead to MINOR version bumps: 92 93 - crypto 94 - config 95 - libs 96 - bits 97 - bytes 98 - json 99 - log 100 - math 101 - net 102 - os 103 - protoio 104 - rand 105 - sync 106 - strings 107 - service 108 - node 109 - rpc/client 110 - types 111 112 ### Upgrades 113 114 In an effort to avoid accumulating technical debt prior to 1.0.0, 115 we do not guarantee that breaking changes (ie. bumps in the MINOR version) 116 will work with existing Tendermint blockchains. In these cases you will 117 have to start a new blockchain, or write something custom to get the old 118 data into the new chain. However, any bump in the PATCH version should be 119 compatible with existing blockchain histories. 120 121 122 For more information on upgrading, see [UPGRADING.md](./UPGRADING.md). 123 124 ### Supported Versions 125 126 Because we are a small core team, we only ship patch updates, including security updates, 127 to the most recent minor release and the second-most recent minor release. Consequently, 128 we strongly recommend keeping Tendermint up-to-date. Upgrading instructions can be found 129 in [UPGRADING.md](./UPGRADING.md). 130 131 ## Resources 132 133 ### Tendermint Core 134 135 For details about the blockchain data structures and the p2p protocols, see the 136 [Tendermint specification](https://docs.tendermint.com/master/spec/). 137 138 For details on using the software, see the [documentation](/docs/) which is also 139 hosted at: <https://docs.tendermint.com/master/> 140 141 ### Tools 142 143 Benchmarking is provided by [`tm-load-test`](https://github.com/informalsystems/tm-load-test). 144 Additional tooling can be found in [/docs/tools](/docs/tools). 145 146 ### Applications 147 148 - [Cosmos SDK](http://github.com/cosmos/cosmos-sdk); a cryptocurrency application framework 149 - [Ethermint](http://github.com/cosmos/ethermint); Ethereum on Tendermint 150 - [Many more](https://tendermint.com/ecosystem) 151 152 ### Research 153 154 - [The latest gossip on BFT consensus](https://arxiv.org/abs/1807.04938) 155 - [Master's Thesis on Tendermint](https://atrium.lib.uoguelph.ca/xmlui/handle/10214/9769) 156 - [Original Whitepaper: "Tendermint: Consensus Without Mining"](https://tendermint.com/static/docs/tendermint.pdf) 157 - [Tendermint Core Blog](https://medium.com/tendermint/tagged/tendermint-core) 158 - [Cosmos Blog](https://blog.cosmos.network/tendermint/home) 159 160 ## Join us! 161 162 Tendermint Core is maintained by [Interchain GmbH](https://interchain.berlin). 163 If you'd like to work full-time on Tendermint Core, [we're hiring](https://interchain-gmbh.breezy.hr/p/682fb7e8a6f601-software-engineer-tendermint-core)! 164 165 Funding for Tendermint Core development comes primarily from the [Interchain Foundation](https://interchain.io), 166 a Swiss non-profit. The Tendermint trademark is owned by [Tendermint Inc.](https://tendermint.com), the for-profit entity 167 that also maintains [tendermint.com](https://tendermint.com).