> For the complete documentation index, see [llms.txt](https://lethe.gitbook.io/lethe/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://lethe.gitbook.io/lethe/basics/zk-technology.md).

# ZK Technology

We know ZK technology might be a new concept for many of you, so we want to explain how it works

The ELI5 version is:&#x20;

Imagine you’re trying to prove to your friend that you know the password to their locked phone *without actually telling them the password*

A Zero-Knowledge Proof is akin to **demonstrating you can open the phone**, but without sharing how

There are a couple key ZK concepts.&#x20;

* Completeness: If the statement is true, a valid proof will always be able to convince a verifier
* Soundless: A fake proof cannot trick the verifier&#x20;
* Zero Knowledge: No info is leaked other than that the statement is true or false

Here's how ZK works in Lethe

* When you shield, top up your private balance, or send from it a ZK proof is generated that confirms a valid deposit/transfer was made&#x20;
* When you, or your recipient unshield, another ZK proof verifies that the withdrawal is legitimate and that whoever is withdrawing is allowed to access the funds—**without** revealing the original sender
* This ensures the both deposits and withdrawals don't leak any details about who the person on the other side of the transaction is
