Go to file
Peter van Nostrand 817b2da962 Fixed merge conflict in readme. 2018-05-04 12:18:57 -04:00
examples applied rustfmt 2018-04-30 18:55:51 +03:00
proto added Agreement message type and protobuf boilerplate 2018-05-03 10:10:35 +01:00
src added (ignored) regression tests for some of the broadcast issues 2018-05-04 11:14:19 +02:00
tests added (ignored) regression tests for some of the broadcast issues 2018-05-04 11:14:19 +02:00
.gitignore Merge branch 'master' into remove-autogenerated-message.rs 2018-03-28 14:52:13 +01:00
Cargo.toml removed redundant dependency on error_chain; corrected vector indices 2018-04-06 13:57:48 +01:00
LICENSE added GNU license and removed obsolete comments 2018-04-01 21:41:49 +01:00
README.md Fixed merge conflict in readme. 2018-05-04 12:18:57 -04:00
build.rs applied rustfmt 2018-04-30 18:55:51 +03:00

README.md

Build Status Gitter

About

An implementation of the paper "Honey Badger of BFT Protocols" in Rust. This is a modular library of consensus. There are examples illustrating the use of this algorithm.

Requirements

You must have the Protocol Buffer compiler binary, protoc, located somewhere in your $PATH. If you have not installed protoc, you can download the binary and move it to /usr/local/bin/protoc using the following:

Note As of writing this, the latest stable release of protoc is v3.5.1. You can check out what is the latest compiler version is here, and update the following cURL url and zip-file name accordingly.

Installing protoc on Debain/Ubuntu

$ cd <some temporary working directory>
$ sudo apt-get update
$ sudo apt-get install -y unzip
$ curl -OL https://github.com/google/protobuf/releases/download/v3.5.1/protoc-3.5.1-linux-x86_64.zip
$ sudo unzip protoc-3.5.1-linux-x86_64.zip -d /usr/local bin/protoc
$ sudo chown $(whoami) /usr/local/bin/protoc
$ protoc --version
$ rm protoc-3.5.1-linux-x86_64.zip

Installing protoc on OSX

$ cd <some temporary working directory>
$ curl -OL https://github.com/google/protobuf/releases/download/v3.5.1/protoc-3.5.1-osx-x86_64.zip
$ sudo unzip protoc-3.5.1-osx-x86_64.zip -d /usr/local bin/protoc
$ protoc --version
$ rm protoc-3.5.1-osx-x86_64.zip

Building

Once you have verified that the protoc binary is in your $PATH, you can build hbbft using cargo:

$ cargo build [--release]