Skip to content

ivicanikolicsg/OHIE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 

Repository files navigation

OHIE - Blockchain scaling

The repository contains C++ implementation of OHIE. The technical aspects of the approach are described in our paper.

Dependencies

The code has been tested on Ubuntu 16.04 with Boost ASIO library installed:

sudo apt-get install libboost-all-dev

Quick Test

  1. Compile the code make
  2. Run the script quick_test.sh

This will run OHIE network of 3 nodes -- their outputs are written in outputnodeX.txt. So, while running, for example, check the output with tail -f outputnode1.txt. At the end, make sure to kill the network, i.e. fuser -k *.

Parameters

There are many parameters that can be configured, starting form the IP address of the nodes, to number of chains, block sizes, mining times, etc:

  • For most widely used parameters, check the file _configuration.
  • For a full list of parameters, check configuration.cpp.
  • The list of network nodes (ip:port) is defined in a separate file, check _peers
  • To start a single node use
./Node <portNumber> <file_peers> 

Amazon EC2 Scripts

Large scale experiments (based on the above code) were conducted on Amazon EC2, using the scripts from amazonEC2 folder.

Note: For each AWS region you want to use, make sure you have the public key written in a file and stored in keys folder, and have the correct launching templates. Update regions.py to reflect the file paths and the templates.

About

OHIE - Blockchain scaling

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages