# ZK-SNARKS Cryptography

KALIUM places significant reliance on Zero-Knowledge Proofs (ZKPs). ZKPs provide the means for intricate logic and contract interactions while maintaining the utmost privacy and are a groundbreaking instrument for safeguarding confidentiality.

### What is a zk-SNARK?

Zero-Knowledge proofs, or ZKPs, are a way for one party (the prover) to prove to another party (the verifier) that some information is true without revealing the actual details of that information. They do this by engaging in a series of mathematical interactions, and the verifier is convinced of the truth without seeing the specifics.

zk-SNARKs, which stands for "Zero-Knowledge Succinct Non-Interactive Argument of Knowledge," are a specific type of ZKP that doesn't require direct back-and-forth interaction between the prover and verifier. Instead, the prover simulates these interactions, and the verifier only needs to check that the simulation is accurate. zk-SNARKs rely on complex math problems that are extremely difficult to solve quickly.

For zk-SNARKs to be "succinct," the proofs must be small in size and efficient to verify. They leverage elliptic curves, a mathematical concept, to achieve this efficiency. In the context of Kalium, zk-SNARKs enable smart contracts to act as verifiers, and these verifiers are the smart contracts themselves. This innovation is made possible by EIP 197 and EIP 198, which allow Kalium to create zk-SNARK circuits on-chain. These circuits are generated on the client side and then confirmed on-chain.

zk-SNARKs can be used to prove the truth of various types of information, such as valid token balances, without revealing who is behind a particular transaction.

### How are zk-SNARK’s implemented in Kalium Network?

Generally zero-knowledge proofs are a tool to enforce honest behavior in protocols without revealing any information.

Kalium Network is a public blockchain that facilitates private transactions. zk-SNARK’s are used to prove that a private transaction is valid within the network consensus rules without revealing any other details about the transaction.

zk-SNARKS provide several advantages in a variety of different applications. Let’s take a look at some examples.

**Scalability**: This is achieved by ‘Outsourcing Computation’. There is no strict need for zero-knowledge for an L1 chain to verify the work of an off-chain service. Transactions are not necessarily private on a zk-EVM.

The advantage of a proof based Rollup (zk-Rollup) service is to process a batch of hundreds/thousands of transactions & the L1 is able to verify a succinct proof that all transactions were processed correctly, scaling the networks transaction throughput by a factor of 100 or 1000.

Last updated