Do you know what a zk-SNARK test is and what it is used for in cryptocurrency development? Zero-knowledge proofs are part of a technology of *blockchain* new and after the emergence of Bitcoin. Knowledge of this concept has existed for almost four decades, when it was first described by **Goldwasser**, **Micali** and **Rackoff**in the 1985 article titled *The knowledge complexity of interactive proof systems*.

In this post, we will explain **What is a zero-knowledge protocol and what is a zk-SNARK proof?**.

## What is a zero knowledge proof?

Before talking about what a zk-SNARK test is, it is important to define in **What is a zero knowledge proof? zero knowledge proof (ZKP)**.

Imagine that you want to tell someone that you have certain knowledge, but you don’t want to have to reveal the knowledge itself. In this case, you would need a zero-knowledge protocol, which is desirable** when it involves an exchange of sensitive or confidential information**. For example, these types of protocols serve to demonstrate that you have more than a certain amount of money in your account, without having to reveal your exact balance.

There are two types of zero-knowledge proofs:** interactive and non-interactive**. We detail them below:

*Interactive zero-knowledge proofs*

*Interactive zero-knowledge proofs*

Interactive tests can be defined by means of an example with colors.

Suppose you have two balls of different colors (one yellow and one red). Now, **you want to check with someone who can’t differentiate between colors **(a color blind person, for example), **that you can distinguish between both**. So the solution to this problem is to make an interactive zero-knowledge proof.

The interactive ZKP consists of giving the other person the two colored balls in a certain order. Then, this person will decide whether or not to change their order. Now, he will show them to you again and you will have to know if he has changed the order or if he has left them the same.

You may be lucky the first few times, but after hundreds of tries, **If you keep getting it right every time, you will surely be able to distinguish between both colors.**.

*Non-interactive zero-knowledge proofs*

*Non-interactive zero-knowledge proofs*

The interactive ZKPs, to be executed **in a virtual environment**, require both parties of the transaction to be connected, which limits the use and scalability of the technology. Therefore, they developed** non-interactive ZKP,** which we will explain through the example of what a zk-SNARK test is.

## What is a zk-SNARK test?

A zk-SNARK test is a protocol that **allows ZKP to be done through automated tests**. These tests must comply with the following **three feature**yes:

The other party must be **100% convinced of the validity of the test**.**It must be impossible to lie** or cheat on the test.**Information should not be revealed**only the other party is counting on it.

The name zk-SNARK means** Zero Knowledge Succint Non Interactive Argument of Knowledge** and the analysis of said term leads us to understand how it works:

**Zero knowledge**: The information being protected is never revealed, only the fact that it is there.**Succinct**: The test should be short to be efficient.**Non-interactive**: because it does not require both parties to connect for a series of tests.**Argument**: The test satisfies the three requirements described above, that is, it verifies that it is impossible to deceive the information one has.**Knowledge**: The cryptographic proof could not be constructed if there was no access to the key information to generate it.

## How to learn more?

Now you know what a zk-SNARK test is and how it allows you to run zero-knowledge protocols without interaction. If you want to learn more and become a **cybersecurity expert**the time has come to access the Full Stack Cybersecurity Bootcamp and specialize in cryptography, ethical hacking and much more.** Sign up now!**