> For the complete documentation index, see [llms.txt](https://zokyo-auditing-tutorials.gitbook.io/zokyo-tutorials/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://zokyo-auditing-tutorials.gitbook.io/zokyo-tutorials/tutorial-16-zero-knowledge-zk/prerequisites.md).

# Prerequisites

{% hint style="info" %}
[**Book an audit with Zokyo**](https://www.zokyo.io/)
{% endhint %}

{% hint style="info" %}
**Understanding the Prerequisites for Zero-Knowledge Proofs in Blockchain:** Before diving into the vast ocean of zero-knowledge proofs (ZKPs) and their underlying complexity, it's crucial to be equipped with a foundational understanding of certain concepts. This checklist showcases the primary areas that will pave the way for a more enlightening journey through the tutorial. If some areas seem unfamiliar, don't fret. This guide is structured to reinforce your existing knowledge while bridging any knowledge gaps, ensuring a smooth and layered learning experience. Remember, the journey of a thousand miles begins with a single step.
{% endhint %}

To maximize your experience from this tutorial, a foundational understanding of the following areas is suggested:

* **Blockchain Fundamentals:** Familiarize yourself with the elementary aspects of blockchain technology. This includes understanding distributed ledgers, the essence of decentralization, and consensus algorithms. Grasping how data gets recorded and validated on a blockchain will set the stage.
* **Cryptographic Techniques:** Since ZKPs are rooted in cryptography, having a basic understanding of cryptographic techniques, such as hashing and digital signatures, will be beneficial.
* **Ethereum (or your chosen blockchain platform):** As ZKPs can be implemented on platforms like Ethereum, acquaint yourself with its architecture and the Ethereum Virtual Machine (EVM). A grasp of how Ethereum transactions work, especially concerning gas and transaction fees, will be advantageous.
* **Mathematical Foundations:** Zero-knowledge proofs have a strong foundation in mathematics. While advanced mathematics will be broken down in the tutorial, a basic understanding of algebra, number theory, and polynomial equations can be helpful.
* **Interactive Protocols:** ZKPs often involve interactive protocols between a prover and verifier. Being familiar with the general concept of interactive proofs, even if not specifically zero-knowledge, can offer valuable context.
