plasma-research
plasma-research copied to clipboard
Plasma Assets (Deposits + Withdrawals)
Depends from #41
Deposit method for ETH:
function deposit(
OrderedLinkedListItem depositSlot
) external payable returns(bool);
Deposit method for ERC20+ERC721:
function depositToken(
OrderedLinkedListItem depositSlot,
address from,
uint amountOrTokenId
) external returns(bool);
See exit game method signatures: https://hackmd.io/FaKQ5Jc1Qg6rQ3a8xcPj_Q#Exit-game
function withdrawalBegin(
Input point,
RSAInclusionProof proof
) external payable returns (bool);
function withdrawalChallangeSpend(
ExitState state,
Transaction tx,
uint64 blockIndex,
SumMerkleProof[] txProof, // serialized to bytes
uint8 spendIndex,
RSAInclusionProof spendInclusionProof
) external returns (bool);
function withdrawalChallangeExistance(
ExitState state,
SumMerkleProof txProof,
MerkleProof inputProof,
uint64 maxBlockIndex,
MerkleProof maxBlockIndexProof
) external returns (bool);
function withdrawalEnd(
ExitState state
) external returns (bool);