---
title: ZK Proofs
icon: EyeOffIcon2
---

## Semaphore Overview

Imagine you want to be part of a secret club, but you don't want anyone to know you're a member. Semaphore helps you do this. Here's how it works:

1. You create a secret code that only you know, kind of like a secret handshake.
2. You also have another secret code that only you know.
3. These two secret codes are combined to make a special ID for you, like a secret membership card.
4. Your secret ID is added to a special tree ([Merkle Tree](/tutorials/glossary#merkle-tree)) that keeps track of all the club members. This tree is like a list of all the members in the club.
5. Now, whenever you want to prove that you're a member of the club without revealing who you are, you use Semaphore's magic process.
6. You give Semaphore your two secret codes, and it does some math magic to prove that your secret ID is in the list of members.
7. You can then show this proof to the club to prove you're a member, without telling them your real identity.

So, Semaphore helps you be part of a secret group without showing your true identity.

## Technical Details

GroupManager is an Implementation of the


## More Reading & References

- https://semaphore.pse.dev/docs/resources
- https://blog.aayushg.com/posts/zk/
- https://0xparc.org/blog
