Plasma MVP Sidechain
develop is the main branch
What is Plasma?
Plasma has two major components: verification and computation. Verification is handled by the rootchain contract, which resolves any disputes and distributes funds accordingly. Computation is handled separately by a sidechain, which maintains its security through reporting proofs via merkle roots to the rootchain contract.
Plasma MVP utilizes a UTXO model, which allows for secure and compact proofs. Learn more about plasma on learnplasma.org!
We are using Tendermint for our consensus protocol. This sidechain currently supports a single validator, but will be updated in the future to support multiple validators.
Install using a script
This script can be used on a fresh server that has no dependencies installed.
curl https://raw.githubusercontent.com/FourthState/plasma-mvp-sidechain/develop/scripts/plasma_install.sh > install.sh chmod +x install.sh ./install.sh
Pull the latest version of the develop branch.
dep ensure -vendor-only
cd server/plasmad/ go install
plasmad init to start an instance of a plasma node.
--home <dirpath> to specify a location where you want your plasma node to exist.
<dirpath>/config/ (default is
$HOME/.plasmad/config), set configuration parameters in config.toml and plasma.toml.
plasmad start to begin running the plasma node.
cd client/plasmacli/ go install
$HOME/.plasmacli, set ethereum client configuration parameters in plasma.toml.
plasmacli to run any of the commands for this light client
See our research repository for architectural explanations of our Plasma implementation.
See our documentation