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

# Theory

- [Prerequisite Knowledge](https://battlezips.gitbook.io/battlezips/theory/prerequisite-knowledge.md): What do I need to know before I can work with Zero Knowledge?
- [Resources](https://battlezips.gitbook.io/battlezips/theory/resources.md): Aggregation of useful resources related to wider ZKP industry
- [White Papers & PDF's](https://battlezips.gitbook.io/battlezips/theory/resources/white-papers-and-pdfs.md): Official academic productions debuting, formalizing, or otherwise analyzing aspects of the ZK Space
- [Blogs and Writeups](https://battlezips.gitbook.io/battlezips/theory/resources/blogs-and-writeups.md): Content that is easier to digest than original, academic pieces
- [Videos](https://battlezips.gitbook.io/battlezips/theory/resources/videos.md): Recorded content on Zero Knowledge Proofs
- [Important Entities](https://battlezips.gitbook.io/battlezips/theory/resources/important-entities.md): List of notable individuals and institutions that power the ZKP industry
- [Communities](https://battlezips.gitbook.io/battlezips/theory/resources/communities.md): Communities that facilitate exploration of the wider ZKP industry
- [Proving Schemes](https://battlezips.gitbook.io/battlezips/theory/proving-schemes.md)
- [Primitives](https://battlezips.gitbook.io/battlezips/theory/primitives.md)
- [Hash Functions](https://battlezips.gitbook.io/battlezips/theory/primitives/hash-functions.md): A background and overview and background on various hash functions related to and imperative to zero knowledge cryptography
- [Public Key Cryptosystems](https://battlezips.gitbook.io/battlezips/theory/primitives/public-key-cryptosystems.md)
- [Note on L1 key registry → L2 hot key + callback to circuit-optimized hash functions](https://battlezips.gitbook.io/battlezips/theory/primitives/public-key-cryptosystems/note-on-l1-key-registry-l2-hot-key-+-callback-to-circuit-optimized-hash-functions.md)
- [ECDSA & secp256k1](https://battlezips.gitbook.io/battlezips/theory/primitives/public-key-cryptosystems/ecdsa-and-secp256k1.md)
- [EdDSA](https://battlezips.gitbook.io/battlezips/theory/primitives/public-key-cryptosystems/eddsa.md): Overview of Edwards Curve Digital Signature Algorithm and related curves
- [Merkle Trees](https://battlezips.gitbook.io/battlezips/theory/primitives/merkle-trees.md)
- [What is a Merkle Tree?](https://battlezips.gitbook.io/battlezips/theory/primitives/merkle-trees/what-is-a-merkle-tree.md): Background on Merkle Tree data structures and their importance for proving data integrity
- [What is a merkle proof of inclusion?](https://battlezips.gitbook.io/battlezips/theory/primitives/merkle-trees/what-is-a-merkle-proof-of-inclusion.md)
- [zk-kit](https://battlezips.gitbook.io/battlezips/theory/primitives/merkle-trees/zk-kit.md): ZK Kit is monorepo on github that provides resources helpful for writing zero knowledge proofs
- [Incremental Merkle Trees](https://battlezips.gitbook.io/battlezips/theory/primitives/merkle-trees/incremental-merkle-trees.md)
- [Sparse Merkle Trees](https://battlezips.gitbook.io/battlezips/theory/primitives/merkle-trees/sparse-merkle-trees.md)
- [Tree Arity (Binary, Quinary)](https://battlezips.gitbook.io/battlezips/theory/primitives/merkle-trees/tree-arity-binary-quinary.md): Overview of tree arity and why it matters in the context of a Merkle Tree
- [Semaphore](https://battlezips.gitbook.io/battlezips/theory/primitives/semaphore.md)
- [Arithmetic Circuits](https://battlezips.gitbook.io/battlezips/theory/primitives/arithmetic-circuits.md): Brief description of arithmetic circuits and their role in SNARK creation
