omgnetwork / research

43 stars 2 forks source link

Removing mass exit 1 week limit - attempt 2 #66

Closed boolafish closed 5 years ago

boolafish commented 5 years ago

This is for discussion and spreading thoughts, would close the issue once no thread moves on

Previous failed attempt: https://github.com/omisego/research/issues/62

So I've been keep thinking why plasma cash(flow) does not need mass exit, and what's the key difference. The real difference is that cash traces their deposit slot directly. So whenever people can challenge invalid tx that create money from nowhere by simply showing the last tx linked to the deposit slot.

In a really naive way, we can make our tx explicit traces the related deposit txs. Whenever an invalid exit happens, we challenge by showing all latest valid tx related to the deposit txs already fill in the sum of deposit amount. The challenge can be responded if one of the challenge txs is used.

Apparently, tracing all txs that is related to possible deposits would be a large set. Whenever tx merges two output, it would bring extra (and likely not needed) dependency in.

Taking from the idea of cashflow, we can optimize by tracing certain range of amount in deposit tx instead. So only the related tx of such deposit amount range needs to be shown to challenge. And in each tx, it could/would try to optimize/minimize the amount of fragmentation on output.

(PS. Well........and if one day we move our tree to merkle sum tree and instead of recording amount on deposit tx, we record the range.....then....(cough, cough)....)