- Notifications
You must be signed in to change notification settings - Fork344
https://wiki.hyperledger.org/display/burrow
License
hyperledger-archives/burrow
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Hyperledger Burrow has been moved to End of Life status by the original project maintainers. Although Hyperledger Burrow is not currently being developed or maintained, the code is still available under an open source license so you would be welcome to reactivate this project. If you are interested in continuing development of this code, please consider submitting a PR athttps://github.com/hyperledger/hyperledger-hip and sending and email totsc@lists.hyperledger.org. See more details about project proposals at:https://hyperledger.github.io/hyperledger-hip/
If you wish to contribute, please reach out to theTSC mailing list
Hyperledger Burrow is a permissioned Ethereum smart-contract blockchain node. It executes Ethereum EVM and WASM smart contract code (usually written inSolidity) on a permissioned virtual machine. Burrow provides transaction finality and high transaction throughput on a proof-of-stakeTendermint consensus engine.
Burrow was a fully fledged blockchain node and smart contract execution engine -- a distributed database that executes code. Burrow runs Ethereum Virtual Machine (EVM) and Web Assembly (WASM) smart contracts. Burrow networks are synchronised using theTendermint consensus algorithm.
Highlights include:
- Tamper-resistant merkle state - a node can detect if its state is corrupted or if a validator is dishonestly executing the protocol.
- Proof-of-stake support - run a private or public permissioned network.
- On-chain governance primitives - stakeholders may vote for autonomous smart contract upgrades.
- Ethereum account world-view - state and code is organised into cryptographically-addressable accounts.
- Low-level permissioning - code execution permissions can be set on a per-account basis.
- Event streaming - application state is organised in an event stream and can drive external systems.
- SQL mapping layer - map smart contract event emissions to SQL tables using a projection specification.
- GRPC interfaces - all RPC calls can be accessed from any language with GRPC support. Protobuf is used extensively for core objects.
- Javascript client library - client library uses code generation to provide access to contracts via statically Typescript objects.
- Keys service - provides optional delegating signing at the server or via a local proxy
- Web3 RPC - provides compatibility for mainnet Ethereum tooling such as Truffle and Metamask
- An Ethereum mainnet client - we do not speak devp2p and various implementation details are different. We are Ethereum-derived but exploit greater freedom than mainnet compatibility would allow.
- Just a virtual machine
- A research project - we run it in production
SeeBurrow - the Boring Blockchain for an introduction to Burrow and its motivating vision.
Watch theBoring into Burrow talk from the Hyperledger Global Forum 2020
There is aJavaScript API
Project information generally updated on a quarterly basis can be found on theHyperledger Burrow Wiki.
Burrow getting started documentation is available on thedocumentation site (source markdown files can be found indocs) and programmatic API inGoDocs.
- Burrow binaries:https://github.com/hyperledger/burrow/releases
- Burrow.js:https://www.npmjs.com/package/@hyperledger/burrow
- Docker:https://hub.docker.com/repository/docker/hyperledger/burrow
We welcome any and all contributions. Read thecontributing file for more information on making your first Pull Request to Burrow!
You can find us on:
About
https://wiki.hyperledger.org/display/burrow