## Build on Scroll

Welcome back, cryptography enthusiasts! In Part 1, we explored the exciting world of ZK-STARKs and how they take Zero-Knowledge Proofs (ZKPs) to a whole new level. We saw how ZK-STARKs boast greater transparency, scalability, and have the potential to become mainstream thanks to their simpler construction.

Now, let's take a peek under the hood and gain a basic understanding of the magic behind ZK-STARKs. But remember, this is a simplified glimpse – we won't delve into the deep mathematical weeds!

**The ZK-STARK Recipe**

Imagine ZK-STARKs as a cryptographic recipe with special ingredients:

**The Proof Statement**: This is what you want to prove, similar to ZkSNARKs. In a financial transaction, it could be "This transaction is valid."**The Computation Witness**: This is your secret sauce, the evidence that the statement is true. It might involve the details of the transaction, but without revealing any sensitive information.**The CRS (Common Reference String)**: Unlike ZkSNARKs with their trusted setup, ZK-STARKs rely on a publicly verifiable CRS. Think of it as a set of common ingredients everyone agrees on before the proof-baking begins. This CRS is verifiable by anyone and ensures the fairness of the ZK-STARK system.

**Here's the ZK-STARK cooking process:**

**Turning Up the Heat: Commitment with Collisions**

- The ZK-STARK system takes the proof statement and the computation witness and puts them through a special hashing function. This creates a mathematical commitment, like locking away the ingredients to ensure their integrity.
- But here's the twist: The system also generates another value with a special property. This value "collides" with the commitment of the proof statement, but only if the statement is actually true and the witness is valid! It's like having a secret key that unlocks the commitment, but without revealing the key itself.

**The Verification Recipe: Checking the Consistency**

- The verifier (the one checking the proof) receives a special zk-STARK proof generated from the prover (the one with the secret witness). This proof contains mathematical assertions based on the CRS.
- The verifier then performs calculations using the public CRS and the zk-STARK proof. If the computations check out, it's like verifying that the secret key (the collision) unlocks the commitment (proof statement). This confirms the truth of the statement without revealing the witness.

**Important Note:**

- This explanation is simplified skips over the details of collision finding and the specific cryptographic techniques used in ZK-STARKs. However, you have gained an important understanding of how ZK-STARKs achieve transparency and efficiency in their zero-knowledge proofs.

**For the Crypto-Curious:**

- Dive deeper! Numerous resources explore the nitty-gritty of ZK-STARKs' cryptographic core. If you're up for the challenge, explore the mathematical underpinnings of collision finding and the zk-STARK proof system.

**ZK-STARKs: A Promising Future**

With their focus on transparency, scalability, and accessibility, ZK-STARKs have the potential to revolutionize the world of ZKPs. As research continues, we can expect to see even more innovative applications emerge, shaping a future where privacy and security go hand-in-hand.