How to Use NightFall

Nightfall is an L3 privacy blockchain originally incubated by EY and the Ethereum community, designed to bring enterprise-grade privacy to tokenized assets.

Nightfall_4 (NF_4) uses a Zero-Knowledge Proof (ZKP)-based protocol for private transfers of ERC-standard tokens:

  • ERC-20: fungible tokens

  • ERC-721: NFTs

  • ERC-1155: multi-token standard

  • ERC-3525: semi-fungible tokens

NF_4 incorporates a Layer-2 ZK-ZK rollup, allowing transactions to be grouped into succinct proofs. Key properties:

  • Scalable: private transfers typically cost ~6,000 gas

  • Fast finality: finality is aligned with the underlying blockchain (EVM or SVM)

  • Rust-based: implementation written in Rust, while preserving NF_3’s API for compatibility

In order to run Nightfall you must run two applications: a client and a proposer.

The purpose of the proposer is to make Layer 2 blocks. It makes an endpoint available to clients. Clients are the application that normal users will employ to make transactions that are hidden by ZKP. Full instructions for How to Run a Proposer on Plume Testnet can be found herearrow-up-right. clients are the application that normal users will employ to make transactions that are hidden by ZKP. the user can intitiate three types of transaction via the client: Deposit, Transfer, and Withdraw. Full instructions for How to Run a Client Application on Plume Testnet can be found herearrow-up-right.

Last updated