Skip to content

Juria is a high-performance consortium blockchain with Hotstuff consensus protocol.

License

Notifications You must be signed in to change notification settings

aungmawjj/juria-blockchain

Repository files navigation

Juria Blockchain

Juria is a high-performance consortium blockchain with Hotstuff consensus mechanism and a transaction-based state machine.

Hotstuff provides a mechanism to rotate leader (block maker) efficiently among the validator nodes. Hence it is not required to have a single trusted leader in the network.

With the use of Hotstuff three-chain commit rule, Juria blockchain ensures that the same history of blocks is committed on all nodes despite network and machine failures.

Benchmark

Getting started

You can run the cluster tests on local machine in a few seconds.

  1. Install dependencies
# MacOS
xcode-select --install
# Ubuntu
sudo apt-get install build-essential
  1. Download and install go 1.16
  2. Prepare the repo
git clone https://github.com/aungmawjj/juria-blockchain
cd juria-blockchain
go mod tidy
  1. Run tests
cd tests
go run .

The test script will compile cmd/juria and set up a cluster of 4 nodes with different ports on the local machine. Experiments from tests/experiments will be run and health checks will be performed throughout the tests.

NOTE: Network simulation experiments are only run on the remote linux cluster.

Documentation

About the project

License

This project is licensed under the GPL-3.0 License.

Contributing

When contributing to this repository, please first discuss the change you wish to make via issue, email, or any other method with the owners of this repository before making a change.

About

Juria is a high-performance consortium blockchain with Hotstuff consensus protocol.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published