Skip to main content

Guide To Zero-Knowledge Proofs, The Key Behind Worldcoin

04 Aug, 2023
zero-knowledge-proof

A zero-knowledge proof, or ZKP, is a method of verifying the truth of a piece of information (e.g., a transaction) to another party without disclosing any details about the claim itself. In this cryptographic protocol, one person, known as the 'prover', must prove their claim to another person, known as the 'verifier'. Think about it like being able to prove you know your password without revealing the word itself or what it is for.

Most proofs in our daily life require presenting some personal information, such as credit card details or an ID number. This personal information can be abused by bad actors, as well as stolen by malware. With risks such as identity theft and human-seeming AI that can impersonate a person's voice and writing patterns, zero-knowledge proofs are becoming a more important part of modern verification systems.

While the idea of a ZKP has been a known concept in cryptography since the 1980s, it has more recently come into the spotlight due to its role in the cryptocurrency world. Namely, in an increasingly connected crypto and fintech ecosystem, how do we maintain the commitment to user privacy and anonymity that was a cornerstone of crypto ideology? Ambitious crypto projects such as Worldcoin, which hopes to build a worldwide digital ID system for users, leverage zero-knowledge proofs to protect privacy while at the same time verifying users, claims and transactions.

What is a zero-knowledge proof?

In order to fulfil the role of an effective verification process that also protects the data, a zero-knowledge proof must be:

  1. Complete: The verifier will accept the proof so long as the claim is true and the protocol is followed by both parties.
  2. Sound: If the claim is false, it should be near-impossible to convince the verifier that it is true.
  3. Zero-knowledge: No information except the truth of the claim should be known or discoverable by the verifier.

How do zero-knowledge proofs work?

A ZKP allows the prover to convince a verifier of a statement's truth without disclosing what the statement actually is. In its most basic form, this involves multiple rounds of interaction between the prover and verifier, in which the latter interrogates the former, asking questions about information related to but not revealing the secret data until they are satisfied. But there are different types of ZKPs that can work in other ways.

Types of zero-knowledge proofs

There are several kinds of ZKPs that use different ways of protecting and verifying claims.

  • An interactive zero-knowledge proof requires the prover and verifier to actively communicate to complete the process, typically in a commitment-challenge-response format known as a sigma protocol.
  • A non-interactive zero-knowledge proof provides a way for the verifier to complete the proof in a single step.
  • A statistical zero-knowledge proof statistical zero-knowledge proofs offer computational soundness with a small probability of error. 
  • A proof-of-knowledge (PoK) zero-knowledge proof requires the prover to demonstrate that they possess specific knowledge about the claim.
  • A bulletproof zero-knowledge proof is a fast, advanced protocol for large value sets.
  • A ZK-SNARK (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) uses a shared key and a 'trusted setup' (participants contribute random values).
  • A ZK-STARK (Zero-Knowledge Scalable Transparent Argument of Knowledge) is a trustless and more scalable version of the above, although with higher energy overheads.

Why do we need zero-knowledge proofs?

ZKPs are valuable as a way to conduct verifications while preserving privacy and security issues. Credit card transactions, for example, are subject to surveillance by financial institutions and governments. While this is done to combat crime, it also leaves ordinary citizens at risk of losing their data or being spied on.

Cryptocurrencies offer the promise of a more private, decentralised peer-to-peer financial system, and ZKPs play a crucial role in this by allowing transactions to remain anonymous and private while still being verified. Privacy-focused cryptocurrencies such as Zcash (ZEC) have been using ZKPs for years, and newer entries to the market, like Worldcoin (WLD), also use ZKPs for authentication.

Apart from crypto, ZKPs are also used in:

  • Authentication systems: either online or for enterprise networks to provide a higher level of security.
  • Electronic voting systems: enabling voters to cast their votes without revealing who/what they voted for.
  • Data transfer: sensitive data (e.g., health information, company or government secrets) can be verified and authenticated safely using ZKPs.
  • CBDCs: to securely audit financial transactions while preserving user privacy.

Zero-knowledge proofs in blockchain

ZKPs are a popular element in blockchain platforms, although different projects prefer different types of ZKPs, balancing security, scalability, and compatibility. Ethereum (ETH), for example, uses ZKPs in its rollups to boost scalability and cross-chain compatibility.

Worldcoin, which raised both hype and some sceptical eyebrows from the crypto community with its concept of a digital ID for international transactions, correctly identified ZKPs as the only way to protect user privacy, data security and secure auditing in such a scenario.

Basically, any blockchain project that is serious about privacy, confidentiality and security will use some kind of ZKP.

What are the disadvantages of zero-knowledge proofs?

Like other operations on the blockchain, ZKPs can use up significant computing resources, especially in the case of complex proofs. This computational effort can slow down processes on the blockchain or increase energy consumption, compounding the classic scalability issue that plagues cryptocurrencies. They also require specialised training in the appropriate computing and cryptographic knowledge to apply, so many companies may simply not have access to the experts they need to implement ZKPs.

Other critics of ZKPs have pointed out that a high level of privacy can also make it easier for criminals to hide themselves from authorities. For blockchain projects seeking to cooperate with governments and financial institutions, this can be a significant roadblock.

Ultimately, whether to use ZKPs and which ones to use depends on a blockchain's commitment to privacy over other concerns. If you use blockchain for transactions and value anonymity, ZKPs are a good thing to look out for when choosing your preferred cryptocurrency.

Gain secure and easy access to the exciting world of cryptocurrency with StormGain!

Whether you are a newcomer to the world of blockchain or a seasoned crypto trader, StormGain is the best all-in-one platform for buying, trading and investing in crypto. Available as an easy-to-use smartphone app or on the web, StormGain offers 24/7 access to the crypto market, including over 55 top cryptocurrencies, tokenised stocks and crypto indices, all at low commission rates. Convenient features such as live trading signals, secure digital wallets, interest in crypto holdings, and even an integrated Bitcoin cloud miner help StormGain traders play the market intelligently and keep more of their profits.

Not a StormGain user yet? Register now in just a few seconds and try a demo account to see what the cryptocurrency market can do for you!

Exchange BTC

Mining icon
Want Bitcoin for free?

Try our Bitcoin Cloud Miner and get additional crypto rewards based on your trading volume. It's immediately available upon registration.

Start mining

Mining icon
Want Bitcoin for free?

Try our Bitcoin Cloud Miner and get additional crypto rewards based on your trading volume. It's immediately available upon registration.

Start mining

Join StormGain

the most comprehensive platform for investing in crypto. Buy, store, trade, exchange, earn and learn about crypto in a single tap.

Register Now

Сайт та всі послуги StormGain доступні також українською мовою.

Перейти