/hashgraph

Sample implementation of Hashgraph protocol in Go.

Primary LanguageGoGNU General Public License v3.0GPL-3.0

Hashgraph in Go

DOI

This is the course project for COMP515 - Distributed Systems. As a team of 2: Erhan Tezcan & Ahmet Uysal, we implemented hashgraph in Golang.

Disclaimer

Hashgraph is a patented algorithm which is developed by Leemon Baird, the co-founder and CTO of Swirlds, in 2016. This project is developed solely for education purposes to better understand how Hashgraph works. You find the original papers we used for our implementation in our report.

How to run

There are two applications located under cmd folder.

  • dledger contains a distributed ledger application that is built upon Hashgraph algorithm.
    You can run dledger by $ go run main.go PORT_NUMBER. Note that this application retrieves the peer information from peers.txt
  • ui contains a visualization application that shows the current state of Hashgraph in realtime. ui is built using go-astilectron. You can check go-astilectron repository to get more information about installation and running.