PlasmPlasma on Substrate.
Description
Plasm is a Substrate Runtime Module Library which allows developers to add Plasma functions to their Substrate chain easily and seamlessly. Since Plasm is an SRML, developers can also make both plasma parent chains and plasma child chains with Substrate.
Today, there are many derived Plasmas, like
Plasma-MVP: Proposed by Vitalik Buterin.
Plasma-Cash: Users only need to download the histories of and watch the tokens they want to track.
Plasma-XT: Plasma-Cash derivative.
Plasma-Prime: Plasma-Cash derivative.
Plasma-Chamber: Cryptoeconomics Lab's opensource project inspired by Prime.
Plasma-Snapps: implemented ZK-S[T|N]ARKs
Plasm provides a Plasma-abstract data structure which is a combination of Plasma solutions. Also, Plasm provides Rust implementations of Plasma solutions.
Substrate developers can import one of the Plasm Libraries and make their own plasma chain depending on their use case. Plasm consists of 3 (or 4) libraries, Plasm-UTXO, Plasm-Parent, and Plasm-Child. Plasm-UTXO has a UTXO like data structure to manage the deposited tokens.
Plasma needs to have all transactions in order to validate and detect a malicious transaction when it is exited to the parent chain.
Plasm-UTXO: implements the UTXO model which is abstracted and concreted for each Plasma solution.
Plasm-Parent: provides modules to make a parent chain.
Plasm-Child: provides modules to make a child chain.