Nightfall's actors

A description of Nightfall's actors

Nightfall recognises four actors:

  • A User, who wants to transact using nightfall, i.e. who wants to send or receive tokens privately. They pay a small fee to a Proposer for each transaction that they make.

  • A Proposer, who is responsible for assembling Users' transactions into blocks and posting them to the blockchain. Note that these are Layer 2 blocks (more on that later) and this enables many more transaction to be packed into a conventional blockchain (Layer 1) block. This is how scaleability is achieved. The Proposer must stake funds to buy time slots, during which they are allowed to assemble blocks, they must also stake each block that they create (repaid when the block is finalised). Proposers are fined and dismissed if they make flawed blocks. They make money because they are paid for their work by Users.

  • A Challenger: Challengers monitor the blockchain for any bad blocks. If they find one, they can initiate a challenge, which will be arbitrated by a Smart Contract. If the challenge is correct, the Challenger is paid from the fine imposed on the relevant Proposer. If they make a false challenge then they lose the cost of arbitrating the challenge on-chain.

  • A Liquidity Provider: A downside of the Optimistic approach is that one must normally wait for a long period before a withdrawal of funds can be finalised (1 week in the case of Nightfall). The Liquidity Provider role removes this wait. If a Liquidity Provider has checked all the Layer 2 blocks that are within the 1-week challenge window (as a Challenger would) they can be certain that they will eventually become finalised. Thus they can, without risk, give the withdrawal amount to a User for a small fee, and take ownership of the original withdrawal transaction, recovering their money when the withdrawal is finalised. Thus, the User gets an instant withdrawal for a small additional fee.

Last updated