The following specification outlines a new plasma version which utilizes snarks to prove its integrity and validity. Via an interlinking between exit requests and deposits with the correctness proof of a block - the snark -, we are able to specify an implementation without any need for exit challenge games and confirmation signatures. Unfortunately, the concept of exit queues is still needed.
Removing the exit games and confirmation signatures allow us to remove much of the complexity of plasma, which is currently hindering the implementation of more sophisticated protocols beyond simple token-transfers. This proposed version will facilitate to integrate more protocols into plasma by making the snarks itself handling these protocol advancements.
m0t0k1ch1.icon by making the snarks itself handling these protocol advancements は実感湧いていないけど、どういうことだろ？
Over the last half a year, there has been made tremendous advancements regarding fully verifiable plasma chains. New signature mechanism and hashing mechanism were found, helping to reduce proving times significantly.
These advancements enable the following with reasonable timings:
・storing the complete state of a plasma chain encoded as a StateRootHash on ethereum
・this StateRootHash can be updated by a central operator by providing a snark proving a valid state transition
・A valid state transition is proven within the snark by opening one or several leaves of the merkle tree describing the current state, checking the user’s signatures, doing predefined operations, updating the leaf and finally recalculate the StateRootHash.
StateRootHash としてエンコードされた Plasma チェーンの完全な state を Ethereum 上で保持する
StateRootHashは、中央集権的なオペレータが、正当な state 遷移を証明する SNARK を提出することによって更新される
However, snarks do not solve the problems associated with data unavailability. Also, the snarks need to be aware of any incoming deposit request to the plasma chain and outgoing withdrawal requests. This post will describe a solution for these two remaining issues.