package
2.2.0+incompatible
Repository: https://github.com/dispatchlabs/disgo.git
Documentation: pkg.go.dev

# README

 

Go Version 1.9.2

Overview

The dapos package provides the services for using Delegated Asynchronous Proof-of-Stake (DAPoS) consensus for transactions.

DAPoS is a new consensus algorithm developed by the Dispatch team for use in the Dispatch protocol. It aims to maximize parallelizable transaction throughput. DAPoS maximizes scalability of transaction throuput by minimizing the Delegates codependency. Once transaction information is evenly distributed between Delegates, each Delegate autonomously and deterministically accepts the Transaction into their chain and reports the validity of the Transaction. Work done by delegates is redundant for Byzantine security of the network. DAPoS Delegates are elected by Stakeholders based on stake-weighted voting, and gossip to one another about which Transaction they have received from External Actors using ECDSA signatures. Once a Delegate receives 2/3 of Delegate signatures for a given Transaction within maximum Lag Threshold, the Transaction is accepted and added to that Delegate Ledger. The validity of the Transaction is reported back to Bookkeepers, so Delegates can be evaluated and held accountable by Stakeholders.

For more details on DAPoS, please refer to Introduction to DAPoS document.

Download

go get github.com/dispatchlabs/disgo/dapos
or
git clone http://github.com/dispatchlabs/disgo/dapos

Wiki Documentation

For more technical details on how dapos works, please visit the Wiki

Dependencies

Because dapos relies on sending transactions to other delegates, it is necessary to also have the disgover package for network discovery. commons for common types domain types. NOTE: if you go get ./.. then dependencies are getting pulled automatically

Configuration

The dapos package only relies on the configuration loaded by commons

protobuf (see common install instructions)

How to use the dapos package

See the wiki page for links to full examples on running bare-bones dapos

Tests

Tests to be added

Acknowledgments

Add lists of contributors

Contributing

Add link to common CONRIBUTING.md file

License

Add License data

# Functions

GetLocalAPIService.

# Variables

Events - `dapos` events.

# Structs

Deploy -.
Execute -.
LocalAPIService -.
Transfer -.