# Introduction to the course · Build with zero-knowledge proofs on Chromia · Learn Chromia

> This course covers zero-knowledge proofs (ZKP) on Chromia. You work through a production-ready demo that performs private token transfers on the Chromia…

Source: https://chromia.com/learn/zero-knowledge-proof/introduction/

Build with zero-knowledge proofs on ChromiaLesson 1 of 19

1. [01Introduction to the course](https://chromia.com/learn/zero-knowledge-proof/introduction/)
2. [02Zero-knowledge proof](https://chromia.com/learn/zero-knowledge-proof/zero-knowledge-proof/)
3. [03Project setup](https://chromia.com/learn/zero-knowledge-proof/setup/)
4. [04Architecture overview](https://chromia.com/learn/zero-knowledge-proof/architecture-overview/)

Module 1: Writing Circom circuits

1. [05Overview](https://chromia.com/learn/zero-knowledge-proof/circom-circuits/)
2. [06Circom circuits: introduction](https://chromia.com/learn/zero-knowledge-proof/circom-circuits/circom-circuits-introduction/)
3. [07Circom files overview](https://chromia.com/learn/zero-knowledge-proof/circom-circuits/circom-circuits-project/)
4. [08Circom circuits: compile](https://chromia.com/learn/zero-knowledge-proof/circom-circuits/circom-circuits-compile/)

Module 2 – Dapp

1. [09Overview](https://chromia.com/learn/zero-knowledge-proof/dapp/)
2. [10Dapp: setup and run](https://chromia.com/learn/zero-knowledge-proof/dapp/dapp-setup-run/)
3. [11Dapp overview](https://chromia.com/learn/zero-knowledge-proof/dapp/dapp-overview/)
4. [12Dapp entities](https://chromia.com/learn/zero-knowledge-proof/dapp/dapp-entities/)
5. [13PLONK verification](https://chromia.com/learn/zero-knowledge-proof/dapp/dapp-verification/)
6. [14Dapp operations overview](https://chromia.com/learn/zero-knowledge-proof/dapp/dapp-operations/)
7. [15Dapp queries overview](https://chromia.com/learn/zero-knowledge-proof/dapp/dapp-queries/)

Module 3 – Frontend

1. [16Overview](https://chromia.com/learn/zero-knowledge-proof/frontend/)
2. [17Frontend: setup and run](https://chromia.com/learn/zero-knowledge-proof/frontend/frontend-setup-run/)
3. [18Frontend architecture](https://chromia.com/learn/zero-knowledge-proof/frontend/frontend-explore/)
4. [19Frontend: test](https://chromia.com/learn/zero-knowledge-proof/frontend/frontend-test/)

[Learn](https://chromia.com/learn/)[Build with zero-knowledge proofs on Chromia](https://chromia.com/learn/zero-knowledge-proof/)

01 / 19Advanced

# Introduction to the course

This course covers zero-knowledge proofs (ZKP) on Chromia. You work through a production-ready demo that performs private token transfers on the Chromia blockchain. Transfer amounts stay hidden from the public ledger, yet every transaction keeps its full integrity.

## Course overview

The demo application covers the whole lifecycle of a private token through four core operations:

1. **Balance creation (faucet)**: Sets up public token balances so you have something to demonstrate with.
2. **Shield operation**: Uses ZKP to turn public tokens into private notes.
3. **Private transfer**: Moves private tokens from one user to another with full privacy and smart consolidation.
4. **Unshield operation**: Uses ZKP to turn private notes back into public tokens.

After finishing the course, you will know how these pieces combine into a secure, private token system on Chromia.

## Key features

The system you study includes these features:

* **Complete privacy**: ZKP keeps both balances and transfer amounts hidden.
* **Bank-grade security**: Keys are derived hierarchically and protected with password-based encryption.
* **Smart consolidation**: Notes are consolidated automatically, so transfers go through without extra steps.
* **Cross-user encryption**: Notes are shared securely between users with asymmetric encryption.
* **Production ready**: Includes session management, auto-lock, and enterprise security.
* **MetaMask integration**: Connects to the wallet and manages accounts without friction.
* **Modern UI**: A straightforward interface that updates balances in real time.

Continue to the next lesson to begin working with zero-knowledge proofs on Chromia.

Written for this site from Chromia’s public course. Code samples are the course’s own.

[← Course**Build with zero-knowledge proofs on Chromia**](https://chromia.com/learn/zero-knowledge-proof/)[Next →**Zero-knowledge proof**](https://chromia.com/learn/zero-knowledge-proof/zero-knowledge-proof/)

On this page

* [Course overview](#course-overview)
* [Key features](#key-features)
