- Money streaming represents the idea of continuous payments over a finite period of time.
- A provider sets up a money streaming contract.
- A prospective payer can interact with the contract and start the stream right away by depositing the funds required for the chosen period.
- The payee is able to withdraw money from the contract based on its ongoing solvency
- payment rate * verified delay function (current block height - starting block height)
- The stream terms (payment rate, length, metadata) can be updated at any time if both parties pledge their signatures.
- The stream can be stopped at any point in time by any party without on-chain consensus.
- If the stream period ended and it was not previously stopped by any party, the payee is entitled to withdraw all the deposited funds.
- Block Numbers are used as a proxy of time to continuously update balances.
- Block Numbers are indexed by On-chain randomness produced by verified delay
functions